[解決済み] WebアプリケーションにおけるMySQLとPostgreSQLの比較 [終了しました]。
質問
私はPython(Django)を使用したWebアプリケーションに取り組んでおり、本番用にデプロイする際にMySQLとPostgreSQLのどちらがより適しているかを知りたいのです。
1つの ポッドキャスト Joel は、MySQL に問題があり、データが一貫していなかったと述べています。
私は、誰かがそのような問題を起こしたかどうかを知りたいのです。また、パフォーマンスに関して言えば、簡単に調整することができますか?
どのように解決するのですか?
未来の読者へのメモ。 以下の文章は2008年8月に最終的に編集されました。この編集の時点では11年近く前になりますね。ソフトウェアはバージョンアップでどんどん変わっていくので、以下のアドバイスに基づいてDBMSを選ぶ前に、それが今でも正しいかどうか調べてみてください。 以下に新しい回答があるかどうか確認してください。
より良い?
MySQL は、Web ホストによってより一般的に提供されています。
PostgreSQLはより成熟した製品です。
そこには この議論はあなたの質問に答えています。
どうやら このウェブページ によると、MySQL は、同時アクセスレベルが低い場合、および書き込みよりも読み取りが多い場合に高速に動作するそうです。一方、負荷や書き込み/読み出しの比率が高くなると、スケーラビリティが低くなることが分かっています。PostgreSQLは、同時アクセス数が少ないときは比較的遅いですが、負荷が増加するとうまくスケールアップします。 さらに、多くのパフォーマンス比較へのリンクが続きますが、これはこれらのことが非常に...条件に敏感だからです。
ですから、もしあなたの決定要因が「quot; どちらが速いか? ということであれば、答えは「人それぞれ」です。 もし本当に重要なら、あなたのアプリケーションを両方に対してテストしてください。 そして、本当に本当に気になるのであれば、2人のDBA(1人はそれぞれのデータベースを専門に扱う人)を入れて、データベースを徹底的にチューニングしてもらい、それから選択するのです。 驚くほど高価な 良い DBA は驚くほど高価です。 彼らはあらゆるセントの価値があります。 .
重要なとき
より良いパフォーマンスは、より多くのRAMとCPU、より適切なデータベース設計、巧妙なストアドプロシージャのトリックなどで買うことができ、そのすべてが、MySQLとPostgreSQLのどちらを選ぶかについて悩んだり、高価なDBAから専門的にチューニングするよりも安価で簡単にランダムウェブサイトXのためになります。
Joel はそのポッドキャストで、MySQL はクソだと言われるから、そのコメントは自分に跳ね返ってくるとも言っていました。
count
の列を取り戻すことはできませんでした。 アネクドートの複数形はデータではありません。
彼は言った
:
<ブロッククオート
MySQL は、私がこれまでプログラミングしてきたデータベースの中で、データの整合性に問題があった唯一のデータベースで、クエリを実行すると無意味な答えが返ってきて、それは正しくないものでした。
と、彼はこうも言っています。
<ブロッククオートそれは単なる逸話です。 これは、ブログやインターネット全般について、私がイライラすることの1つです。[このような、「逸話を真実にする」という奇妙な傾向があり、私はブロガーとして、このことについて少し罪悪感を感じ始めているのです。
関連
-
MySQLの一般的な分割ライブラリおよび分割テーブルスキームの概要
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] PostgreSQLの場合。PostgreSQLのテーブルを表示する
-
[解決済み] PostgreSQLの "DESCRIBE TABLE"
-
[解決済み] PostgreSQL コマンドラインユーティリティ: psql を終了する方法
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] PostgreSQLのユーザーパスワードを変更する方法を教えてください。
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] どのバージョンのPostgreSQLを使用していますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
MySQLのデータバックアップにmysqldumpを使用する方法
-
[解決済み] ユニークなテーブル/エイリアスではない
-
[解決済み] SQLエラー。ORA-01861:リテラルは、フォーマット文字列01861に一致しません。
-
Mysql がエラーを報告 オペランドには 1 つのカラムが含まれている必要があります。
-
Mysql がエラー 1241 を報告 オペランドは 1 つのカラムを含む必要があります。
-
'INSERT文はFOREIGN KEY制約「FK_TourismReservation_Users」と競合していました。その
-
MySQLの起動エラー:ERROR 2003 (HY000)。localhost'上のMySQLサーバーに接続できない(10061)
-
[解決済み] MySQLのプロセスリストを見つけ、それらのプロセスを終了させる方法は?
-
[解決済み] SQLを使用してSUMとSUBTRACTを行うには?
-
[解決済み] MySQL で特定のカラム名を持つすべてのテーブルを見つけるにはどうすればよいですか?