Metadata-Version: 2.4
Name: dataops-sdk
Version: 0.4.1
Summary: Python SDK for the DataOps platform.
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: pydantic<3,>=2
Requires-Dist: pydantic-core
Requires-Dist: pydantic-settings>=2.14.2
Requires-Dist: httpx2>=2.5.0
Requires-Dist: jinja2>=3.1.6
Requires-Dist: markdown-it-py[plugins]
Requires-Dist: cryptography>=49.0.0
Requires-Dist: PyYaml
Provides-Extra: runner
Requires-Dist: paramiko>4; extra == "runner"
Requires-Dist: pandas; extra == "runner"
Requires-Dist: sqlalchemy; extra == "runner"
Requires-Dist: pymysql; extra == "runner"
Requires-Dist: doris-python>=1.0.3; extra == "runner"
Requires-Dist: oracledb~=4.0.1; extra == "runner"
Requires-Dist: neo4j; extra == "runner"
Requires-Dist: kafka-python>3; extra == "runner"
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-mock; extra == "dev"
Requires-Dist: ruff; extra == "dev"

# dataops-sdk

Python SDK for the DataOps platform.

## 安装

```bash
# 基础安装
pip install dataops_sdk

# 含数据库驱动
pip install "dataops_sdk[runner]"
```

## 快速开始

```python
from dataops_sdk.session import configure
from dataops_sdk.services import service_list_tables, service_get_table_data_by_code

# 配置认证
configure(base_url="https://your-platform.com", api_key="your-api-key")

# 查询数据表
tables = service_list_tables("doris")
print(tables)
```

## 核心模块

### session — 认证配置

```python
from dataops_sdk.session import configure, get_session

configure(base_url, api_key)  # 设置全局会话
```

### schemas — 数据模型

| 模块 | 说明 |
|------|------|
| `MetaType` | 元数据类型枚举 |
| `SqlQueryParam` | SQL 查询参数 |
| `Meta` | 元数据通用模型 |
| `Datasource` | 数据源模型 |
| `DataTable` | 数据表模型 |
| `Dataset` | 数据集模型 |
| `Metrics` | 指标模型 |
| `Report` | 报表模型 |
| `Widget` | 组件模型 |
| `Workflow` | 工作流模型 |
| `Alarm` | 告警模型 |
| `Hazard` | 隐患模型 |
| `Api` | API 模型 |
| `Dict` | 字典模型 |
| `Skill` | 技能模型 |
| `Ref` | 引用模型 |

### services — 平台操作

每个服务模块对应一类实体的操作，提供 `list`、`detail` 等通用接口：

- `service_*_list` — 列表查询
- `service_*_detail` — 详情查询
- `service_*_create` — 创建
- `service_*_update` — 更新
- `service_*_delete` — 删除

## 依赖

- Python >= 3.11
- pydantic >= 2
- httpx2 >= 2.5.0
- pydantic-settings >= 2.14.2
- jinja2 >= 3.1.6
- cryptography >= 49.0.0

## 可选依赖 (runner)

- paramiko > 4 — 文件传输
- pandas — 数据分析
- sqlalchemy / pymysql / doris-python / oracledb — 关系数据库
- neo4j — 图数据库
- kafka-python > 3 — 队列驱动
