pyhive: установка свойств улья с помощью pyhive - PullRequest
0 голосов
/ 20 февраля 2019

У меня сложный запрос на улей, в основе которого лежат декартовы произведения.поэтому мне нужно установить следующие свойства.но когда я выполняю эти свойства, используя pyhive, он не может выполнить.я получаю сообщение об ошибке с просьбой установить свойства для декартовой системы.

set1 = '' 'SET hive.strict.checks.cartesian.product = false' ''

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)

1 Ответ

0 голосов
/ 23 июля 2019

Попробуйте настройки, как показано ниже:

hive.connect('host', configuration={'hive.strict.checks.cartesian.product':'false'})
hive.connect('host', configuration={'hive.mapred.mode':'strict'})
...