• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > NOSQL(三)分布式数据模型,nosql模型

NOSQL(三)分布式数据模型,nosql模型

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含nosql数据模型,nosql数据,nosql java插入数据,大数据 nosql,nosql数据库有哪些等服务器相关知识,网友希望可以进行参考

NOSQL(三)分布式数据模型,nosql模型


《NoSQL精粹》读书笔记,转载请注明出处《jiq?钦's technical Blog》

 

催生NoSQL的主要原因是:需要一种能够运行在大集群上的数据库

面向聚合的数据库非常适合于横向拓展的集群架构,聚合自然成为了数据分布单元,而数据分布主要有两条路:“复制(replication)”和“分片(sharding)”,复制是将同一份数据拷贝至多个节点,分片是将数据分散存放到不同节点上。

        

1 单一服务器

若使用NoSQL数据库的目的基本上是为了处理聚合,那么就可以考虑在单一的服务器上部署NoSQL数据库。换句话说在不需要分布数据就能应对的场景下,优先选择“单一服务器”的方案。

 

2 分片

如果数据库的繁忙体现在:不同用户需要访问数据集中的不同部分。那么优先选择分片,将数据的各个部分存放于不同的服务器中,以此实现横向拓展。

思路:为了将不同用户的请求均衡地分布到不同的服务器上,采取怎样的策略存放数据是关键。之所以设计“聚合”,就是为了把经常要同时访问的数据放在一起,因此聚合可以作为数据分布式的单元。如何把聚合数据均匀地分布在不同的机器上,有时可能需要采取“领域特定的规则”,很多NoSQL数据库已经提供了“自动分片(auto-sharding)”的功能,由数据库负责将数据分布到各分片,并将数据访问请求引导至适合的分片上。

优点:分片对于提升性能尤其有用,因为可以同时提升读取和写入效率,复制技术,尤其是带缓存的复制技术,可以极大提升读取性能,但是对于需要频繁执行写入操作的场景却作用不大,而分片提供了可以横向拓展写入能力的方式。

缺点:分片对于提升数据库“故障恢复能力”帮助不大,跟“单一服务器”一样,甚至可能还会降低数据库的错误恢复能力。

 

3 复制

3.1 主从复制

思路:主从结构中有一个主节点和多个从节点,从节点复制主节点的数据,保证所有从节点数据与主节点同步。读取时,可以从主节点或者任意从节点读取数据,即使主节点出错了,从节点依然可以处理数据读取请求,而且还能重新指派一个从节点作为新的主节点,通过新增从节点可以很容易进行水平拓展。这样不仅能够“大幅提升数据读取性能”,还能够“保证读取操作的故障恢复能力”。写入时就比较惨了,需要请求主节点进行更新操作,然后由主节点将数据更新请求发布到从节点,一方面性能不高,不适合频繁写入的场景,另一方面,若主节点出错,在恢复之前都无法处理数据更新请求。

优点:处理写入请求性能高、具备故障恢复能力。即使不需要横向拓展,采用主从复制也有其用处,再主节点处理所有读写操作同时,从节点可以充当“即时备份”。

缺点:一方面因为主节点是系统的瓶颈和弱点,导致写入操作性能和故障恢复能力都不尽如人意。另一方面有一个很大的缺陷,即数据的不一致性,因为如果主节点处理的更新操作还没有完全通知到所有从节点时,不同的客户端从不同的从节点就可能读出各异的值。

 

3.2 对等复制

思路:为了解决主从复制中主节点成为系统瓶颈和弱点这一问题,抛弃主节点概念,所有节点都可以接受写入请求。

优点:解决了主从复制结构中,主节点作为写入操作时的瓶颈和弱点这一问题。

缺点:仍然是一致性,由于两个不同节点可以同时处理写入请求,当同一时间试图更新同一份数据时,就会出现“写入冲突”,同时读取一致性问题也会存在。两种极端解决一致性:一种是在真正写入前各个副本之间先协调好,确保不会发生冲突;另一种是把相互冲突的写入操作合并起来,这样任意副本都可以进行数据写入。

 

4 分片和复制相结合

思路:首先对数据进行分片,然后对于每一份数据都采用“主从复制”进行维护,这就意味着系统中存在多个主节点,对于每项数据来说,负责它的主节点只有一个。“列族数据库”就是这样一个例子。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • NOSQL(六)集群并发计算模型Map-Reduce,nosqlmap-reduce
  • NOSQL(三)分布式数据模型,nosql模型
  • NOSQL(二)聚合数据模型,nosql聚合数据模型

相关文章

  • Greenplum数据库扩容实务(上)-准备工作,greenplum实务
  • Maven构建Hadoop Web项目,maven构建hadoopweb
  • SSH无密码登陆配置,ssh无密码登陆
  • Hadoop新版和旧版中InputSplit大小的区别,hadoopinputsplit
  • CDH安装官方教程,cdh官方教程
  • **FASPOT 功能简介**,faspot功能简介
  • spark一些入门资料,spark入门资料
  • hadoop 运行jar文件,
  • 独家教程利用VPS服务器搭建独享VPN(基于Centos6.4 Openvpn),vpsopenvpn
  • 使用export/import导出和导入docker容器,exportdocker

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • hadoop1 & hadoop2 fair-schduler 配置和使用,hadoop
    • Apache Pig的前世今生,apachepig前世今生
    • Hbase集群扩展,hbase集群
    • hadoop2企业级集群部署(DNS域名解析+NFS密钥共享+AWK批量复制),hadoop2awk
    • 如何创造自己的数据字典(词库转换工具的使用),创造自己工具的使用
    • RPC原理,rpc
    • Hadoop之——Partitioner编程,hadooppartitioner
    • Nova client源码分析---nova list命令,nova---nova
    • hive 报错/tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x,hdfswritable
    • 【解决】hive动态增加partitions不能超过100的问题,hivepartitions

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有