84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
1、想统计今日新增客户数,昨日新增客户数,以及今日跟进记录数等等,数据量很大,前面用的是加1减1的方式,但经常会出现误差,怎么解决这个统计的问题?难道必须用count吗?
メイン データベースで大量のデータの統計を直接実行しないことをお勧めします。テーブルをロックせずに 1 を加算して 1 を減算する方法は不正確です。テーブルをロックするとパフォーマンスに影響し、カウントのパフォーマンスも低下します。
統計機能はサブシステムに分離することが推奨されており、業務サーバーはこの統計サブシステムへの顧客の追加/削除操作をメッセージキューを通じて通知します。
このサブシステムでは、統計に非常に便利な時系列データベース (オープンソース Elasticsearch など) をストレージとして使用することを検討できます。特別な時系列データベースが必要なく、mysql を直接使用する場合でも、別の mysql データベースを作成して、ロック テーブルを 1 つ増やしたり、1 つ引いたり、カウントしたりすることができます。これはメイン データベースではありません。 。
自動インクリメントIDの場合は、今日の最後のIDから昨日の最後のIDを引くことで計算できます。
使用される統計テーブルはプラス 1 とマイナス 1 です
使用回数
メイン データベースで大量のデータの統計を直接実行しないことをお勧めします。テーブルをロックせずに 1 を加算して 1 を減算する方法は不正確です。テーブルをロックするとパフォーマンスに影響し、カウントのパフォーマンスも低下します。
統計機能はサブシステムに分離することが推奨されており、業務サーバーはこの統計サブシステムへの顧客の追加/削除操作をメッセージキューを通じて通知します。
このサブシステムでは、統計に非常に便利な時系列データベース (オープンソース Elasticsearch など) をストレージとして使用することを検討できます。特別な時系列データベースが必要なく、mysql を直接使用する場合でも、別の mysql データベースを作成して、ロック テーブルを 1 つ増やしたり、1 つ引いたり、カウントしたりすることができます。これはメイン データベースではありません。 。
自動インクリメントIDの場合は、今日の最後のIDから昨日の最後のIDを引くことで計算できます。
使用される統計テーブルはプラス 1 とマイナス 1 です
使用回数