Skip to main content

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


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.1.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yh_olap-3.0.1-py3-none-any.whl (31.5 kB view details)

Uploaded Python 3

File details

Details for the file yh_olap-3.0.1.tar.gz.

File metadata

  • Download URL: yh_olap-3.0.1.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for yh_olap-3.0.1.tar.gz
Algorithm Hash digest
SHA256 e059c81f8b78b48d6ea38b972ad6bd9815db7ed4fd33cd50c1f6f58e5febe7f6
MD5 02b056163c4b22603ad2e050f970f940
BLAKE2b-256 56b8a6e3d353e1d85ffa13c38ca5e456979abc4e171b833604482f54b8cc207e

See more details on using hashes here.

File details

Details for the file yh_olap-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: yh_olap-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 31.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for yh_olap-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 45e25265e9445c2a8b2c587fe35f18fdf4778e419b0e3f85e113d1ace8dfff42
MD5 6d5d69da0071e6ff4b585d8ade178043
BLAKE2b-256 7226e8401cc3d4c4c4bb94160e39093ba53314844d055a4f6bb3ed8c8f78eeed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page