私たちは、当社のスタッフが一度承認したデータベーステーブルに1000以上のレコードを書き込む必要がある製品を用意しています。この数のレコードを一度に書き込む伝統的な方法は、テーブルに直接ループまたはMySQL一括挿入することです。1000+レコードをデータベーステーブルに書き込む最も効率的な方法
これに加えて、私はCRONジョブによってチェックされているテーブルをいくつか持ち、一度に2000レコードで別のテーブルを更新します。
私は、MySQLの一括挿入(パフォーマンスにどのような影響があります)を進めるべきか、またはカフカのようなイベント処理ツールを使用する必要があるかどうかを知りたいですか?
フィードバックをお寄せください。
ありがとうございます。
何千ものレコードがそれほど長い時間を費すべきではありません。パフォーマンスの影響を測定しましたか? – ceejayoz
私は十分なリソースがないため、パフォーマンスの比較をテストしていません。ここで問題となるのは、すべてのデータを1つのテーブルに書き込んだ後に、時間の経過と共に読み取りに時間がかかることです。このテーブルはデータを読み取るために使用されるので、MySQLに固執すべきか、nosqlのために行くべきなのかなと思います。どう思いますか? –
私はあなたが不必要な最適化に飛びついていると思います。適切なインデックスが作成され、適切なハードウェアであれば、MySQLは数十億行を処理できます。どのくらいの時間がかかるかを確認するために、一括または二重挿入を実行するリソースを持っていないという考えに少しは困惑しています.NoSQLを採用したり、Kafkaを追加するよりもリソースが少なくて済みます。 – ceejayoz