Djangoが初めてで、Djangoでデータベースエンジンとしてsqlite3のみを使用しています。現在、作業しているアプリケーションの1つは、モデルの複雑さの点でかなり大きくなっています。およびリクエスト/秒。
Django=でサポートされるデータベースエンジンはどのようにパフォーマンスの面で比較されますか?それらのいずれかを使用する際の落とし穴?そして最後になりましたが、しばらく使用しましたか?ありがとう!
リレーショナルデータベースを使用する場合、Djangoコミュニティで最も人気のあるものはPostgreSQLです。個人的なお気に入りです。しかし、MongoDBはPython/Djangoでかなり人気が出ているようです。コミュニティも同様です(ただし、MySQLでプロジェクトを行ったことはありません)。MySQLでも多くの成功したプロジェクトがありますが、個人的にはPostgreSQL 9.0または9.1を好みます。
編集:私はこの投稿でそれほど素晴らしい仕事をしませんでした。さらにいくつかの考慮事項を追加します。
大部分のWebサイトでは、MySQLまたはPostgreSQLのどちらでも問題なく機能します。どちらにも長所と短所があります。 「MySQL vs. PostgreSQL」をグーグル検索することをお勧めします。この検索には多くのヒットがあります(この記事を書いている時点では、3,000,000を超えています)。評価を行う際のいくつかのヒントを以下に示します。
また、システムでトリガーの使用を計画している場合、MySQLとInnoDBに関連する2つの非常に厄介なバグとACIDコンプライアンスがあります。ここに 最初のもの があり、ここに 別のもの があります。この機能は必要ないかもしれませんが、気をつけてください。
あなたに違いをもたらすかもしれない最後の1つは、PostgreSQLではPythonでdb関数を書くことができるということです。これが ドキュメントへのリンク です。
MySQLとPostgresは、Djangoコミュニティで使用される2つの最も一般的なDBバックエンドであり、同等のパフォーマンスを発揮します。Postgresは、Django確かにMySQLを選ぶつもりはありませんが、MySQLをDjango(またはMySQL一般に):
Djangoのさまざまな機能に関するいくつかのドキュメントがありますが、これらはさまざまなDBバックエンドではサポートされていません: https://docs.djangoproject.com/en/1.3/ref/databases / 。
MySQLとPostgreSQLは、Djangoで最適に機能します。開発中に使用するように開発設定を変更するものを選択する場合(開発モードでsqlite3を使用し、prodで「実際の」データベースを使用するのではなく)、未来。
どちらのDBを使用するかわかりませんが、誰かがMongoDBを使用する予定がある場合は、py3ではなくpy2でのみ機能することに注意してください
参照リンク:
Django 1.10、mongodbおよびPython 3.4. のプロジェクト設定