gpt4 book ai didi

hadoop - 加速配置单元连接字符串值

转载 作者:行者123 更新时间:2023-12-02 20:42:31 25 4
gpt4 key购买 nike

我正在 hive 中尝试在下面的代码中尝试在字段“word”上联接两个表。这是永远的,我想知道如何才能加快速度。在一个表中,“单词”字段包含大小写字母的混合,在另一表中,则全部为大写。

Code:

set hive.exec.compress.output=false;
set hive.mapred.mode=nonstrict;


DROP TABLE IF EXISTS newTable;
CREATE TABLE newTable AS
SELECT
bh.inkey,
bh.prid,
bh.hname,
bh.ptype,
bh.band,
bh.sles,
bh.num_ducts,
urg.R_NM

from table1 AS bh
INNER JOIN table2 AS urg
ON LOWER(bh.word)=LOWER(urg.word);

最佳答案

我将基于table1用大写单词创建一个临时表。然后将这个表连接到table2而不使用任何字符串函数,因为table2.word都是大写的。除了table1和table2较大以外,较低的字符串函数还会导致查询速度变慢。

DROP TABLE IF EXISTS tmpTable;
CREATE TABLE tmpTable AS
SELECT bh.word,
bh.inkey,
bh.prid,
bh.hname,
bh.ptype,
bh.band,
bh.sles,
bh.num_ducts
from table1 AS bh;

DROP TABLE IF EXISTS newTable;
CREATE TABLE newTable AS
SELECT
tmp.inkey,
tmp.prid,
tmp.hname,
tmp.ptype,
tmp.band,
tmp.sles,
tmp.num_ducts,
urg.R_NM
from tmpTable AS tmp
INNER JOIN table2 AS urg
ON tmp.word=urg.word;

关于hadoop - 加速配置单元连接字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49324123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com