ホームページ  >  記事  >  バックエンド開発  >  CRMシステム統計テーブルの設計上の問題

CRMシステム統計テーブルの設計上の問題

WBOY
WBOYオリジナル
2016-08-18 09:15:391444ブラウズ

現在 crm 統計関数に取り組んでおり、ユーザーに関連するさまざまなデータを保存するための関連テーブルを作成する必要があります。
例: その日に従業員によって追加された新規顧客の数を数えます。
まず、従業員の毎日の顧客数を保存する統計テーブルを設計します。
次に、従業員が顧客を追加すると、統計テーブルの対応するフィールドに 1 を追加します。顧客が削除されると、統計テーブルの対応するフィールドが 1 減ります。
これにより、1 を加算して 1 を減算する操作がトリガーされ、swoole を使用して非同期に実行されます。

最近、今週、今月、今四半期、今年の統計を集計する機能を追加する必要があります。

【日次統計表】は、【週次統計表】、【月次統計表】、【四半期統計表】、【年次統計表】に対応して4部コピーしました。
これら 5 つのテーブルのデータ構造は似ています。

CRMシステム統計テーブルの設計上の問題

私の現在の質問は:
1. 非同期トリガーを使用してユーザーの毎日の顧客数をカウントする以前の方法は最適ですか?他に良い方法はありますか?
2. 週次、月次、四半期、年次のデータをカウントする場合、[日次統計テーブル] から計算するか、これら 4 つのテーブルを直接構築するか、それとも非同期トリガーを使用して関連データを直接保存するのが良いでしょうか?

答えてくれる専門家はいますか?ありがとうございます

返信内容:

現在 crm 統計関数に取り組んでおり、ユーザーに関連するさまざまなデータを保存するための関連テーブルを作成する必要があります。
例: その日に従業員によって追加された新規顧客の数を数えます。
まず、従業員が毎日持つ顧客の数を保存する統計テーブルを設計します。
次に、従業員が顧客を追加すると、統計テーブルの対応するフィールドに 1 を追加します。顧客が削除されると、統計テーブルの対応するフィールドが 1 減ります。
これにより、1 を加算して 1 を減算する操作がトリガーされ、swoole を使用して非同期に実行されます。

最近、今週、今月、今四半期、今年の統計を集計する機能を追加する必要があります。

【日次統計表】は、【週次統計表】、【月次統計表】、【四半期統計表】、【年次統計表】に対応して4部コピーしました。
これら 5 つのテーブルのデータ構造は似ています。

CRMシステム統計テーブルの設計上の問題

私の現在の質問は:
1. 非同期トリガーを使用してユーザーの毎日の顧客数をカウントする以前の方法は最適ですか?他に良い方法はありますか?
2. 週次、月次、四半期、年次のデータをカウントする場合、[日次統計テーブル] から計算するか、これら 4 つのテーブルを直接構築するか、それとも非同期トリガーを使用して関連データを直接保存するのが良いでしょうか?

答えてくれる専門家はいますか?ありがとうございます

顧客は何人いますか? 100 万レベル以下であれば、私がやっているのであれば、テーブルに保存しておけば済みます。テーブルには 2 つのフィールドがあり、1 つは created_at,一个叫deleted_at と呼ばれ、両方とも datetime 型であり、これら 2 つのフィールドにはインデックスが付けられます。

将来的には、統計を行うときにリアルタイムでクエリを実行できるようになり、その速度は 100 万レベル未満で非常に高速になり、必要な範囲をチェックできるようになります。データの量に関係なく、キャッシュを追加するとパフォーマンスの問題を簡単に解決できます。これを行うために多くのテーブルを作成するには複雑すぎるため、利益が損失を上回ります

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。