大数据存储和管理数据库系统

来源:互联网 发布:pyqt5 eric ubuntu 编辑:程序博客网 时间:2024/05/01 04:53
关系型数据库处理事务时对性能影响较大、需要优化的因素。
通信:应用程序通过ODBC或者JDBC与DBMS进行通信是OLTP事务中的主要开销。
日志:需要不断写硬盘来保证持久性,代价昂贵。
锁:修改操作需要加锁,需要在锁表中进行写操作,造成了一定得开销。
闩:B树、锁表、资源表等数据结构常常被多线程读取,需要短期锁即闩。
缓冲区管理:页的缓冲管理等。

驱动传统关系型数据库发展的6个关键因素可以概括为“SPRAIN”。
可扩展性(Scalability)——硬件价格
高性能(Performance)——MySQL的性能瓶颈
弱一致性(Relaxed consistency)——CAP理论
敏捷性(Agility)——持久多样性
复杂性(Intricacy)——海量数据
必然性(Necessity)——开源 



并行数据库:在无共享的体系结构中进行数据操作的数据库系统。

关键技术:关系表的水平划分和SQL查询的分区执行。
优势:高性能和高可用性。
缺点:没有较好的弹性,数据转移代价昂贵;系统的容错性较差。
总结:并行数据库只适用于资源需求相对固定的应用程序。

NoSQL数据管理系统:没有固定数据模式并且可以水平扩展的系统(Not Only SQL)。 
关键技术
简单数据模型:每个记录有唯一的键,系统只需支持单记录级别的原子性;
元数据和应用数据的分离:系统之所以将这两类数据分开是因为它们有着不同的一致性要求。
弱一致性:NoSQL系统通过复制应用数据来维护一致性,为了减小副本同步的开销 ,采用最终一致性和时间轴一致性等弱一致性模型。
主要优势 
避免不必要的复杂性:提供较少的功能来提高性能。
高吞吐量。
高水平扩展能力和低端硬件集群。
避免了昂贵的对象-关系映射。
主要缺陷
数据模型和查询语言没有经过数学验证。
不支持ACID特性:既是优点也是缺点。
功能简单,增加了应用层的负担。
没有统一的查询模型,增加了开发者的负担。 

NewSQL数据管理系统:可扩展、高性能的SQL数据库。
主要包括两类系统:拥有关系型数据库产品和服务,并将关系模型的好处带到分布式架构上;或者提高关系数据库的性能,使之达到不用考虑水平扩展问题的程度。

云数据管理:数据库即服务。

主要优势
透明性
可伸缩性
高性价比
主要缺陷
用户隐私和数据安全问题
服务可靠性问题
服务质量保证问题
0 0
原创粉丝点击