1

ケトルを介してmongodbソースからmysqlテーブルをロードしています。Mongodb テーブルには 400 万件を超えるレコードがあり、ケトル ジョブを実行すると、最初の読み込みが完了するまでに 17 時間かかります。増分ロードでも 1 時間以上かかります。コミット サイズを増やし、ジョブに割り当てるメモリを増やしてみましたが、パフォーマンスは向上しません。JSON入力ステップはデータを解析するのに非常に長い時間がかかるため、非常に遅いと思います。私は自分の変革にこれらのステップを持っています

  1. Mongodb 入力ステップ
  2. JSON 入力
  3. ストリングスカット
  4. フィールド値が null の場合
  5. 連結フィールド
  6. 値を選択
  7. テーブル出力。

postgre から抽出したときと同じ 400 万件のレコードは、mongodb よりもはるかに高速でした。パフォーマンスを向上させる方法はありますか? 私を助けてください。

ありがとう、ディープティ

4

1 に答える 1

0

ステップの複数のコピーを実行します。モンゴ入力があり、次にjson入力ステップがあり、json結果を正しく解析しているように聞こえますか? そのため、json 入力ステップのコピーを 4 つまたは 8 つ (または CPU によってはそれ以上) 使用すると、速度が向上します。

または、本当に完全なjsonを解析する必要がありますか?おそらく、正規表現などを介してデータを抽出できます.

于 2013-09-05T07:34:23.780 に答える