你了解世界上功能最强大的开源数据库吗?

如果不是领导强制要求,可能根本不会留意到这款号称世界上功能最强大的开源数据库——PostgreSQL。如果你不读这篇文章,或许也会错过一个跃跃欲试想挤进前三的优秀数据库。

为了能够熟练运用,特意买书研究,发现这款数据库还真有点意思。汇总一篇文章与大家分享,目的只有一个:让大家多少了解一下这款数据库。

你会发现与Mysql相比,PostgreSQL的社区并不活跃,中文资料可以说是少得可怜,在数据库中排行老四。前三都不一定全用过,谁会去记住老四呢。但下面的数据不得不让我们留意。

下面是DB-Engines数据库流行度排行榜2020年7月份的数据。

PostgreSQL

在老大老二的评分不断下降的情况下,这么一个没有后台的开源数据库,竟然励精图治,突飞猛进。有没有像春秋战国时的秦国,是时候得留意一下它了。

下面再看看这几年PostgreSQL的增速情况。

PostgreSQL

图中遥遥领先其他数据库,追赶前三名的数据库,就是PostgreSQL,不少大厂已经在使用了。

PostgreSQL是一款开源的对象关系型数据库,也就是说与Mysql的功能一致。在欧美地区使用比较广泛,因其限制严格、实现严谨,在金融、电信等领域应用比较多。

对照Mysql来了解一下PostgreSQL(以下简称PG):

1、在SQL的标准实现上比MySQL完善,而且功能实现比较严谨;

2、存储过程的功能支持要比MySQL好,具备本地缓存执行计划的能力;

3、PG对表连接支持较完整,优化器的功能较完整,支持的索引类型很多,复杂查询能力较强;

4、PG主表采用堆表存放,MySQL采用索引组织表,能够支持比MySQL更大的数据量。

5、PG的主备复制属于物理复制,相对于MySQL基于binlog的逻辑复制,数据的一致性更加可靠,复制性能更高,对主机性能的影响也更小。

6、MySQL的存储引擎插件化机制,存在锁机制复杂影响并发的问题,而PG不存在。

上面是比较笼统的概述,下面给大家汇总一下读相关书籍发现。

1.データベース、テーブル、その他の操作は基本的に同じですが、Mysqlとの違いは、PGの主キーの自動インクリメントが独立したシーケンスを使用し、シーケンスが対応するフィールドに割り当てられて自動インクリメントが行われることです。

2. PGのフィールドレベルおよびテーブルレベルの制約も特に興味深いものです。CHECKキーワードを使用して、指定したフィールドが特定のしきい値より大きいか小さいかを制限できます(たとえば、これに限定されません)。テーブルレベルの制約の場合、CHECKキーワードを使用して、次のような2つのフィールド間の関係を制約することもできます。CHECK(createtime <parentcreatetime)面白いですか?

3. PGは、データタイプにマネータイプを提供します。これにより、「$ 1,000.00」などのタイムゾーンに基づいて対応する通貨形式を表示できます。

4.データ型は豊富な日付と時刻型をサポートし、対応する演算、加算、減算、乗算、除算があります。

5.データ型は、ポイント、ライン、セグメント、長方形、パス、ポリゴン、円などの幾何学的図形もサポートします。頻繁に使用されることはありませんが、非常に優れています。もちろん、JSONと配列型も必須です。

6. PGは、数学関数、文字列関数、バイナリ文字列関数、データ型フォーマット関数、日付と時刻関数、ビット文字列関数、列挙関数、幾何関数、JSON関数、範囲関数、数値関数などを提供します。リッチからまぶしい。

7.再帰クエリはSQLクエリで提供され、多数のウィンドウ関数が組み込まれています。

8.インデックスは、Bツリーインデックス、ハッシュインデックス、GiSTインデックス、SP-GiSTインデックス、GINインデックス、BRINインデックスをサポートします。十分に豊かです。

9.ビューは、マテリアライズドビューと通常のビューをサポートしています。

10.テーブル継承をサポートします。オブジェクト指向プログラミングの友はとても親切ですか?

11. PGは基本的なテーブルパーティション関数をサポートし、PG10以降は宣言型の組み込みテーブルパーティション関数をサポートします。この関数は、独立したストレージのために、大きなテーブルを小さな物理シャードに分割することをサポートします。

12. PGは、SAVEPOINTを使用して、大きなトランザクションの一部のトランザクションをロールバックすることをサポートしています。

13. PGはSQLステートメントに対して論理最適化と物理最適化を実行しました。

もちろん、他にも多くの興味深い機能が発見されるのを待っています。上記の内容を読んだ後、学習にも興味がありますか?その後、この記事の目的は達成されました。

最後に、この記事を書く目的は2つあります。まず、すべての人にデータベースを導入することは非常に明確です。2つ目は、学習の改善の概念を促進することです。できる限り新しいことを理解し、多くの場合大きな利益をもたらす快適ゾーンを突破するよう努めます。

元のリンク:「世界で最も強力なオープンソースデータベースを知っていますか?


手続きの新しいビジョン

パブリック アカウント New Vision of Program」は、ソフトパワーとハードテクノロジーを同時に改善できるプラットフォームです。

WeChat公式アカウント:プログラムの新しいビジョン

おすすめ

転載: blog.csdn.net/wo541075754/article/details/107473049