1. ホーム
  2. mysql

MySQL vs PostgreSQL? 私の Django プロジェクトにはどちらを選ぶべきですか?

2023-10-17 06:27:37

質問

私の Django プロジェクトは、数十万件のエントリを持つ大規模なデータベースに支えられ、検索をサポートする必要があります (おそらく djangosearch または同様のプロジェクトを使うことになると思います)。

どのデータベースバックエンドが私のプロジェクトに最も適しているか、そしてその理由は何ですか?さらに読むための良いリソースをお勧めすることはできますか?

どのように解決するのですか?

最近プロジェクトをMySQLからPostgresqlに切り替えた者として、私はその切り替えを後悔していません。

Django の観点から見た主な違いは、Postgresql ではより厳密な制約チェックが行われることで、これは良いことです。

おそらく 6 つほどの Django データベース移行アプリケーションがありますが、少なくとも 1 つは Postgresql をサポートしていません。 しかし、他のアプリケーションを使うこともできますし、手動で行うこともできるので、これを欠点とは考えていません (これが私の好むところです)。

全文検索 かもしれない は MySQL でもっとうまくサポートされるかもしれません。 MySQL には、Django 内からサポートされる組み込みの全文検索がありますが、かなり使い物になりません (語幹検索、フレーズ検索などがありません)。 私は django-sphinx を MySQL での全文検索のためのより良いオプションとして使っています。

全文検索は Postgresql 8.3 に内蔵されています (それ以前のバージョンでは TSearch モジュールが必要です)。ここに良い説明のブログポストがあります。 PostgreSQL と tsearch2 を使った Django での全文検索