Python pyhive:使用pyhive设置配置单元属性
我有一个复杂的配置单元查询,其中底层连接是笛卡尔积。所以我需要设置以下属性。但当我使用pyhive执行这些属性时,它无法执行。要求设置笛卡尔函数的属性时出错 set1=''SET hive.strict.checks.cartesian.product=false'Python pyhive:使用pyhive设置配置单元属性,python,hive,hiveql,pyhive,hive-configuration,Python,Hive,Hiveql,Pyhive,Hive Configuration,我有一个复杂的配置单元查询,其中底层连接是笛卡尔积。所以我需要设置以下属性。但当我使用pyhive执行这些属性时,它无法执行。要求设置笛卡尔函数的属性时出错 set1=''SET hive.strict.checks.cartesian.product=false' def connectData(query,host,port,username): conn = hive.Connection(host=host, port=port, username=username).curso
def connectData(query,host,port,username):
conn = hive.Connection(host=host, port=port, username=username).cursor()
conn.execute(query)
val=conn.fetchall()
columnNames = [a[0] for a in conn.description]
df=pd.DataFrame(data=val,columns=columnNames)
return df
def settings(query,host,port,username):
conn = hive.Connection(host=host, port=port, username=username).cursor()
conn.execute(query)
settings(set1, host, port, username)
settings(set2, host, port, username)
df = connectData(query, host, port, username)
print(df)
set2=''SET hive.mapred.mode=strict'
def connectData(query,host,port,username):
conn = hive.Connection(host=host, port=port, username=username).cursor()
conn.execute(query)
val=conn.fetchall()
columnNames = [a[0] for a in conn.description]
df=pd.DataFrame(data=val,columns=columnNames)
return df
def settings(query,host,port,username):
conn = hive.Connection(host=host, port=port, username=username).cursor()
conn.execute(query)
settings(set1, host, port, username)
settings(set2, host, port, username)
df = connectData(query, host, port, username)
print(df)
尝试如下所示的设置:
hive.connect('host', configuration={'hive.strict.checks.cartesian.product':'false'})
hive.connect('host', configuration={'hive.mapred.mode':'strict'})