使用PostgreSQL而不是MySQL存储中型数据有什么好处?
我可以明确地回答.我们之所以选择Postgres,是因为它在操作上比MySQL更可靠,而当时公司的创始人相信SQL数据库的可移植性.
随着年份的发展,我们发现了这一点,我们发现基本上,Postgres是Rough中的这款钻石,它具有一系列功能和一个开发社区,这是我们见过的最不可思议的开源项目之一,并且一直在悄悄地建造出令人难以置信的令人敬畏的工具而没有大惊小怪.
同样,我们了解到SQL数据库不是便携式的,而不是真正的,并且试图围绕数据库可移植性构建是灾难的秘诀.我们从这些经验中学到了,决定我们将大力投资于服用Postgres,并通过将Heroku专注于用户体验来实现.很棒的是,Postgres项目不受一个巨大的邪恶大型公司的控制,但可能是独立和分散的社区使他们很难自我推广,面对有真正的市场份额的资金公司.很长一段时间以来,Postgres都没有人在那里 *出售 *数据库,这只是一个不断增长的快乐用户社区,诚然,他们对他们的数据库非常自鸣得意. (我应该注意,EnterpristedB现在已经将Postgres推广到企业社区了一段时间.)
现在,Postgres或多或少是具有经验经验的人的首选. .它比今天的任何其他开源数据存储层都更强大,更可靠,并且具有更好的功能.它可以通过PL/V8(值得整个主题本身)等项目进行扩展,并且它具有内置的工具,例如全文搜索,需要您在使用其他数据库时使用其他 *服务 *. <
不要误会我的意思.我要回答一个问题:为什么Postgres,所以我在这里谈论它的优势,我想指出它不是银色子弹或灵丹妙药来提供一些平衡.其他数据库工具可以提供独特的优势.具体来说,我是Redis的忠实拥护者,我不知道从长远来看,许多所谓的”大数据”多主解决方案中的哪一个会震撼,但这并不是Postgres强大的领域今天.
PostgreSQL和MySQL都是广泛使用的开源关系数据库管理系统.但是,当涉及中型数据时,使用PostgreSQL有几个好处:
- 高级数据类型:PostgreSQL具有广泛的高级数据范围类型,例如数组,Hstore(键值商店)和JSONB(二进制JSON),它们更容易存储和管理复杂的数据结构.
- 强大的支持对于交易完整性:PostgreSQL通过实施酸(原子能,一致性,隔离,耐用性)模型,对交易完整性和一致性具有很大的支持.这使得即使面对错误或失败,也更容易维护数据库中数据的完整性.
- 支持高级SQL:PostgreSQL的SQL实现更为高级MySQL,包括对高级窗口功能的支持,常见的表格表达式等.这使得编写复杂的查询并维护数据库变得更加容易.
- 可伸缩性:PostgreSQL通过使用读取副本具有内置的支持,可用于水平缩放.这使得在不牺牲性能或数据完整性的情况下更轻松地扩展数据库以满足不断增长的需求.
- 强大的安全功能:PostgreSQL具有许多高级安全功能,例如SSL用于运输中数据的加密和用户的基于角色的访问控制.
文章来源:IT宝库