0
このように使用できますか?MAPJOINヒントとSTREAMTABLEヒントを同時に設定できますか?
select /*+ MAPJOIN(t2)*//*+ STREAMTABLE(t1)*/
t1.c1.
t2.c1
from t1
left outer join t2
on t1.c1 = t2.c1;
異なる結合キーに「STREAMTABLE」が混乱しています。
例: t3は最大のテーブル、t2はセカンダリの大きなテーブル、t1は最小のテーブルです。
select
/*+ STREAMTABLE(t2)*/
t1.c3,
t2.c2,
t3.c3
from t2
left outer join
t1
on t2.c1=t1.c1
left outer join
t3 on t2.c2=t3.c2;
もしそうならt2は、それはだt1に参加ok.ButときT2 T3に参加するとき、t2はまだのように大きなテーブルを扱う場合ならば? この状況をどのように処理できますか?
このようなヒントは一切使用しないでください。コストベースのオプティマイザがこの作業を行います。費用ベースのオプティマイザ+統計を使用します。 – leftjoin
@leftjoinこんにちは、どうすればいいですか?ハイブバージョンは0.13.xですか?私は何をすべきですか? – user5107182
アップグレード。 0.14 Hive on Tezははるかに高速で、ヒントは必要ありません。 – leftjoin