私は、約 25 人の従業員を抱える企業向けにいくつかの小さな PHP アプリケーションを作成しています。現在、従業員の生産性を追跡するために、PHP ファイル関数を使用して毎日のエントリのデータを保存しています。しかし、私が働いている会社には世界中にオフィスがあり、これらのアプリケーションを何千人もの従業員に合わせて拡張する必要があるかもしれないことを念頭に置いて、ファイル関数と SQL を使用してユーザーを保存することに重大な欠点があるかどうか疑問に思っています。データ。一般的に言えば、SQL は php よりも効率的にリソースを使用することを知っていますが、いつでも、または特定の個人に対して大量のデータを保存していない場合、パフォーマンスに大きな違いはありますか? 他に懸念すべき潜在的な問題はありますか?
3 に答える
データストアにファイルを使用することには、間違いなく大きな欠点があります。すべての主要な DBM は、検索、何らかの方法でのレプリケーション、データを直交的に保存する機能などを提供します。これらすべてを、テーブル定義とクエリ以外は何も記述しません。情報のファイルを管理するためのコードや競合状態を心配する必要はありません。
Windows を使用している場合は、WampServer によって Apache、PHP、および MySQL の準備が整います。PostgreSQL で代用することもできますが、それは余分な作業です。
ファイルを使用してデータを保存するのは悪い考えです。
今は大丈夫です。25 人のユーザーがいて、毎日 25 のエントリが来るからです。
将来のことを考えてください。2 年かもしれません
25 * 2 * 365 (25 can increase in 2 years)
繰り返しになりますが、後でレポートを生成する必要があります。ワンユーザーパフォーマンス、いかがでしょうか。ファイルを解析するためにどのくらいコーディングしますか?
Mysql
いくつかの簡単なクエリで、日報、月報、各個人レポートなど、多くのオプションが表示されます
従業員が 1 人であろうと、25 人であろうと、25,000 人であろうと関係ありません。行くべき道は常に SQL です。実際、フラット ファイルのコーディングは、実際に SQL を使用するよりもはるかに困難です。SQL を使用すると、データ層、アプリケーション層、バックエンド層など、すべての層でサード パーティ ベンダーを自由に選択できるからです。 20,000 人の従業員のベース ソフトウェアに投入されるハードウェア リソースの量がおそらく 100 倍になることを除いて、従業員は 1 人の従業員のために書かれたものと大差ないかもしれません。もちろん、複数のサーバー ノード、チェーンされたイベント ハンドラーなどの他の機能があります。リソースを最大化するためにデータベースサーバーを複製しますが、そのレイヤーはすでに作成されたソフトウェアの上にあり、ソフトウェアコーディングへの影響はほとんどありません。