Issue

ログテーブルの管理 #128

wada opened this at 2022-09-15T14:52:03; open

Description

opened by wada at 2022-09-15T14:52:03; updated 2022-12-06T19:13:00

DB軽量化 #151

問題点

スクリプトでのログ移動は、dbに負荷がかかる
また、それによってテーブルの最適化が必要になる

対応

直接ログdbに入れた方が早い

wada change_priority at 2022-09-15T16:19:57: 未分類:important
wada change_priority at 2022-09-15T16:21:38: important:high

Comment

#23556 by wada at 2022-11-09T13:13:54; updated 2022-11-09T19:35:33

jryeテーブル調査

https://docs.google.com/spreadsheets/d/1rYxsG6kN5TTluf_hWx0l6_gmnQOoxpxW7UJbMJ7l1aY/edit#gid=0

select: ゲーム内でselectしているか
cpanel: 管理画面で参照しているか
aggre: 集計して保存しているか

+--------------------------------------+-----------+--------+---------+----------+--------+--------+--------+
| table_name                           | record    | ALL_MB | DATA_MB | INDEX_MB | select | cpanel | aggre  |
+--------------------------------------+-----------+--------+---------+----------+--------+--------+--------+
| log_commerce_friend_data             |  27386434 |  13462 |   12281 |     1181 |      x |      x |      x |
| log_bell_change                      | 119447999 |  13006 |    5954 |     7052 |      x |      o |  table |
| log_commerce_data                    |  23086000 |  10346 |    9829 |      517 |      x |      x |      x |
| log_stage_change                     |  64904485 |   5622 |    2749 |     2873 |      x |      x |      x |
| log_item                             |  77224660 |   5532 |    4300 |     1232 |      x |      o |  table |
| log_material_request                 |  63916048 |   3788 |    2872 |      916 |      x |      x |      x |
| log_user_material_item               |  44512313 |   3518 |    2078 |     1440 |      x |      x |  table |
| log_yamada_payment                   |   1529404 |   2984 |    1061 |     1923 |      x |      o |  table |
| log_card                             |  25971620 |   2946 |    2537 |      409 |      x |      o |  table |
| log_team_raid_monster_per_damage     |  22328812 |   2624 |    1209 |     1415 |      x |      x |      x |
| log_user_area_item                   |  33689223 |   2581 |    1450 |     1131 |      x |      x |  table |
| log_user_event                       |  28062841 |   2091 |    1557 |      534 |      x |      x |      x |
| log_commerce_deck                    |  22616453 |   2089 |    1384 |      705 |      x |      x |      x |
| log_user_blue_ball                   |  17151315 |   1934 |     918 |     1016 |      o |      o |      x |
| log_teamwar_reward_gold              |  13099297 |   1439 |     747 |      692 |      o |      x |      x |
| log_hau_login                        |  29074294 |   1187 |    1187 |        0 |      x |      o |      x |
| log_user_build                       |  10359927 |    959 |     506 |      452 |      x |      o |      x |
| log_team_emblem                      |   4331134 |    751 |     247 |      504 |      x |      x |      x |
+--------------------------------------+-----------+--------+---------+----------+--------+--------+--------+
| log_del_present_box                  |   2674568 |   3872 |    3499 |      373 |      o |      o |  table |
| log_gold_change                      |  22921658 |   2180 |    1150 |     1030 |      x |      o |  table |
| log_gold_collect                     |   9170049 |   1892 |    1149 |      743 |      o |      o |      x |
|

Comment

#23558 by wada at 2022-11-09T14:01:29; updated 2022-11-09T14:01:29

直接jrye_logに入れるとして、
selectかcpanelがoの場合、該当コードのdb向き先をjryeからjrye_logに変更する必要がある
影響範囲が広く対応が難しいなら、スクリプトで一定時間おきにjryeからjrye_logへ移動させる(log_del_present_boxなどと同じ方法)

以下のテーブルは、6ヶ月以前のデータを保存する必要性が低い
・aggreがxのテーブルで、今後参照することがない
・aggreがx以外のテーブルで、集計されたデータが十分に意味を持つ

Comment

#23575 by wada at 2022-11-09T19:44:41; updated 2022-11-09T19:44:41

jrye_logテーブル

+----------------------------------+-----------+--------+---------+----------+
| table_name                       | record    | ALL_MB | DATA_MB | INDEX_MB |
+----------------------------------+-----------+--------+---------+----------+
| search_log_team_bbs              |  36317530 |  44357 |   43724 |      633 |
| search_log_del_present_box       |   5232450 |   3844 |    3275 |      569 |
| log_user_daily_quest             |  43889586 |   2611 |    2611 |        0 |
| dau_login                        |   2013220 |   1618 |    1576 |       42 |
| log_team_bbs                     |   1388807 |   1555 |    1524 |       31 |
| log_user_daily_quest_clear       |  18414221 |   1355 |     849 |      506 |
| log_teamWar_attackList           |  10422800 |   1127 |     537 |      590 |
+----------------------------------+-----------+--------+---------+----------+
| log_del_present_box              |  61650053 |  84626 |   77465 |     7161 |
| log_gold_change                  | 471906783 |  48794 |   23855 |    24939 |
| log_gold_collect                 | 121005692 |  17292 |   11873 |     5419 |
| log_user_activity                |  12733461 |    640 |     640 |        0 |
|

Comment

#23663 by wada at 2022-11-11T17:35:37; updated 2022-11-11T17:35:37

search_log_team_bbsが大きいので対応が必須
本来であればdel_log_search.incで削除しているが実行していない
修正してコツコツ削除していくか、パーティションを設定した新テーブルとスイッチするか
ユーザ入力分はlog_team_bbsに格納されているので、削除自体は問題なし

wada refer at 2022-11-16T12:02:40: 197:重要度低のテーブルデータを直接ログDBに入れる
wada add_label at 2022-11-16T12:15:09: 対応中
wada assign at 2022-11-16T12:15:12: Not assigned:wada
wada refer at 2022-11-16T14:20:04: 197:重要度低のログデータを直接ログDBに入れる
wada refer at 2022-12-06T19:13:00: 227:search_log_team_bbsのデータ管理
wada delete_label at 2023-01-31T15:03:45: 対応中