0
過去の負荷をかけながらチャンク内のデータを並べ替える方法を理解しようとしています。履歴負荷中にデータをチャンクにロードするSqoop
私は3年のデータを持ち、sqoopをトリガすると、すべてのデータを一度にフェッチしてHDFSをプッシュするシナリオを考えてみましょう。
私はクラスターに圧力をかけるのを避けたいのですが、上記の代わりに3年分のデータを一度に読み込むのではなく、1か月のチャンクでデータをロードするようにsqoopに指示する方法があります。
に同時に実行しているマッパーは、私は1つのマッパーは1ヶ月のデータを処理する必要はありません。私の質問は、過去1か月間のデータをマッパーに分散して、ロード中にロードプロセスを固定することです。だから理想的には、すべてのsqoopコールは36時間(3年)のすべてのデータをシングルスクープコールで取得するのではなく、一度に1カ月分のデータを持ち出すことになります。 – Shashi
は実行できません - 私は--queryを使用するように提案された36の独立したsqoops?あなたのシナリオは明確ではありません。 ..あなたが何をしたいか指定する – hlagos
これを実現するには、 '-m(または--num-mappers)'とwhere節を組み合わせて使うことができます。 'where'節は1ヶ月目のデータを表示し、その後はデータを表示しません。指定されたマッパーのうち、そのデータを転送用に分割します。 – vmorusu