6

データベースの経験はありませんが、データベースを学び、計画しているWebプロジェクトで使用する予定です。

しかし、私の友人から、データベースの使用は私が計画したよりもかなり広範囲にすべきであるというアドバイスがありました。彼は、ほとんどすべてのデータをデータベースに保持することを信じています。データベースは、おそらくユーザーデータ(ほんの小さなデータ)やページコンテンツデータなど(非常に小さなデータだけではないすべて)に関して最も便利だと思います。静的ファイル内-その仮定を構築するための知識がなくても。

  • より良い解決策は何でしょうか?データベース内の最小限のデータ、またはデータベースに効果的に保存する方法を見つけることができる限りですか?
  • 静的ファイルとデータベースの使用にパフォーマンスの違いはありますか?
  • 最善の解決策は、一般的なサイトのトラフィックに依存しますか?

PHPとMySQLを組み合わせて使用​​するつもりです。

4

7 に答える 7

4

複数のパラメータに基づいて特定のデータを検索できるようにする場合は、実際にデータベースを使用する必要があります。つまり、SQL言語は、まさにこのためのWHERE句を提供します。また、データを作成および更新する場合は常に、データベースが最良の選択です。データベースは、データの一意性をある程度確保するための制約を提供するためです。また、データ間の関係は、データベースで管理するのが最適です(外部キーなどを使用)。

たとえば、ユーザープロファイルはデータベースに保存するのが最適です。また、ユーザー制御の入力はデータベースに保存する必要があります。一方、サーバー側のインクルード/テンプレートファイルは、検索する必要がないため、サーバーのローカルディスクファイルシステムに通常のファイルとして保存するのが最適です。ファイル名をさらに(メタ)情報(メニュー/サブメニューなど)に「リンク」したい場合は、最終的にファイル名をデータベースに保存できます。同じことがバイナリファイル(画像、ダウンロードなど)にも当てはまります。(非常に)高度な移植性が必要な場合を除いて、データベースに保存する必要はありません。

于 2010-01-18T00:42:16.427 に答える
3

永続データストレージの手段はデータベースだけではありません。データベースは単に最も一般的なものです。

データベースをまったく使用しないドキュメント/ブログエンジンがあります。ページが作成、変更、または静的htmlファイルにコメントされると、作成または変更されます。たとえば、MovableType

同様に、システムがオフになっている場合、メモリ内データが単純に再構築される、純粋なメモリ内ストレージシステムを使用できます。または、メモリの内容がダンプされてから復元され、データベースは関与しません。これは通常、スループットが非常に高いシステム、または非常に低い(マイクロ秒レベル)遅延を必要とするシステムで行われます。

あなたが尋ねたすべての答えは「それは依存する」であり、あなたがそれをどのように行ってもおそらくそれを機能させることができるので、あなたの質問は本当に答えることができません。

私はこれを言います:あなたが実際に問題を抱えるまで、パフォーマンスについてあまり心配しないでください。発生するパフォーマンスの問題のほとんどは、データベース内のインデックスと主キーに起因する可能性があります。

PHPとMySQLは良い選択です。

于 2010-01-18T00:40:05.583 に答える
2

データベースは、厳密にデータであるものを保持するための適切な場所です。フラットファイルは、データベース内のデータとほぼ同じ速度でインデックスを作成することはできません。一方、データベースを設定するには、より多くの学習収入が必要になります。

写真のようなバイナリデータは、データベースではそれほど優れていません。

于 2010-01-18T00:32:53.183 に答える
0

私の意見では、データベースにデータを保存しない理由が必要です。|しかし、GoogleDatastorehttp ://code.google.com/appengine/docs/python/datastore/などの非リレーショナルデータベースも検討する必要があると思います。

于 2010-01-28T15:13:09.270 に答える
0

Mysqlは、データの整合性を備えた一般的なデータベースの1つです。大きなデータを保存することを計画している場合は、mysqlを使用するのが最適です。データベースを使用する際には、セキュリティも考慮する必要があります。Mysqlは非常に安全で使いやすいので、ネット全体でより良いドキュメントや例を検索することもできます。

于 2010-01-18T03:15:18.253 に答える
0
  • 私は言うでしょう:データベース内のすべて。データベースはこれらの種類のもののために最適化されています。ほとんどのブログソフトウェアもコンテンツにデータベースを使用しているので、安全です。編集:ああ、バイナリファイルは確かにファイルとして優れています。しかし、MySQLもそれらを安全に処理できます。写真が1枚ある場合は、データベースに保存してもかまいませんが(保守が簡単なため)、たとえば10.000枚の写真をホストする場合は、代わりにファイルを使用し、データベース内のファイルの参照を保持します(それらの場所、等。)。
  • 絶対に:データベースも最適化されています。内部的には、データベースはファイルを使用しますが、これについてはもう気にする必要はありません。
  • MySQLデータベースは、一般的なサイトトラフィックにはまったく問題ありません。

PHPとMySQLは良い選択です。

于 2010-01-18T00:33:26.960 に答える
0

また、データ操作にトランザクションが必要な場合、ほとんどの場合、データベースが唯一の優れたソリューションです。

于 2010-01-18T01:58:49.823 に答える