大数据分布式数据库系统介绍

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/duozhishidai/article/details/89374944

传统的关系模型分布式数据库难以适应大数据时代的要求,主要的原因有以下几点:
  (1)规模效应带来的压力。大数据时代的数据远远超出单机处理能力,分布式技术是必然的选择。传统的数据库倾向于采用纵向扩展的方式,这种方式下性能的增加远低于数据的增加速度。大数据采用数据库系统应该是横向发展的,这种方式具有更好的扩展性。
  (2)数据类型的多样性和低价值密度性。传统的数据库适合结构清晰,有明确应用目的的数据,数据的价值密度相对较高。在大数据时代数据的存在的形式是多样的,各种半结构化、非结构化的数据是大数据的重要组成部分。如何利用如此多样、海量的低价值密度的数据是大数据时代数据库面临的重要挑战之一。
  (3)设计理念的冲突。关系数据库追求的是“一种尺寸适用所有”,但在大数据时代不同的应用领域在数据理性、数据处理方式以及数据处理时间的要求上千差万别。实际处理中,不可能存在一种统一的数据存储方式适应所有场景。
  面对这些挑战,Google公司提出了Bigtable的解决方案。Bigtable的设计目的是可靠的处理拍字节级别的数据,并且能够部署到千台机器上。Bigtable已经实现了以下几个目标:适用性广泛、可扩展、高性能和高可靠性。Bigtable已经在超过60个Google的产品和项目上得到了应用。这些产品在性能要求和集群的配置上都提出了迥异的需求,Bigtable都能够很好地满足。Bigtable不支持完整的关系数据模型,为用户提供了简单的数据模型,利用这个模型,客户可以动态控制数据的分布和格式。用户也可以自己推测底层存储数据的位置相关性。数据的下标是行和列的名字,名字可以是任意的字符串。Bigtable将存储的数据都视字符串,但是Bigtable本身不去解释这些字符串,客户程序通常会把各种结构化或者半结构化的数据串行化到这些字符串。通过仔细选择数据的模式,客户可以控制数据的位置的相关性。最后,可以通过Bigtable的模式参数来控制数据是存放在内存中、还是硬盘上。Bigtable数据模型如图5所示,给出了Bigtable存储大量网页信息的实例。
  除了Google公司为人熟知的Bigtable,其他的大型Internet内容提供商也纷纷提出大数据系统。具有代表性的系统有Amazon的Dynamo[19]和Yahoo的PNUTS[20]。Dynamo综合使用了键/值存储、改进的分布式哈希表(DHT)、向量时钟等技术实现了一个完全的分布式、去中性化的高可用系统。PNUTS是一个分布式的数据库系统,在设计上使用弱一致性来达到高可用性的目标,主要的服务对象是相对较小的记录,比如在线的大量单个记录或者小范围记录集合的读和写访问,不适合存储大文件、流媒体。
  Bigtable、Dynamo、PNUTS等技术的成功促使研究人员开始对关系数据库进行反思,产生了一批为采用关系模型的数据库,这些方案通称为:NoSQL(not only SQL)。NoSQL数据库具有以下的特征:模式只有、支持简易备份、简单的应用程序接口、一致性、支持海量数据。

人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,多智时代专注于人工智能和大数据的入门和科谱,在此为你推荐几篇优质好文:
1.在学习大数据之前,需要具备什么基础
http://www.duozhishidai.com/article-12916-1.html
2.大数据工程师培训,需要学习的有哪些课程?
http://www.duozhishidai.com/article-15081-1.html
3.大数据的特点是什么,大数据与Hadoop有什么关系?
http://www.duozhishidai.com/article-13276-1.html


多智时代-人工智能大数据学习入门网站|人工智能、大数据、物联网云计算的学习交流网站

多智时代-人工智能大数据学习入门网站|人工智能、大数据、云计算、物联网的学习服务的好平台

猜你喜欢

转载自blog.csdn.net/duozhishidai/article/details/89374944