áááá«ááºáž
áááºá¹ááá¬áá«á áá»áœááºáá±á¬áºá ningenMeá áááºáá±á¬á·ááºáá²áá±ážáá¬ážáá°áá«á
áá±á«ááºážá ááºááŒá±á¬áá¬ážááá·áºá¡ááá¯ááºážá áá»áœááºá¯ááºááá¬ááºáááºážááẠMySQL ááœáẠááŸááºáááºážáá±á«ááºáž áááºáž 300 ááᯠáá¯ááºááá¯ááºážááá¯ááºáᬠáá»ááºáá áºááá·áº áá¬ááºáááºážááŒá áºáááºá
áá«ááᯠá áááºáááºá á¬ážáá¬áá²á·á¡ááœáẠááááá±ážáá»áẠ(ááœáŸááºááŒá¬ážáá»ááºáá»á¬áž) ááŒá¯áá¯ááºááá¯á· áá¯á¶ážááŒááºáá²á·áá«áááºá
á¡ááẠ- ááááá±ážáá»ááº
áá»áœááºá¯ááºá¡áá¯á¶ážááŒá¯ááŒá®áž ááááºážááááºážáá¬ážáá±á¬ á¡áá¯ááºáá¬áá¬ááœáẠMySQL á០ááŒá®ážáá²á·áá±á¬áááá±áá¬áá»á¬ážááᯠáá áºáá±á·áá áºááŒááẠá á¯áá±á¬ááºážááá·áº áá¯á¶ááŸááºáá¯ááºáááºážá ááºáá áºáá¯ááŸááááºá
áá¯á¶ááŸááºá¡á¬ážááŒáá·áº á€áá¯ááºáááºážá
ááºááẠá áá¬áá®ááá·áºá¡ááœááºáž ááŒá®ážá
á®ážáá±á¬áºáááºáž á€á¡ááŒáááºááẠá áá¬áá® ááá¯á·ááá¯áẠá áá¬áá®ááŒá¬ááŒá®ážáá±á¬áẠááááá±ážáá»áẠááœááºáá±á«áºáá¬ááŒááºáž ááááºááá·áºáá²á·áá«á
á¡ááŒá±á¬ááºážááŒáá»ááºááŸá¬ááœá±áá±
áá¯ááºáááºážá
ááºááᯠááŒááºáááºá
áááºááŒá®áž ááŸááºáááºážáá»á¬ážááᯠááŒáá·áºááŸá¯ááẠááŒáá¯ážá
á¬ážáá²á·áá±á¬áºáááºáž á¡ááŸá¬ážá¡ááœááºážáááŸááá²á·áá«á
áá±ážááœááºážááᯠááŸááºáááºá
áœá¬ á¡ááœáŸááºážáááºáá¬ážáá«áááºá áá«áá±ááá·áº áá¬áá»á¬ážááŸá¬ážáá±ááŒá®áá²ááá¯á· ááœá±ážááá¯ááºáá±á¬á· áá±áá¬áá±á·á
Ạá¡ááœááºá¡á
á¬ážá áá±á¬áºáá±á¬áºááŒá®ážáá¬ááᯠááááá¯ááºááááºá
hoge_table | 350'000'000 |
áááºáž áá á ááŸááºáááºážáá»á¬ážá á¡ááœáŸááºážááááºážááẠááŸááºáááºá áœá¬ áá¯ááºáá±á¬ááºáá±áá¯á¶áááŒá®áž á¡ááœááºááŸá±ážááœá±ážáá«áááºá
áá áºááá»áŸáẠááá¯á¡ááºáá±á¬ á¡áá»ááºá¡áááºá á¯áá±á¬ááºážááŸá¯ááŸá¬ ááŸááºáááºážáá±á«ááºáž 12 ááá·áºááŒá áºáááºá Select command ááẠá¡áá»áááºá¡áá±á¬áºááŒá¬áá¯á¶áááŒá®áž ááœá±áá±ážááœá±áá°ááᯠá¡áá»áááºá¡áá±á¬áºááŒá¬ ááá¯ááºáá±á¬ááºáá²á·áá¯á¶ááááºá
DB
áááºážááẠáá±á·á áẠá á¬áááºážááœááºážááŸá¯ 400 ááá·áºááŒáá·áº ááá¯ážááœá¬ážáá¬áá±á¬ ááá¬ážáá áºáá¯ááŒá áºáááºá áá±áá¬áá±á·á áºááẠááŒá®ážáá²á·áá±á¬áá¡ááœááºáᬠáá±áá¬á á¯áá±á¬ááºážááááºááŒá áºááŒá®ážá ááá¯á·ááŒá±á¬áá·áº á€áá±áá¬ááá¬áá¡ááá¡áá»ááᯠáá¶ááá¯ááºáááºááŸááááºáᯠáá»áŸá±á¬áºááá·áºáá¬ážáá±á¬áºáááºážá áá¶ááá±á¬ááºážá áœá¬ááŒáá·áºá ááŸáá·áºáááºáááºáááºááŸá¯ááœáẠááá«áááºáá«á
á€áá±áá¬áá±á·á áºááᯠáá»áœááºá¯ááºá០ááá®ááœááºáá²á·áá«á á¡ááŒá¬áž developer áá¶á០ááœáŸá²ááŒá±á¬ááºážáá°áá²á·ááŒááºážááŒá áºáá±á¬ááŒá±á¬áá·áº áááºážááá¬á¡ááŒáœá±ážáá»á¬ážáá²á·ááá¯á· áá¶á á¬ážááá«áááºá
áá±á·á á¥áºááá·áºááœááºážááá·áº áá±áá¬ááá¬á ááŒá®ážáá¬ážáá¬ááŒá®áž áá±á¬ááºáá¯á¶ážááœáẠáááºážá ááá·áºáááºáá»ááºááá¯á· áá±á¬ááºááŸáááœá¬ážáá±á¬á¡áá«ááœáẠá¡áá»ááºáá áºáᯠáá±á«áºáá¬áááºá á€áá»áŸáá»á¬ážááŒá¬ážáá±á¬ áá±áá¬ááá¬áááŒáá·áº á¡áá¯ááºáá¯ááºáá±á¬á¡áá« áááºážááá¯á·ááᯠááœá²ááŒá¬ážáá¬ážááẠááá¯á¡ááºáááºáᯠáá°ááá±á¬áºáááºážá á€á¡áá¬ááẠáá¶ááá±á¬ááºážá áœá¬ááŒáá·áº áááŒá®ážááŒá±á¬ááºáá²á·áá«á
ááŒá®ážáá±á¬á· áá« ááŸá¯ááºááŸá¬ážáá¬áááºá
ááŒááºáááºáá»ááº
áá±áá¬áá±á·á áºá á¡ááœááºá¡á á¬ážááᯠáá»áŸá±á¬á·áá»áááºááŸáá·áº áá±á¬á·áá»á áºááá¯ááºááá¯áẠááŒá±á¬ááºážáá²ááŒááºážááẠáááºážááᯠáá¯ááºáá±á¬ááºááẠá¡áá»áááºááᯠáá»áŸá±á¬á·áá»ááŒááºážááẠááá¯á áááºááŒááºáá¯á¶ááá¬ážááŒá áºáááºá
ááŸááºáááºážáá±á«ááºáž áááºáž 300 ááᯠáá»ááºááá¯ááºáá»áŸáẠá¡ááŒá±á¡áá± áááááá¬áᬠááŒá±á¬ááºážáá²ááœá¬ážááá·áºááẠá áá«ááŒá±á¬áá·áº áá»áœááºáá±á¬áº áá®ááá¯áá¯ááºááá¯á· áá¯á¶ážááŒááºááá¯ááºáááº... á¡ááºá áá«á áá±áá»á¬áá±á«áẠá¡áá¯ááºááŒá áºáááºáááºáááºá
áá¯ááºáá±á¬ááºáá»áẠá
áá¯á¶ááŒááºá áááºáá»ááá±á¬ áááá¹áá°áá áºáá¯ááᯠááŒááºáááºááŒá®ážáá±á¬á¡áá« áá±á¬ááºáá¯á¶ážááœáẠáá»áœááºá¯ááºááẠáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠá áááºááá¯ááºáá«áááºá
"áá±á¬ááºážááá¯ááŸá¯áá áºáᯠáá±ážááá¯á·ááŒááºáž''
DELETE FROM hoge_table WHERE create_time <= 'YYYY-MM-DD HH:MM:SS';
"... "
"... "
"áááº... á¡ááŒá±áááŸááá«á áá¯ááºáááºážá
ááºá á¡áá»áááºá¡áá±á¬áºááŒá¬á០ááŒá
áºáá±á¬ááºážááŒá
áºááá¯ááºáá«áááºáâ - áá«áááºáá²á·áááºá áá«áá±ááá·áºá á¡ááŒá±á¡áá±ááŸá¬á áá« Grafana ááá¯ááŒáá·áºááá¯ááºááŒá®áž disk load áá¡áááºážááŒááºáá¬áá¬ááá¯ááœá±á·ááá¯ááºááááºá
âá¡áá¹ááá¬ááºáá»á¬ážáááºâ ááá¯á· ááŒááºááœá±ážááŒá®áž áá±á¬ááºážááá¯áá¬ááᯠáá»ááºáá»ááºážáááºááá¯ááºáááºá
áá¯ááºáá±á¬ááºáá»áẠá
á¡áá¬á¡á¬ážáá¯á¶ážááᯠááœá²ááŒááºážá áááºááŒá¬ááŒá®ážáá±á¬ááºá áá±áá¬ááá¬áááẠá¡á¬ážáá¯á¶ážááᯠáá áºááŒáá¯ááºááẠáá»ááºáá áºááẠá¡ááœááºááŒá®ážáá¬ážáááºááᯠáá»áœááºá¯ááºááá±á¬áá±á«ááºááá¯ááºáá«áááºá
ááŸááºáááºážáá±á«ááºáž 1 áá±á¬ááºááᯠáá»ááºáá áºááá¯ááºáá²á· áá¬ááºááœáŸááºážáá±ážááá¯á· áá¯á¶ážááŒááºááŒá®áž á¡á²áá«ááᯠá áááºáá²á·áá«áááºá
''áá»áœááºáá±á¬áº áá¬ááºááœáŸááºážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá¬áá«''
âá¡áá¯áá±á¬á· áá±áá»á¬áá±á«áẠá¡áá¯ááºááŒá áºááŸá¬áá«â ááá¯á· áá»áœááºáá±á¬áº ááœá±ážáááááºá
áá¯ááºáá±á¬ááºáá»áẠá
áá¯ááááááºážáááºážá á¡áá¯ááºááŒá
áºáá±áá²á· á¡áá¯ááºááá¬áž á¡ááœááºá¡áá»áœá¶ááŒá
áºáá¬áááºá
áááá¯á¡ááºáá²á· á¡á¬áá¯á¶ááŒá±á¬ááœá±ááá«áá² á¡áá¬áá¬ááᯠááá¯áá
áá¯ááºáá¯ááºáá±á¬ááºááá¯á·á ááŸá
áºáááºáá±á¬ááºááŒá¬áá«áááºá ááá¯á·áá±á¬áºáááºážá á€á¡ááŒá±á¡áá±ááẠáááºáá±á¬ááºááŸá¯ááá¯á¡ááºáá»ááºáá»á¬ážááŸáá·áº áááá¯ááºáá®áá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáááºážááŸáá·áºáá±ážáá¬ááá¯á· ááœááºááœá¬ááœá¬ážááááºááŒá
áºáááºá
áá«ááᯠáá«áá¯ááºáááºááá¯á· áá¯á¶ážááŒááºáá¬ážáá¬á
ááá¬ážááᯠáá°ážáá°ááŒá®áž á¡áááºááŒá±á¬ááºážáá«á
ááááºá¡ááá·áºááŸá á€áá»áŸáá»á¬ážááŒá¬ážáá±á¬áá±áá¬ááá¬áááᯠáá»ááºááŒááºážááẠáá°áá®áá±á¬ááŒá®ážáá¬ážáá±á¬áááºááá¯áááºáá®ážáá±ážááŒá±á¬ááºáž áá»áœááºá¯ááºááá±á¬áá±á«ááºáá«áááºá áá«ááŒá±á¬áá·áº ááá·áºááœááºážááŒá®áž áá»ááºáá áºááá·áºáá±áá¬ááᯠááá·áºááœááºážá¡áá¯á¶ážááŒá¯ááŒá®áž ááá¬ážá¡áá áºáá áºáá¯ááᯠáááºáá®ážááá¯á· áá¯á¶ážááŒááºááá¯ááºáá«áááºá
| hoge_table | 350'000'000|
| tmp_hoge_table | 50'000'000|
á¡áááºá áááºááẠááá¬ážá¡áá áºááᯠá¡áááºáá±á¬áºááŒáá« á¡ááœááºá¡á á¬ážááŸáá·áº áá°áá®á¡á±á¬áẠááŒá¯áá¯ááºáá«áá áá±áᬠá á®áá¶áá±á¬ááºááœááºááŸá¯ á¡ááŒááºááŸá¯ááºážáááºáááºáž 1/7 ááá¯ááŒááºááá·áºáá«áááºá
ááá¬ážááá¯áááºáá®ážááŒá®áž á¡áááºááŒá±á¬ááºážááŒá®ážáá±á¬ááºá áááºážááᯠáá¬á
áá¬ááá¬ážá¡ááŒá
Ạá
áááºá¡áá¯á¶ážááŒá¯áá²á·áááºá á¡áᯠáááºáž 300 á
á¶áá»áááºáááºáá¬ážáá²á· ááá¬ážááᯠáá»ááá¯ááºááẠá¡á¬ážáá¯á¶ážá¡áááºááŒá±ááá·áºáááºá
ááŒááºáá±á¬ááºááŒááºáž ááá¯á·ááá¯áẠá¡á
ááºáá»ááŒááºážááẠáá»ááºááŒááºážááẠááá¯áááºážáááºááᯠáá»áœááºá¯ááºááááŸááá²á·ááŒá®áž á€áááºážáááºážááᯠá¡áá¯á¶ážááŒá¯ááẠáá¯á¶ážááŒááºáá²á·áááºá
áááºááŒááºáž
"áá±á¬ááºážááá¯ááŸá¯áá áºáᯠáá±ážááá¯á·ááŒááºáž''
INSERT INTO tmp_hoge_table SELECT FROM hoge_table create_time > 'YYYY-MM-DD HH:MM:SS';
"... "
"... "
"á¡ááº...?"
áá¯ááºáá±á¬ááºáá»áẠá
ááááºá¡ááŒá¶ááẠá¡áá¯ááºááŒá áºáááºáᯠáá»áœááºáá±á¬áºáááºáá²á·áá±á¬áºáááºáž ááá·áºááœááºážáá±á¬ááºážááá¯ááŸá¯ááᯠáá±ážááá¯á·ááŒá®ážáá±á¬ááºááœáẠá¡ááŸá¬ážá¡ááœááºážáá»á¬ážá áœá¬ áá±á«áºáá¬áá²á·áááºá MySQL á ááœáá·áºáááœáŸááºáá«áá°ážá
áá»áœááºáá±á¬áº á¡áááºážáááºáááºážáá±ááŒá®ááá¯á· áá«ááᯠáááºááá¯ááºáá»ááºáá±á¬á·áá°ážááá¯á· ááœá±ážááá¯ááºáááááºá
ááá¯ááºááŒá®áž ááœá±ážááŒáá·áºáá±á¬á· áá
áºááŒáááºáá² áá±ážá
áá¬ááœá± á¡áááºážáá»á¬ážáá±áááºááá¯áᬠááááá¯ááºááááº...
áá±áá¬áá±á·á
áºááẠá áááºá¡ááœááºáž áá¯ááºáá±á¬ááºááá·áºááá·áº áá±áá¬ááá¬áá¡ááœáẠááá·áºááœááºážáá±á¬ááºážááá¯ááŸá¯áá
áºáá¯ááᯠáá±ážááá¯á·ááẠááŒáá¯ážá
á¬ážáá²á·áááºá ááŒá
áºááœá¬ážááŒá®!
ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·ááẠáá°áá®áá±á¬áá±áá¬ááá¬áá¡ááœáẠáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠáááºáááºáá±ážááá¯á·áá«áááºá áá»áœááºá¯ááºááá¯á·ááẠáá áºáááááºááá¯ážááŸááá±áá¬ááᯠáááºááŸá¬ážááẠááá¯á¡ááºáá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠá€áá¯ááºáá±á¬ááºáá»ááºááᯠáá ááŒáááºááá·áº áááºáá¯ááºáá«áááºá
ááá¬ážáá áºáá¯á¡áááºááŒá±á¬ááºážááŒááºážá
áá¶ááá¬ážá áá«á·áááºááŸá¬ááŸááááºá á¡áá¬á¡á¬ážáá¯á¶ážá áá»á±á¬ááœá±á·ááœá¬ážáááºá
ááááá±ážáá»áẠáá»á±á¬ááºáá¯á¶ážááœá¬ážáá²á·áááºá
Batch processing speed ááá¯ážáá¬áá«áááºá
ááááºá á€áá¯ááºáááºážá ááºááẠáá áºáá¬áá®ááá·áºááŒá¬ááŒáá·áºáá²á·ááŒá®áž ááá¯á¡áá« á áááá áºááá·áºááŒá¬ááŒáá·áºáá²á·áááºá
ááŒá¿áá¬á¡á¬ážáá¯á¶ážááᯠááŒá±ááŸááºážááŒá®ážááŒá áºááŒá±á¬ááºáž áá±áá»á¬ááŒá®ážáá±á¬ááºá ááŸááºáááºážáá±á«ááºáž áááºáž 300 ááᯠáá»áá²á·áá«áááºá á á¬ážááœá²ááᯠáá»ááºááŒá®áž ááŒááºáááºááœá±ážááœá¬ážáá¬áááºáᯠáá¶á á¬ážááááºá
á¡áá»ááºážáá»á¯ááº
batch processing ááœáẠrotation processing áá»á±á¬ááºáá¯á¶ážáá±ááŒá±á¬ááºáž ááá±á¬áá±á«ááºáá²á·ááŒá®áž áááºážááẠá¡áááááŒá¿áá¬ááŒá áºáááºá áá®ááá¯áá»áá¯áž áááá¯áá¬ááá¯ááºáᬠá¡ááŸá¬ážá¡ááœááºážá á¡áá»áááºááᯠááŒá¯ááºážáá®ážá á±áá«áááºá
áá±áá¬áá±á·á áºá០ááŸááºáááºážáá»á¬ážááᯠáá»ááºááá·áºá¡áá« áá±áá¬áá¯á¶áá°ááœá¬ážááŸá¯á¡ááœááºáž áááºááᯠá ááºážá á¬ážáá±áá«ááá¬ážá MySQL ááᯠoverload ááá¯ááºáá«áá²á·á
áá±áá¬áá±á·á áºáá»á¬ážááᯠáá±á¬ááºážá áœá¬áá¬ážáááºáá¬ážáá°áá»á¬ážááẠááá¯áá²á·ááá¯á·áá±á¬ááŒá¿áá¬áá»áá¯ážááŸáá·áº ááŒá¯á¶ááœá±á·ááááºááá¯ááºáá±á áá»ááºáá²á·áá°ááœá±á¡ááœááºáá±á¬á· áá®áá±á¬ááºážáá«ážá á¡áá¯á¶ážáááºáááºááá¯á· áá»áŸá±á¬áºááá·áºáá«áááºá
áááºááŸá¯ááŸá¯á¡ááœáẠáá»á±ážáá°ážáááºáá«áááºá
á€áá±á¬ááºážáá«ážááᯠáááºááŸá
áºáááºáááºááŒá
áºá
á±á áá¬áá¬ááŒááºáááºááŒá
áºá
á± ááŸááºážáááºážáááºááŒá
áºá
á±á ááá·áºá¡ááœáẠá¡áá¯á¶ážáááºáááºááŒá
áºá
á± ááŒá±á¬ááŒáá«á áá»áœááºá¯ááºááá¯á·ááᯠá¡ááœááºáááºážááŒá±á¬ááºáááá«áááºá
source: www.habr.com