YH_OLAP的API
Project description
yh_olap
永辉 OLAP 数据查询与下载工具包。
安装
pip install yh_olap
CLI 使用
登录
# 登录并保存凭据
yh_olap login login -u <用户名> -p <密码> -o <OTP密钥> --save --default
# 列出已保存的用户
yh_olap login list
# 删除用户凭据
yh_olap login logout <用户名>
yh_olap login logout --all # 清除所有
执行 SQL
# 执行 SQL(默认 Impala 引擎)
yh_olap exec run "SELECT * FROM table LIMIT 10"
# 指定引擎
yh_olap exec run "SELECT 1" -e hive
yh_olap exec run "SELECT 1" -e clickhouse
# 从文件执行
yh_olap exec file query.sql
# 不等待执行完成
yh_olap exec run "SELECT * FROM large_table" --no-wait
获取结果
# 获取执行结果
yh_olap result get <request_id>
# 指定输出格式
yh_olap result get <request_id> -f json
yh_olap result get <request_id> -f csv
# 保存到文件
yh_olap result get <request_id> -o result.json
# 限制显示行数
yh_olap result get <request_id> -l 50
查询(执行+获取结果)
# 执行 SQL 并直接获取结果
yh_olap query run "SELECT * FROM table LIMIT 10"
# 指定引擎和格式
yh_olap query run "SELECT 1" -e hive -f csv
# 保存结果
yh_olap query run "SELECT * FROM table" -o result.json
下载
# 下载执行结果为 Excel
yh_olap download result <request_id> -o output.xlsx
# 执行 SQL 并下载
yh_olap download query "SELECT * FROM table" -o output.xlsx
# 从文件执行并下载
yh_olap download file query.sql -o output.xlsx
查看可用引擎
yh_olap engines list
交互模式
yh_olap i
交互模式内置命令:
| 命令 | 说明 |
|---|---|
help |
显示帮助 |
exit / quit |
退出 |
engine <name> |
切换引擎 |
engines |
列出可用引擎 |
result <id> |
获取结果 |
download <id> [file] |
下载结果 |
<SQL> |
执行 SQL |
全局选项
yh_olap -v # 显示版本
yh_olap -h # 显示帮助
Python API 使用
from yh_olap import Client
from yh_olap.engine import Impala, Hive, Clickhouse
# 创建客户端并登录
client = Client()
client.login(username="xxx", password="xxx", otp_key="xxx")
# 执行 SQL
request_id = client.execute("SELECT * FROM table LIMIT 10", engine=Impala)
# 获取结果
result = client.sql_result(request_id, engine=Impala)
print(result["list"]) # 数据列表
print(result["columnNameList"]) # 列名
# 下载 Excel
client.download_excel(request_id, save_path="output.xlsx", engine=Impala)
# 切换引擎
client.execute("SELECT 1", engine=Hive)
client.execute("SELECT 1", engine=Clickhouse)
配置文件
用户凭据保存在 ~/.yh_olap/config.json:
{
"users": {
"<用户名>": {
"password": "<base64编码>",
"otp_key": "<base64编码>",
"saved_at": "2026-04-05T22:31:56"
}
},
"default_user": "<用户名>"
}
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
yh_olap-3.0.2.tar.gz
(22.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
yh_olap-3.0.2-py3-none-any.whl
(31.6 kB
view details)
File details
Details for the file yh_olap-3.0.2.tar.gz.
File metadata
- Download URL: yh_olap-3.0.2.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82f14e0af747300bd7543f11cbd74dbddfc267fe3c09d662a2f120f71f6f0b1a
|
|
| MD5 |
4f49551c029cfb7a9e4bbe19b1ff8db9
|
|
| BLAKE2b-256 |
aebe5a6961a3ee730dbf46a86a89b2a6173a5e98fb3a4db095f18cb69db15315
|
File details
Details for the file yh_olap-3.0.2-py3-none-any.whl.
File metadata
- Download URL: yh_olap-3.0.2-py3-none-any.whl
- Upload date:
- Size: 31.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90294d4c114a1be27f0e802dd3ec224d41a98a912099f42772db2d914394f8ee
|
|
| MD5 |
87c33f4d03e933146ae101a7d5dbb4ae
|
|
| BLAKE2b-256 |
44accafd6012253a25b2273f1ce991da9fb4eb182274c30c979c991f784362ce
|