6000 万を超えるレコードを持つ単一の大きな XML ファイルを作成する必要があります。この操作は定期的に繰り返されるため、迅速な方法が必要です。
2か所にデータがあります
- 2 つの異なるテーブルのデータベース内。
- ファイル システム上 2 つのパイプで区切られたファイル内。
現在、StaX パーサーを使用して Java で XML ファイルを作成しようとしています。
ここで、データを読み取って XML ファイルを作成するためにデータベース/テキスト ファイルを使用する必要があるかどうかを知る必要があります。
どちらがより高速なオプションになりますか?
また、そのような大規模データの作成/XMLへの変換を最適化された方法で処理する特定のAPIはありますか?
Linux コマンドを使用したファイル処理と、それがより高速なオプションである場合は、それを受け入れます。
コメントの更新
2 つの個別のファイルと DB クエリの CSV ダンプから XML 要素情報を取得できる速度はどれくらいですか? データベースで利用できるものはすべて、PIPE 分離ファイルで利用できます。そして、XML要素情報をどのように高速に取得/作成できるかが、まさにここでの質問の意図です. これはまさに、全体的な操作速度に影響を与えるものです。
マッピングの複雑さ: マッピングは 1 対多です。最初のファイルの 1 レコードは、2 番目のテキスト ファイル/テーブルの約 8000 レコードにマップされます。
コメントの更新 - > 大きな出力バッファを使用します。
了解した。データベース/ファイルから大きなチャンクでデータを読み取り、完全なチャンクを処理したらフラッシュします。しかし、データベースの読み取りまたはファイルの読み取りで行う必要がありますか?
更新 MySQL データベースから任意のツールを使用してエクスポートし、XML 形式に自動変換できますか?