You need to enable JavaScript to run this app.
导航
ByteHouse Python Driver
最近更新时间:2024.12.10 11:32:48首次发布时间:2023.08.04 16:09:50
我的收藏
有用
有用
无用
无用

警告

由于技术问题,ByteHouse Python 驱动程序目前正在进行维护和更新,此文档介绍的内容可能暂时失效。
我们建议您暂时使用开源ClickHouse Python Driver驱动程序。

ByteHouse 提供了支持 Python 数据库 API 规范 v2.0 的驱动程序。 本文将介绍如何通过 Python 驱动的方式连接并访问 ByteHouse 云数仓。
请访问 github 项目主页,获取ByteHouse Python 驱动最新的文档和发布版本。

说明

需要 Python 3.7 或更高版本的支持。

程序安装

从 PyPI 安装

可以通过如下命令,获取最新发布版本的 bytehouse-driver。

pip3 install bytehouse-driver

从 github 安装

开发版本通过如下命令安装。

pip3 install git+https://github.com/bytehouse-cloud/driver-py@main#egg=bytehouse-driver

安装依赖项

根据您的 Python 版本,您可能需要安装以下依赖项:

  1. pytz : 用于执行时区计算的 pytz 库;
  2. enum34 :用于支持 python 3.4 版本开始提供的内置枚举类。

连接与身份验证

请参考获取 ByteHouse 连接信息,了解如何通过 API_KEY的方式连接到ByteHouse。

基本用法

数据插入与数据查询

可参考下面代码样例,注意替换连接语句中的client设置中的HOSTPORTAPI_KEY字段。

from bytehouse_driver import Client

#Passing Parameters
client = Client(
 host=<your host>,
 port=19000,
 user=bytehouse,
 password=<your api_key>,
 vw="<your virtual_warehouse name>"
 )

### DDL Query
client.execute("CREATE DATABASE demo_db")
client.execute("CREATE TABLE demo_db.demo_tb (id INT) ENGINE=CnchMergeTree() ORDER BY tuple()")

### DML Query
client.execute("INSERT INTO demo_db.demo_tb VALUES", [[1], [2], [3]])

### DQL Query
result_set = client.execute("SELECT * FROM demo_db.demo_tb")
for result in result_set:
    print(result)

client.execute("DROP DATABASE demo_db")