社区
Power Linux
帖子详情
NoSQL一般采用key,value的形式存储数据,请问他是如何存储一个对象的呢?
小尾巴鱼
2016-05-06 10:22:47
有一个问题想问一下大家,NoSQL一般采用key,value的形式存储数据,请问他是如何存储一个对象的呢?把对象序列化之后放在value里面吗?
...全文
590
1
打赏
收藏
NoSQL一般采用key,value的形式存储数据,请问他是如何存储一个对象的呢?
有一个问题想问一下大家,NoSQL一般采用key,value的形式存储数据,请问他是如何存储一个对象的呢?把对象序列化之后放在value里面吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
icesnow330
2016-05-11
打赏
举报
回复
NoSQL里面分很多种,有Key Value的比如Redis,也有文档库的比如MongoDB。对于文档类的数据库,他的存储底层本身就是使用对象存储,所以不存在序列化的问题。对于Key Value的也要看你要存什么对象,在Redis中有丰富的数据类型,你的Value值可以是Hash,链表等。如果你是存储Redis支持的对象类型那么底层的存储序列化由Redis负责你不用考虑,如果你要存储的不是Redis默认支持的对象类型。那么你需要自己考虑对象构建或序列化的问题。
SSDB.zip_SSDB_
nosql
_
数据
库
KEY
value
SSDB 是⼀
一个
C++ 语⾔ 言开发的⾼ 高性能开源
NoSQL
数据
库服务器, ⽀ 支持
Key
-
value
,
Key
- hashmap,
Key
-zset(sorted set) 等
数据
结构, ⼗ 十分适合
存储
数亿条级别的列表, 排序表等集合
数据
, 是 Redis 的替代和增强⽅ 方案.
什么是
NoSQL
数据
库?
关系型
数据
库和
NoSQL
数据
库 什么是
NoSQL
大家有没有听说过“
NoSQL
”呢?近年,这个词极受关注。看到“
NoSQL
”这个词,大家可能会误以为是“No!SQL”的缩写,并深感愤怒:“SQL怎么会没有必要了呢?”但实际上,它是“Not Only SQL”的缩写。它的意义是:适用关系型
数据
库的时候就使用关系型
数据
库,不适用的时候也没有必要非使用关系型
数据
库不可,可以考虑使用更加合适的
数据
存储
。 为弥补关系型
数据
库的不足,各种各样的
NoSQL
数据
库应运而生。 为了更好地了解本书所介绍的
NoSQL
数据
库,对关系型
数据
库的理解是必不可少的。那么,就让我们先来看一看关系型
数据
库的历史、分类和特征吧。 关系型
数据
库简史 1969年,埃德加•弗兰克•科德(Edgar Frank Codd)发表了划时代的论文,首次提出了关系
数据
模型的概念。但可惜的是,刊登论文的《IBM Research Report》只是IBM公司的内部刊物,因此论文反响平平。1970年,他再次在刊物《Communication of the ACM》上发表了题为“A Relational Model of Data for Large Shared Data banks”(大型共享
数据
库的关系模型)的论文,终于引起了大家的关注。 科德所提出的关系
数据
模型的概念成为了现今关系型
数据
库的基础。当时的关系型
数据
库由于硬件性能低劣、处理速度过慢而迟迟没有得到实际应用。但之后随着硬件性能的提升,加之使用简单、性能优越等优点,关系型
数据
库得到了广泛的应用。 通用性及高性能 虽然本书是讲解
NoSQL
数据
库的,但有
一个
重要的大前提,请大家一定不要误解。这个大前提就是“关系型
数据
库的性能绝对不低,它具有非常好的通用性和非常高的性能”。毫无疑问,对于绝大多数的应用来说它都是最有效的解决方案。 突出的优势 关系型
数据
库作为应用广泛的通用型
数据
库,它的突出优势主要有以下几点: 保持
数据
的一致性(事务处理) 由于以标准化为前提,
数据
更新的开销很小(相同的字段基本上都只有一处) 可以进行JOIN等复杂查询 存在很多实际成果和专业技术信息(成熟的技术) 这其中,能够保持
数据
的一致性是关系型
数据
库的最大优势。在需要严格保证
数据
一致性和处理完整性的情况下,用关系型
数据
库是肯定没有错的。但是有些情况不需要JOIN,对上述关系型
数据
库的优点也没有什么特别需要,这时似乎也就没有必要拘泥于关系型
数据
库了。 关系型
数据
库的不足 不擅长的处理 就像之前提到的那样,关系型
数据
库的性能非常高。但是它毕竟是
一个
通用型的
数据
库,并不能完全适应所有的用途。具体来说它并不擅长以下处理: 大量
数据
的写入处理 为有
数据
更新的表做索引或表结构(schema)变更 字段不固定时应用 对简单查询需要快速返回结果的处理 。。。。。。
NoSQL
数据
库 为了弥补关系型
数据
库的不足(特别是最近几年),
NoSQL
数据
库出现了。关系型
数据
库应用广泛,能进行事务处理和JOIN等复杂处理。相对地,
NoSQL
数据
库只应用在特定领域,基本上不进行复杂的处理,但它恰恰弥补了之前所列举的关系型
数据
库的不足之处。 易于
数据
的分散 如前所述,关系型
数据
库并不擅长大量
数据
的写入处理。原本关系型
数据
库就是以JOIN为前提的,就是说,各个
数据
之间存在关联是关系型
数据
库得名的主要原因。为了进行JOIN处理,关系型
数据
库不得不把
数据
存储
在同
一个
服务器内,这不利于
数据
的分散。相反,
NoSQL
数据
库原本就不支持JOIN处理,各个
数据
都是独立设计的,很容易把
数据
分散到多个服务器上。由于
数据
被分散到了多个服务器上,减少了每个服务器上的
数据
量,即使要进行大量
数据
的写入操作,处理起来也更加容易。同理,
数据
的读入操作当然也同样容易。 提升性能和增大规模 下面说一点题外话,如果想要使服务器能够轻松地处理更大量的
数据
,那么只有两个选择:一是提升性能,二是增大规模。下面我们来整理一下这两者的不同。 首先,提升性能指的就是通过提升现行服务器自身的性能来提高处理能力。这是非常简单的方法,程序方面也不需要进行变更,但需要一些费用。若要购买性能翻倍的服务器,需要花费的资金往往不只是原来的2倍,可能需要多达5到10倍。这种方法虽然简单,但是成本较高。 另一方面,增大规模指的是使用多台廉价的服务器来提高处理能力。它需要对程序进行变更,但由于使用廉价的服务器,可以控制成本。另外,以后只要依葫芦画瓢增加廉价服务器的数量就可以了。 不对大量
数据
进行处理的话就没有使用的必要吗?
NoSQL
数据
库基本上来说为了“使大量
数据
的写入处理更加容易(让增加服务器数量更容易)”而设计的。但如果不是对大量
数据
进行操作的话,NoSQ
NOSQL
数据
库入门与提高
NoSQL
最常见的解释是“non-relational”, “Not Only SQL”也被很多人接受。
NoSQL
仅仅是
一个
概念,泛指非关系型的
数据
库,区别于关系
数据
库,它们不保证关系
数据
的ACID特性。
NoSQL
是一项全新的
数据
库革命性运动,其拥护者们提倡运用非关系型的
数据
存储
,相对于铺天盖地的关系型
数据
库运用,这一概念无疑是一种全新的思维的注入。
NoSQL
有如下优点:易扩展,
NoSQL
数据
库种类繁多,但是
一个
共同的特点都是去掉关系
数据
库的关系型特性。
数据
之间无关系,这样就非常容易扩展。无形之间也在架构的层面上带来了可扩展的能力。大
数据
量,高性能,
NoSQL
数据
库都具有非常高的读写性能,尤其在大
数据
量下,同样表现优秀。这得益于它的无关系性,
数据
库的结构简单。 本门课程首先介绍了一下当今大
数据
时代遇到的
数据
瓶颈,之后介绍了什么是
NOSQL
,
NOSQL
的相关理论,最后演示了常见四种
NOSQL
产品的部署及基本操作。 本课程会让你对
NOSQL
产品有一定的加深和理解,帮助你迅速通过求职面试!
Key
Value
Store-
NoSQL
:使用 PHP 和 MySQL 的
Key
Value
Store
NoSQL
数据
库
键/值
存储
-
NoSQL
这是
一个
键/值
存储
,也称为
NoSQL
数据
库。 它使用 PHP 编写并托管在 MySQL
数据
库上。 这个想法很简单。 您可以通过给它
一个
键来
存储
一个
值,并通过提供它的键在
存储
中获取
一个
值。 我主要需要不时使用
一个
小而简单的
数据
库来用于不同的项目。 这是
一个
方便的解决方案,可以访问和更新少量持久
数据
。 JSON
对象
被发布到 api,并在响应中返回
一个
JSON
对象
。 提供了 Javascript 和 HTML 页面来演示如何与
数据
库交互。 设置值
数据
发布到 set.php { "
key
" : "first name" , "
value
" : "Lewie" } 响应: { "success" : true , "
key
" : "first name" , "
value
" : "Lewie" } 获取价值
数据
发布到
NoSQL
数据
库Ardb.zip
Ardb是
一个
新的构建在持久化
Key
/
Value
存储
实现上的
NoSQL
DB服务实现,支持list/set/sorted set/bitset/hash/table等复杂的
数据
结构,以Redis协议对外提供访问接口。 Ardb的基本特性如下: 完全兼容Redis协议,支持绝大部分Redis命令的高性能持久化
NoSQL
DB; 支持多种持久化
Key
/
Value
存储
引擎(LevelDB/KyotoCabinet/LMDB) 支持主从复制/主主复制,在线备份 除set/zset/list/hash外, 支持简单的Table
数据
结构以及类似SQL的查询 优化的bitset实现 性能测试
数据
参考项目首页 标签:Ardb
NoSQL
数据
库
Power Linux
742
社区成员
901
社区内容
发帖
与我相关
我的任务
Power Linux
该论坛主要探讨Linux系统在IBM Power平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
复制链接
扫一扫
分享
社区描述
该论坛主要探讨Linux系统在IBM Power平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章