数据库存储模型简述

数据库现在应该是无人不知,无人不晓,讲到数据库必然要提到两个人:

1、一个是E.F. Codd,这个是理论的开创者,来瞻仰下:

埃德加·弗兰克·科德(Edgar Frank Codd,1923-2003)是密执安大学哲学博士,IBM公司研究员,被誉为“关系数据库之父”,并因为在数据库管理系统的理论和实践方面的杰出贡献于1981年获图灵奖。1970年,科德发表题为“大型共享数据库的关系模型”的论文,文中首次提出了数据库的关系模型。由于关系模型简单明了、具有坚实的数学理论基础,所以一经推出就受到了学术界和产业界的高度重视和广泛响应,并很快成为数据库市场的主流。

2、另外一个是Michael Stonebrake,获得2015年图领奖。这位大师就是实践的代表,没发表了几篇论文,但是确实数据库行业的开创者。

在1970年代前期,Michael Stonebraker就在Edgar Codd的关系数据库论文启发下,组织伯克利的师生,开始开发最早的两个关系数据库之一Ingres(另一个是IBM System R),Ingres的基础上后来发展出Sybase和SQL Server两大主流数据库。Ingres在关系数据库的查询语言设计、查询处理、存取方法、并发控制和查询重写等技术上都有重大贡献。

1980年代他又开发了POSTGRES项目,目的是在关系数据库之上增加对更复杂的数据类型的支持,包括对象、地理数据、时间序列数据等。后来这个系统演变为开源的PostgreSQL,Greenplum、Aster Data、Netezza和Stonebraker自己创办的Ilustra(后被Informix收购)等多个商业公司和开源的产品都是基于PostgreSQL开发的。

1990年代,他启动了联邦数据库Mariposa,基于此创办了Cohera公司,后被PeopleSoft收购。Mariposa和稍早的XPRS(与Randy Katz、David Patterson和John Ousterhout诸位大牛合作)和Distributed Ingres两个项目开了一代分布式数据库风起之先。Shared Nothing架构这一重要概念也是那个时期提出来的,这已经成为如今大数据系统的基石之一。

3、数据库存储模型分类和适合场景

按关系模型来组织和管理,存储数据,流行了30多年,最近这十年才因为数据量爆炸,为了保证性能,工业界在关系模型上做了一定的妥协,针对不同的场景,采用不同的存储方式,没有完全遵守数据库模型。类似redis这种的又是非关系型数据库,这类技术被称之为NoSQL,还有新出现的一类数据库,NewSQL,NewSQL是不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库对ACID和SQL特性的支持。

NoSQL相对传统数据库是实践的妥协,为了实现高吞吐量,不支持ACID数据库的设计范式。NoSQL没有统一的查询语言。

按照存储模型来说分为以下4类。

 列式存储模型

 文档数据模型

 键值数据模型

 图式数据模型

  • 列式存储模型

应用场景:分布式数据存储,在分布式文件系统上支持随机读写的分布式数据存储。

典型的产品:Hadoop/Hbase,Hypertable

数据模型:以“列”为中心进行存储,将同一列数据存储在一起。

优点:快速查询,高可扩展性,易于实现分布式扩展。

  • 文档数据模型

应用场景:非强事务需求的web应用。

典型的产品:MongoDB,Elasticsearch

数据模型:键值模型,存储为文档模型

优点:数据模型无须事先定义,存储很随意。

  • 键值数据模型

应用场景:内容缓存,用于大量的并行数据访问的高负载场景。

典型的产品:Redis,DynamoDB,LevelDB

数据模型:基于哈希表实现的key-value

有点:查询迅速,写入迅速

缺点:数据没有什么结构

  • 图式数据模型

应用场景:社交网络、推荐系统,关系图谱(如陌陌的附近的人这样的功能)

典型的产品:Neo4J

数据模型:图式结构

优点:适用于图式计算场景

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2017-08-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ImportSource

NoSQL-Relaxing Consistency-放宽一致性

作者简介: ? 一致性这事也许不是天经地义的。你同意嘛? 5.3. Relaxing Consistency 放宽一致性 一致了自然是好事。但,不幸的是,有时候...

3866
来自专栏后台系统海量服务

自适应柔性模型

“弃车保帅”, 是对柔性的一个最形象的描述。但是传统的柔性,一般存在各种缺陷。

1315
来自专栏斑斓

设计匠艺 | 小即是美之二

小的益处还有一点,它可以使得我们在架构决策或技术选型时,可以变得更加从容。 譬如说,因为某些原因我们需要将整个企业系统从WebLogic上迁移到JBoss上,无...

3035
来自专栏CSDN技术头条

Cloud Dataproc已完成测试,谷歌云平台生态更加完善

去年9月份,谷歌为Hadoop和Spark推出了Cloud Dataproc服务的beta版本,如今半年过去了,Cloud Dataproc服务已完成测试,现在...

1865
来自专栏前沿技墅

智能监控利器:时序数据库

微博广告基础架构团队负责人、技术专家,商业大数据平台及智能监控平台发起人,目前负责广告核心引擎基础架构、Hubble智能监控系统、商业基础数据平台(D+)等基础...

904
来自专栏Java架构

阿里P7架构师总结分布式系统的经典基础理论

1775
来自专栏大数据技术学习

大数据学习过程中需要看些什么书?学习路线

很多朋友对大数据行业心向往之,却苦于不知道该如何下手。作为一个零基础大数据入门学习者该看哪些书?今天给大家推荐一位知乎网友挖矿老司机的指导贴,作为参考。

1393
来自专栏PPV课数据科学社区

【解读】2015之大数据篇:大数据的黄金时代

2015年,整个IT技术领域发生了许多深刻而又复杂的变化,InfoQ策划了“解读2015”年终技术盘点系列文章,希望能够给读者清晰地梳理出技术领域在这一年的发展...

34010
来自专栏数据派THU

【数据蒋堂】功夫都在报表外--漫谈报表性能优化

来源:润乾软件 作者:蒋步星 编辑:刘晴敏 本文字数为2219字,建议阅读6分钟 本文由蒋步星讲述了报表性能优化的问题。 应用系统中的报表,作为面向业务用户的窗...

2449
来自专栏Java架构

阿里P7架构师总结分布式系统的经典基础理论

首先,分布式系统的首要目标是提升系统的整体性能和吞吐量。如果最终设计出来的分布式系统占用了10台机器才勉强达到单机系统的两倍性能,那么这个分布式系统还有存在的价...

3078

扫描关注云+社区