《七周七数据库》一一2.5 总结

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介:

本节书摘来自异步社区出版社《七周七数据库》一书中的第2章,第2.节,作者: 【美】Eric Redmond,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 总结

七周七数据库
如果你没有接触过太多关系数据库的话,在决定放弃它而采用新类型的数据库之前,我们强烈建议更深入地学习PostgreSQL,或其他关系数据库。在过去的40多年里,关系数据库是大量学术研究和业界改进的重点,PostgreSQL是受益于这些进步的顶级开源关系数据库之一。

2.5.1 PostgreSQL的优点
和所有关系模型一样,PostgreSQL的优势很多:多年的研究,几乎每个计算领域的实践使用,灵活的查询能力,非常一致和持久的数据。在大多数编程语言中,都有经过实战考验的Postgres驱动程序。许多编程模型,如对象关系映射(Object-Relational Mapping,ORM),假定依赖关系数据库存储。问题的关键是联接带来的灵活性。你不必知道如何针对模型进行查询,因为你总是可以执行一些联接、过滤、视图和索引,很可能总有办法提取想要的数据。

PostgreSQL很适用于“Stepford数据”(命名来自《贤妻》(The Stepford Wives),一个关于邻里的故事,在那里几乎每个人都保持风格和内容的一致),即数据同质,且数据很好遵从于结构化的数据定义。

此外,PostgreSQL还提供一般的开源RDBMS产品没有的功能,例如,提供强大的约束机制。你可以写自己的语言扩展,自定义索引,创建自定义的数据类型,甚至重写对传入查询的解析。另外,其他的开源数据库可能有复杂的许可协议,但PostgreSQL采用的是最纯粹的开源方式。没有任何人拥有代码,任何人都可以对该项目做他们希望的任何事情(追究作者的责任除外)。开发和发布完全是社区支持的,如果你是一个自由软件的忠实支持者,或者有很长的浓密的胡子,你应该尊重他们,他们拒绝通过一个了不起的产品赚钱。

image

2.5.2 PostgreSQL的缺点

关系数据库是多年来最成功的数据库类型,尽管这一点无可否认,但在某些情况下,它可能不是非常适合。

对于PostgreSQL这样的关系数据库来说,分区不是强项。如果需要水平扩展而不是垂直扩展(多个并行的数据库而不是单个强大的机器或集群),可能最好寻找别的解决方案。如果数据要求过于灵活,不是很容易融入关系数据库严格的数据模式要求,或者不需要一个完整的数据库功能带来的开销,需要进行非常大量的键值对读写操作,或只需要存储二进制大对象数据,那么其他的数据存储技术可能更好。

2.5.3 结束语

关系数据库对于灵活查询是一个很好的选择。虽然PostgreSQL需要提前设计数据,但它不假设如何使用这些数据。只要数据模式设计相当规范,没有数据重复并且不存储可被计算出来的值,基本上就准备可以应付所有可能需要的查询。如果使用了合适的模块,调优好,建好索引,它只需消耗很少的资源就能惊人地处理几个TB的数据。最后,对于极度重视数据安全的人来说,PostgreSQL的事务符合ACID,确保你的提交是完全原子的、一致的、隔离的和持久的。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
NoSQL 大数据 数据库
|
关系型数据库 程序员 数据库
|
7天前
|
关系型数据库 MySQL 分布式数据库
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
37 2
|
23天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
105 0

热门文章

最新文章