一般に、小規模なクエリ (数時間ではなく数分でインタラクティブな方法で結果が期待される) の場合、Tez のパフォーマンスが高く、バッチ クエリ (数時間かかる) の場合、実行エンジンとして MR のパフォーマンスが高いというのは本当ですか? それとも、クエリの種類に関係なく、Tez が常に最良の選択であると言えますか?
質問する
3451 次
1 に答える
5
Tez は、小規模 (低レイテンシー) と大規模 (高スループット) の両方のワークロードの処理を簡素化します。クエリが複雑になるほど、TEZ のメリットが大きくなります。単一のマップ ステップで構成される単純なクエリの場合、最適化するものが何もないため、おそらくまったく違いはありません。TEZ はクエリを単一のジョブの DAG (有向非巡回グラフ) として表し、耐久性のあるストレージへの読み取り/書き込み、各マップからの出力の並べ替えなどの不要な手順を排除し、コンテナーの再利用も可能にします。Tez は常に最良の選択です。単純なクエリの場合、MR よりも悪くはなく、複雑なクエリの場合ははるかに優れています。MR と TEZ では、さまざまな構成パラメーターのセットを調整する必要があります。多くの TEZ 固有と多くの MR 固有があります。TEZ を選択すると、最適化するものが何もない場合でも、生活が簡素化されます。また、Hive-on-MR は、Hive 2 リリースで非推奨になりました。
于 2016-08-25T10:35:33.010 に答える