图解Nosql(hbase)与传统数据库的区别
图解Nosql(hbase)与传统数据库的区别
http://www.aboutyun.com/thread-7804-1-1.html
(出处: about云开发)
问题导读:
1.nosql数据库能否删除列
2.nosql数据库如何删除一条记录
3.nosql数据库列族和lieder区别是什么?
4.nosql操作与传统数据库的操作区别在什么地方?
对于大多数做技术的人员,都知道我们传统数据库是什么样子的,那么如下图所示,我们操作的对象是行。
也就是增删改查,都是以为对象。
1.传统数据库增加删除介绍
图1
下面我们以mysql为例:
插入数据
mysql>INSERT INTO blog_user (`user_Name`,`user_Password`,`user_emial`)VALUES ('aboutyun','aboutyun', 'aboutyun@sina.com');
删除数据:
- mysql> delete from blog_user where user_name="aboutyun";
复制代码
2.Nosql数据库增加删除介绍
图2
以hbase为例:
创建表:
- create 'blog_user','userInfo'
复制代码
插入数据
这里是关键点,也是很多人不容易理解的地方
- hbase(main):012:0> put'blog_user','www.aboutyun.com','userInfo:user_Name','aboutyun'
- 0 row(s) in 1.7530 seconds
复制代码
上面我们看到了
所示是什么,我们在传统数据块里面根本没有,这是nosql所特有的,是一个所示是我们插入的列即'aboutyun'
我们插入了列,下面我们来查看一下效果:
下面来解释一下上面的含义:
我们会看到
为rowkey,插入数据’www.aboutyun.com‘,
为列族下面列的名字user_Name
我们并没有在设计的添加这个列族,所以这个是系统自带的,这个是记录的操作时间,以时间戳的形式放到hbase里面。
是我们插入的user_Name的值
下面我们在插入password:
- hbase(main):015:0> put'blog_user','www.aboutyun.com','userInfo:user_Password','aboutyun'
复制代码
再次查询结果:
- hbase(main):016:0> scan 'blog_user'
- ROW COLUMN+CELL
- www.aboutyun.com column=userInfo:user_Name, timestamp=1400663775901, value=aboutyun
- www.aboutyun.com column=userInfo:user_Password, timestamp=1400665203430, value=aboutyun
- 1 row(s) in 0.0390 seconds
复制代码
到这里,我们看到两行记录,传统数据块认为这是两行数据,对于nosql,这是一条记录。
删除列数据
删除数据分为删除列和删除记录
1.删除列
这里面的删除,没有删除
delete 'blog_user','www.aboutyun.com','userInfo:user_Password'
从上面我们看出列被删除了
2.删除记录:
- deleteall 'blog_user','www.aboutyun.com'
复制代码
这是删除之前显示结果,这里已经是
删除后结果
总结
对于传统数据库,增加列对于一个项目来讲,改变是非常大的。但是对于nosql,插入列和删除列,跟传统数据库里面的增加记录和删除记录类似
图解Nosql(hbase)与传统数据库的区别的更多相关文章
- Hbase与传统数据库的区别
在说HBase之前,我想再唠叨几句.做互联网应用的哥们儿应该都清楚,互联网应用这东西,你没办法预测你的系统什么时候会被多少人访问,你面临的用户到底有多少,说不定今天你的用户还少,明天系统用户就变多了, ...
- Hbase和传统数据库的区别
在说HBase之前,我想再唠叨几句.做互联网应用的哥们儿应该都清楚,互联网应用这东西,你没办法预测你的系统什么时候会被多少人访问,你面临的用户到底有多少,说不定今天你的用户还少,明天系统用户就变多了, ...
- Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型
Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...
- Hbase与传统关系型数据库对比
在说HBase之前,我想再唠叨几句.做互联网应用的哥们儿应该都清楚,互联网应用这东西,你没办法预测你的系统什么时候会被多少人访问,你面临的用户到底有多少,说不定今天你的用户还少,明天系统用户就变多了, ...
- Redis,传统数据库,HBase,Hive区别联系
首先介绍各个数据库: Redis: 传统数据库: HBase: Hive:
- nosql的介绍以及和关系型数据库的区别
一直对非关系型数据库和关系型数据库的了解感觉不太深入,在网上收集了一些关于sql和nosql的区别和优缺点分享给大家. Nosql介绍 Nosql的全称是Not Only Sql,这个概念早起就有人提 ...
- 非关系型数据库(NOSQL)和关系型数据库(SQL)区别详解
前言: 在我们的日常开发中,关系型数据库和非关系型数据库的使用已经是一个成熟的软件产品开发过程中必不可却的存储数据的工具了.那么用了这么久的关系数据库和非关系型数据库你们都知道他们之间的区别了吗?下面 ...
- NoSQL 35 个非主流数据库
几乎每个Web开发人员都有自己喜欢的数据库,或自己最熟悉的数据库,但最常见的无外乎以下几种: MySQL PostgreSQL MSSQL SQLite MS Access 或是更简单的XML,文本文 ...
- 传统数据库没落,OLTP新型数据库发展火热
參考资料: (1) <OLTP Through the Looking Glass, and What We Found There> (2) <The End of an Arch ...
随机推荐
- task-clph
@UI方面 1 UILabel如果没有text内容,那么无论你怎么设置背景色都没用 UIButton就都可以用 2使用了新控件:UIStackView 使用步骤: //1创建 _horizontalS ...
- AsyncTask实现异步线程通信
AsyncTask是Android1.5开始提供的一个封装了Thread与Handler可以实现异步线程的简单方式,不需要再自己实现子线程,然后在主线程处接受数据. 因为AsyncTask是用线程池, ...
- mysql: 两个字段合并,字符时间转时间戳,别名字段作为where条件查询
有字段,a,b: a存的是:2016-10-10 b存的是:10:15:30 mysql将字段合并: concat(a, ' - ', b) 或者 concat(a, ' ', b) 字符时间转时间 ...
- Machine Learning - 第4周(Neural Networks: Representation)
Neural networks is a model inspired by how the brain works. It is widely used today in many applicat ...
- selenium+python笔记11
#!/usr/bin/env python # -*- coding: utf-8 -*- """ @desc: search in mail box "&qu ...
- UNIX高级环境编程学习
1-5实例 控制字符:ctrl + 另一个键.control + D或者^D是默认的文件结束符(EOF字符).
- ThinkPHP框架如何修改X-Powered-By
以前用ThinkPHP框架开发了一个小网站,前几天查询页面HTTP状态发现,里面有一项: X-Powered-By: ThinkPHP 2.0 这样虽然没什么,但感觉如果别有用心的人查询会知道你是用这 ...
- 无法启动T-SQL 调试
问题详情 解决办法 1.要在服务器本机,不要远程 2.用实例名,不要用.或者local 3.以Windows身份验证的administrator或者sqlserver身份验证的sa登录
- 数据库索引<二> 如何创建索引
前面一篇说法了索引结构,和几种索引在数据表上的结构,了解了索引可以为查询服务,这篇说一说如何创建索引. >平时可能的创建方式 这个系统中要用到A字段,B字段,C字段做为查询的条件,联接的条件较多 ...
- Check the difficulty of problems(POJ 2151)
Check the difficulty of problems Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 5457 ...