1

ユーザーが個人的な工芸品の販売数を追跡できるようにするサイトを開発しています。それが機能する方法は、ユーザーが毎週の売上データを送信/編集し、データが保存されると、さまざまな形式の表またはグラフで表示したり、傾向を追跡したりできるようにすることです。

私の懸念は、ユーザーベースが成長するにつれて、それが成長した場合、それに合わせて拡張でき、管理しやすいデータベース設計が必要になることです。このような適切な Web アプリに関しては、私は独学です。サイトを組み立てるのに必要な PHP と JS の知識はすべて持っていますが、以前に jQuery を使用したことがありますが、これについてはあまり確信が持てません。

ユーザーの週次レポートを 1 つの大きなテーブルに格納するか、別のデータベースを作成して、各ユーザーが独自のテーブルを持ち、そのユーザーの週次レポートを格納する方がよいでしょうか? このデータを変更または追加するよりも、チャートのためにこのデータを取得する方がはるかに多いため、私の目標は主に、データの保存/呼び出しの効率とシンプルさです。

私が最も困惑しているのは、ユーザーごとに製品の量が異なり、その量が変化するという事実を処理する最善の方法です。ユーザーは最初の 1 週間でおそらく 2 つの商品の売上を記録しますが、3 週目になると、販売する商品のリストに新しい商品を追加します。ほとんどのユーザーは複数の製品を持っているため、データベースはオーバーヘッドの少ないこの種のことを可能にする必要があります。

このデータベースをどのように構築しますか?

4

1 に答える 1

2

テーブルのロックではなく、行レベルのロック用に innoDB エンジンを備えた 1 つの大きなテーブルをお勧めします。次に、ユーザー名とエントリ時間にインデックスを作成します。

ユーザーごとのテーブルを少し多くすることをお勧めします。ユーザーが必要としないテーブルに割り当てられたハードディスクとデータベースのスペースを浪費することになります。テーブルがそれほど大きくなっても、mySQL が 500 万行以上をサポートしていても問題はありません。

シンプルさが一番です。

于 2012-06-07T17:04:24.243 に答える