使用python连接phoenix的几种方式
来源于 https://blog.csdn.net/lhmood/article/details/79557408
使用python连接phoenix的几种方式
文章目录
使用python连接phoenix的几种方式
phoenixdb
jaydebeapi
主要有以下几个python package可以用来连接phoenix,其余的待补充:
jaydebeapi
phoenixdb
phoenixdb
需要先启动queryserver(python queryserver.py start), 同时在hbase-site.xml中指定zookeeper的连接地址,否则默认连接是本地2181端口
使用pip install phoenixdb,具体示例如下:
1 import phoenixdb 2 import phoenixdb.cursor 3 4 database_url = 'http://localhost:8765/' 5 conn = phoenixdb.connect(database_url, autocommit=True) 6 7 cursor = conn.cursor() 8 cursor.execute("CREATE TABLE users (id INTEGER PRIMARY KEY, username VARCHAR)") 9 cursor.execute("UPSERT INTO users VALUES (?, ?)", (1, 'admin')) 10 cursor.execute("SELECT * FROM users") 11 print cursor.fetchall() 12 13 cursor = conn.cursor(cursor_factory=phoenixdb.cursor.DictCursor) 14 cursor.execute("SELECT * FROM users WHERE id=1") 15 print cursor.fetchone()['USERNAME']
jaydebeapi
经热心网友指出,需要先开启JVM, 连接字符串也有细微调整
使用pip install JayDeBeApi,具体示例如下:
1 import jaydebeapi 2 conn = jaydebeapi.connect('org.apache.phoenix.jdbc.PhoenixDriver', \ 3 'jdbc:phoenix:my_zk_server:2181',[ '', ''], 4 '/workspace/service/phoenix-client/phoenix-client.jar') 5 curs = conn.cursor() 6 curs.execute('select * from your_table limit 1') 7 curs.fetchall()
用空常来坐坐
https://www.cnblogs.com/alexgl2008/