mysql と nosql を一緒に使用する必要がある割り当てを実装する必要があります。私はすでにmysqlテーブルを実装しています。ただし、nosql のアーキテクチャについてはよくわかりません。
サーバーは、最も成功した 100 人を、日別、前日 (昨日)、週、および経験に応じて常に出力する必要があります。
mysql テーブルには 2 つのテーブルuser
&がありscore
ます。
user
テーブルには次のフィールドがあります。user_id(BIGINT)
&full_name(BIGINT)
score
テーブルには次のフィールドがあります。user_id(BIGINT)
、level(INT)
、total_exp(BIGINT)
、today_exp(BIGINT)
、weekly_exp(BIGINT)
パフォーマンスを向上させるには、SQL を使用しないソリューションも使用する必要があります。ただし、no-sql のアーキテクチャについてはよくわかりません。
現在、mongodb テーブルを作成することを考えています。ranking_all
、、、0 から 99 までのインデックスをranking_today
持つranking_week
。ranking_yesterday
アクティブなユーザーがプレイし、それに応じて経験を積むたびに、mongodb テーブルを更新します。
ただし、よくわからない点がいくつかあります。このシステムでは、アクティブなユーザー ベースが増加すると、mysql および mongodb テーブルの全体的な更新コストが増加します。
では、全体的なアーキテクチャはパフォーマンスの点で優れていますか?
デザインを変更/改善するためのアイデアはありますか?