Skip to content

OraAI手动发布模型指南

适用场景

当您没有使用 dbt 项目时,需要通过手动方式构建 OraAI项目,此时无法使用 orai-cli init 或 orai-cli generate 等依赖 dbt 元数据的命令。

手动接入步骤

1. 连接数据源

  • 访问 OraAI控制台 数据源列表示意图
  • 根据向导完成数据源配置(支持 starRocks等主流数据仓库)

2. 创建项目结构

推荐目录结构示例:

text
ora-project/
├── ora.yml            # 主配置文件
├── marketing/            # 业务域模块
│   └── models/  # 语义模型目录
│       ├── customers.yml
│       └── campaigns.yml
└── finance/
    └── models/
        ├── transactions.yml
        └── accounts.yml

3. 配置 ora.yml

yaml
projects:
  - path: ./marketing                         # marketing语义模型文件根目录。
    data_source_name: data_warehouse_prod     # OraAI平台中数据源名称,必须是英文名。 
    schema: marketing                         # 数据库模式。
    database: enterprise_db                   # 数据库。
    semantic_model_paths:                     # 语义模型文件目录。
      - models

  - path: ./finance                           # finance语义模型文件根目录。
    data_source_name: data_warehouse_prod     # OraAI平台中数据源名称,必须是英文名。 
    schema: finance                           # 数据库模式。
    database: enterprise_db                   # 数据库。
    semantic_model_paths:                     # 语义模型文件目录。
      - models

语义模型开发规范

1. 客户模型示例

yaml
# marketing/models/customers.yml
name: customers
description: 营销域客户主数据
dimensions:
  - name: customer_id
    description: 客户唯一标识
    type: VARCHAR
    searchable: true  # 启用自然语言搜索
    
  - name: member_level  
    description: 会员等级(S1-S6)
    type: VARCHAR
    options: ["S1","S2","S3","S4","S5","S6"]

2. 交易模型示例

yaml
# finance/models/transactions.yml  
name: transactions
description: 财务交易事实表
measures:
  - name: amount
    description: 交易金额(含税)
    type: DECIMAL

metrics:
  - name: avg_transaction
    expr: "SUM(amount)/COUNT(transaction_id)"
    description: 笔均交易金额
    args:
      - name: date_range
        type: string
        description: 统计时间范围

部署流程(实践案例详见入门指南-发布模型菜单)

1. 认证

shell
$ orai-cli auth
 您已成功连接到 OraAI!
连接详情:
host: http://47.120.51.218:3001
api_key: ****XXXXX
凭据保存成功!

2. 验证模型配置

shell
$ orai-cli parse
🚀 开始 OraAI 模型解析...
......
🎉 所有指定的模型文件解析成功!

3. 部署到OraAI平台

shell
orai-cli deploy

最佳实践

1. 模型设计原则:

  • 按业务域划分模型文件
  • 保持字段名与数据库一致
  • 为关键字段添加 searchable: true

2. 版本控制:

  • 将配置文件纳入Git管理
  • 使用语义化版本控制模型变更

3. 增量开发:

  • 先完成核心模型部署
  • 逐步添加指标和关联关系

4. 文档规范:

  • 所有模型/字段必须包含描述
  • 枚举值需明确业务含义
  • 复杂指标需注明计算公式

该手动接入方案虽然需要更多前期配置,但可以灵活支持各类数据架构,特别适合尚未采用dbt的传统数据仓库环境。