Apache Doris 4.0 的 AI 功能(LLM 函数 + 向量索引)与 Cloudera CDP 7.3(或类 CDP 的 CMP 7.13 平台,如华为鲲鹏 ARM 版)融合

Apache Doris 4.0 的 AI 功能(LLM 函数 + 向量索引)与 Cloudera CDP 7.3(或类 CDP 的 CMP 7.13 平台,如华为鲲鹏 ARM 版)本身并无官方集成,但可以通过 架构协同、数据互通、安全对齐 等方式实现功能融合,构建“CMP 负责数据湖治理 + Doris 负责智能实时分析”的混合 AI 数据平台。

以下是两者融合的可行路径、关键技术点和实施建议:


一、整体融合架构

Text:

+---------------------------------------------+

|           Cloudera CMP 7 (CMP 7)            |

|  - HDFS / S3 (Data Lake)                    |

|  - Hive Metastore (统一元数据)              |

|  - Spark / Flink on YARN (批流计算)         |

|  - Ranger / Kerberos (安全认证)             |

|  - Atlas (数据血缘)                         |

+----------------------+----------------------+

                       ↑↓ (Hive Catalog / Broker Load / Spark Connector)

+---------------------------------------------+

|        Apache Doris 4.0 (独立部署)          |

|  - LLM 函数:SQL 内调用大模型               |

|  - 向量索引:支持 ANN 语义检索              |

|  - MySQL 协议:BI/应用直连                  |

+---------------------------------------------+

核心原则:Doris 不侵入 CMP 集群,作为 外部高性能 AI 分析引擎 存在。


二、关键融合能力与实现方式

1. 元数据互通:Doris 读取 CMP Hive 表(含 Kerberos

使用 Doris 2.0+ 的 External Hive Catalog,直接查询 CMP 中的 Hive 表,无需数据移动。

Sql:

-- 在 Doris 中创建 Hive Catalog(支持 Kerberos)

CREATE EXTERNAL CATALOG CMP_hive_krb

PROPERTIES (

  "type" = "hive",

  "hive.metastore.uris" = "thrift://CMP-hms-host:9083",

  "hive.metastore.sasl.enabled" = "true",

  "hive.metastore.kerberos.principal" = "hive/_HOST@EXAMPLE.COM",

  "doris.hive.catalog.kerberos.principal" = "doris/doris-node1@EXAMPLE.COM",

  "doris.hive.catalog.kerberos.keytab" = "/etc/security/keytabs/doris.keytab",

  "hadoop.security.authentication" = "kerberos"

);

✅ 应用场景:

  • 在 Doris 中对 CMP 的用户行为日志表执行 LLM_SENTIMENT(comment) 实时情感分析;
  • 对 Hive 中的商品描述字段进行 LLM_FIXGRAMMAR 清洗后入库 Doris 明细表。

2. 数据写入:CMP Spark/Flink → Doris(带 Kerberos

通过 官方 Spark/Flink Doris Connector,将 CMP 中的计算结果写入 Doris。

示例:PySpark 写入(CMP 7.3.1 + Spark 3.2

Python:

df = spark.sql("SELECT user_id, raw_text FROM hive_table WHERE dt = '2025-11-10'")

 

df.write.format("doris") \

  .option("doris.fenodes", "doris-fe:8030") \

  .option("doris.table.identifier", "ai_analytics.cleaned_feedback") \

  .option("user", "root") \

  .option("password", "") \

  .mode("append") \

  .save()

🔐 安全说明:

  • Spark 作业本身已通过 CMP 的 Kerberos 认证;
  • Doris 写入走 Stream Load(HTTP 或 MySQL 协议,需确保网络可达且 FE 开放 8030/9030 端口;
  • 若 Doris 启用 LDAP/Kerberos,需额外配置 connector 的认证参数(目前社区版 Doris 暂不支持 Kerberos for MySQL protocol,建议用 IP 白名单 + 强密码)。

3. AI 能力协同:CMP 提供数据,Doris 提供 AI 推理

步骤

CMP 角色

Doris 4.0 角色

1. 数据采集

Flume / Sqoop / Kafka → HDFS/Hive

2. 批处理清洗

Spark SQL / Data Engineering Jobs

3. 实时特征生成

Flink → Kafka

4. AI 增强分析

提供原始文本/向量数据

执行 LLM_* 函数 + 向量检索

5. 结果输出

Doris 表 → Superset/Tableau/应用

✅ 典型场景:

  • CMP 中存储千万级用户评论(Hive 表);
  • Doris 通过 Hive Catalog 直接访问,并批量执行:

Sql:

SELECT

  id,

  LLM_CLASSIFY(comment, '["投诉", "咨询", "表扬"]') AS category,

  LLM_SENTIMENT(comment) AS sentiment,

  LLM_SUMMARIZE(comment) AS summary

FROM CMP_hive_krb.default.user_comments;

  • 结果可写回 Doris 表,供 BI 实时看板使用。

4. 向量数据融合(高级场景)

若 CMP 中已有 Embedding 向量(如通过 Spark MLlib 或自定义 UDF 生成):

  • 将向量列(ARRAY<FLOAT>)写入 Hive ORC/Parquet 表;
  • Doris 通过 Hive Catalog 读取该表;
  • 在 Doris 中创建 Duplicate Key 表 + 向量索引,实现高效 ANN 检索。

⚠️ 注意:Hive 不原生支持 ARRAY<FLOAT> 的高效向量操作,建议在 Spark 中预处理后写入 Doris 明细表以获得最佳性能。


三、安全与运维对齐(Kerberos 环境)

CMP Base 7.3.1 + Kerberos 环境下部署 Doris 4.0:

组件

配置要点

操作系统

RHEL/CentOS 7/8,与 CMP 节点一致

Kerberos 客户端

安装 krb5-workstation,复制 /etc/krb5.conf

Doris 主体

创建 doris/hostname@REALM,生成 keytab

Hive 访问

在 CREATE CATALOG 中指定 principal 和 keytab 路径

网络策略

开放 CMP ↔ Doris 节点间的 8030(FE)、9060(BE)、9020(BE RPC)等端口


四、为什么不推荐将 Doris 打包为 CMP Parcel

尽管技术上可手动制作 .parcel 包(见社区实验方案),但存在严重问题:

  • ❌ Doris 4.0 的 LLM 函数依赖外部 HTTP 服务,CM 无法管理其生命周期;
  • ❌ 向量索引需要特定 JVM 参数和内存配置,与 CDH/CMP 默认环境冲突;
  • ❌ 无官方支持,升级维护困难;
  • ❌ CMP Public Cloud 完全禁止自定义 Parcel。

推荐做法:独立部署 Doris,通过标准协议(JDBC/HTTP/Hive)与 CMP 交互。


五、总结:融合价值

能力

CMP 7

Doris 4.0

融合后价值

数据湖存储

✅ HDFS/S3

统一可信数据源

批流计算

✅ Spark/Flink

复杂 ETL 与特征工程

实时分析

⚠️ Impala/Kudu 延迟高

✅ MPP + 列存

亚秒级响应

AI 原生能力

❌ 需外接 Python/MLflow

✅ LLM 函数 + 向量索引

SQL 内完成智能分析

安全治理

✅ Ranger/Kerberos/Atlas

⚠️ 基础 RBAC

元数据血缘贯通(需手动映射)

🎯 最终目标
CMP 做“数据底座”,Doris 4.0 做“AI 分析引擎”,二者通过开放协议协同,构建企业级智能数据平台。

posted on 2025-11-11 13:47  肥仔鱼  阅读(14)  评论(0)    收藏  举报