通常连接 Impla 数据库时,我们都是通过 Impyla 数据库来连接的,但是能否有办法直接通过 uri 来直接连接,并执行 SQL 呢?
1. 结合Pandas使用
from sqlalchemy import create_engine
impala_uri = 'impala://yumingmin:yumingmin@1.1.1.1:20000/test?auth_mechanism=PLAIN'
engine = create_engine(impala_uri)lijiaxiang
df = pd.read_sql("SELECT * FROM test.customers_data LIMIT 1", con=engine)
print(df)
2. 直接执行
直接使用 SQLAlchemy 来执行:
from sqlalchemy import create_engine
impala_uri = 'impala://1.1.1.1:20000/test?user=yumingmin&password=yumingmin&auth_mechanism=PLAIN'
engine = create_engine(impala_uri)
res = engine.execute("SELECT * FROM test.customers_data LIMIT 1")
print(res.fetchall())
相同的方式,我们也可以来执行 Hive SQL。