基于开发者空间OpenGauss数据库列存引擎的分析与使用

1 概述

1.1 案例介绍

OpenGaussDB的Cstore列存引擎是用于OLAP分析型业务场景,主要应用于大数据量的数据分析,数据汇聚运算,用于决策业务系统使用。但近年来由于AI应用和大模型的发展。AI训练需要大量数据为基础,而AI的训练数据的读取和计算特点都属于OLAP业务场景。故AI使用的非结构向量数据通常也采用列存数据库进行存储。

通过实际操作,让大家深入了解如何利用OpenGaussDB开发并部署一个AI服务Dify。在这个过程中,大家将学习到从OpenGauss官方网站使用Cstore和DataVec数据引擎等一系列关键步骤,从而掌握列式存储表的基本使用方法,体验其在应用开发中的优势。

1.2 适用对象

  • 企业
  • 个人开发者
  • 高校学生

1.3 案例时间

本案例总时长预计30分钟。

1.4 案例流程

1bffead9d6728b8f21b713686d553010.png

说明:

  1. 领取空间开发桌面,登录云主机;
  2. 在云主机终端进入OpenGaussDB;
  3. 进入开发者空间部署OpenGaussDB数据库之列存引擎和向量引擎应用;

1.5 资源总览

资源名称规格单价(元)时长(分钟)
开发者空间-云主机ARM架构, | 4 vCPUs | 8 GB | OpenEuler 22.03 Server定制版 (40GB)免费30

最新案例动态,请查阅 基于开发者空间OpenGauss数据库列存引擎的分析与使用 。小伙伴快来领取华为开发者空间,进入云主机桌面版实操吧!

2 CSTORE列存引擎

2.1 开发者空间配置

面向广大开发者群体,华为开发者空间提供一个随时访问的“开发桌面云主机”、丰富的“预配置工具集合”和灵活使用的“场景化资源池”,开发者开箱即用,快速体验华为根技术和资源。

如果还没有领取开发者空间云主机,可以参考免费领取云主机文档领取。

领取云主机后可以直接进入华为开发者空间工作台界面,点击打开云主机 > 进入桌面连接云主机。

a1aae6ff53aac98855ef597dd6899967.png

552fc96c3b58a06e294e4a760ae719e3.PNG

2.2 启动OpenGaussDB实例并登录

本案例中,使用OpenGaussDB开发平台,完成SQL的编程和自定义函数等多种功能。

基于之前案例《基于开发者空间部署OpenGauss主备集中式数据库系统》。在云主机部署OpenGaussDB实例。并启动数据库服务。

进入OpenGaussDB的安装目录的bin文件,该案例云主机环境中安装目录在环境变量$GAUSSHOME中,读者根据自己云主机安装目录进行操作修改。

cd $GAUSSHOME/bin

初始化数据库实例,初始化数据库目录在当前目录下data,设置节点名称和初始化用户密码。如下所示

./gs_initdb -D data --nodename=n1 -w GaussDB@123

bc4c9086cc4dbb1598050419cec476da.png

以单节点模式启动数据库实例,并在当前目录下输出日志文件logfile

./gs_ctl start -D data -Z single_node -l logfile

0f652e9f9eee07b00cb8516f34ad694d.png

用gsql客户端工具,进入OpenGaussDB数据库。参数 -a表示追加、-r表示使用readline

./gsql -d postgres -ar

17fd3a6e9547f144785194c54de16c3d.png

2.3 Cstore 列式存储

f9cbef9ff363a1d89fe6b915b931ce9d.png

与行存储格式不同,列式存储以每个字段的数据为单元进行存储,由于每个存储单元的数据都属于表的一个字段,所以该单元里的数据类型是一样的,更有利于压缩存储,并且面向大数据表时,如果一个select查询的投影只有大表的少量字段,则列存表在查询性能上更有优势,所以Cstore引擎更适合OLAP分析型业务场景。由于列存引擎多数用于OLAP,所以其在聚合函数和MERGE操作上有更多的优化空间,其性能也远比行存效率高。

Cstore列存储的主体数据文件以CU为I/O单元,只支持追加写操作,因此cstore只有读共享缓冲区。CU间和CU内的可见性由对应的CUDESE表(astore表)决定,因此其可见性和并发控制原理与行存储astore基本相同。

cstore列存储格式整体框架如下:

06c128504329ad5e5e51431e5b406171.png

2.3.1 Cstore的存储单元结构

如图所述,cstore的存储单元是CU,分别包括以下内容。

77885b019d7d9c4c1d6716fb69ddd8ae.png

  • CU的CRC值,为CU结构中除CRC成员外,其他所有字节计算出的32位CRC值。
  • CU的magic值,为插入CU的事务号。
  • CU的属性值,为16位标志值,包括CU是否包含NULL行、CU使用的压缩算法等CU粒度属性信息。
  • 压缩后NULL值位图长度,如果属性值中标识该CU包含NULL行,则本CU在实际数据内容开始处包含NULL值位图,此处存储该位图的字节长度,如果该CU不包含NULL行,则无该成员。
  • 压缩前数据长度,即CU数据内容在压缩前的字节长度,用于读取CU时进行内存申请和校验。
  • 压缩后数据长度,即CU数据内容在压缩后的字节长度,用于插入CU时进行内存申请和校验。
  • 压缩后NULL值位图内容,如果属性值中标识该CU包含NULL行,则该成员即为每行的NULL值位图,否则无该成员。
  • 压缩后数据内容,即实际写入磁盘的CU主体数据内容。

每个CU最多保存对应字段的MAX_BATCH_ROWS行(默认60000行)数据。相邻CU之间按8KB对齐。

c2885f7aa12f3d5c6f9a17dd997c0b84.png

2.3.2 列存表限制与相关参数

限制:

  • 列存表不支持数组。
  • 列存表的数量建议不超过 1000 个。
  • 列存表的表级约束只支持 PARTIAL CLUSTER KEY,不支持主外键等表级约束。
  • 列存表的字段约束只支持 NULL、NOT NULL 和 DEFAULT 常量值。
  • 列存表不支持 alter 命令修改字段约束。
  • 列存表支持 delta 表,受参数 enable_delta_store 控制是否开启,受参数 deltarow_threshold 控制进入 delta 表的阀值。

列存相关参数:

  • cstore_buffers

列存所使用的共享缓冲区的大小,默认值:32768KB

  • partition_mem_batch

指定缓存个数,为了优化对列存分区表的批量插入,在批量插入过程中会对数据进行缓存后再批量写盘。默认值:256

  • partition_max_cache_size

指定数据缓存区大小,为了优化对列存分区表的批量插入,在批量插入过程中会对数据进行缓存后再批量写盘。默认值:2GB

  • enable_delta_store

为了增强列存单条数据导入的性能和解决磁盘冗余问题,是否需要开启列存 delta 表功能,与参数 DELTAROW_THRESHOLD 配合使用。默认值:off

2.3.3 cstore表实践

语法格式

CREATE TABLE table_name 
    (column_name data_type [, ... ])
    [ WITH ( ORIENTATION  = value) ];

参数说明:

table_name:要创建的表名。

column_name:新表中要创建的字段名。

data_type:字段的数据类型。

ORIENTATION:指定表数据的存储方式,即行存方式,列存方式,该参数设置成功后就不再支持修改。

取值范围:

ROW:表示表的数据将以行式存储。行存储适合于OLTP业务,适用于点查询或者增删操作较多的场景,目前使用ASTORE,USTORE作为行存储引擎。

COLUMN:表示表的数据将以列式存储。列存储适合于数据仓库业务,此类型的表上会做大量的汇聚计算,且涉及的列操作较少,目前使用Cstore作为列存储引擎。

首先在postgres.conf里添加参数enable_delta_store = on

(postgres.conf在数据目录data下,data目录根据initdb初始化设置的路径有关,一般在$GAUSSHOME/bin目录下)

0cc9f1b4ba89467ecdc25bf7266d7dba.png

然后重启数据库服务

cd $GAUSSHOME/bin
gs_ctl -D data/ restart
gsql -d postgres -ar
-- 如果gs_ctl启动数据库服务时,找不到对应动态库,则添加下环境变量
export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH

不指定ORIENTATION参数时,表默认为行存表。例如:

CREATE TABLE customer_test1
(
  state_ID   CHAR(2),
  state_NAME VARCHAR2(40),
  area_ID    NUMBER
);
\d+ customer_test1
--删除表
DROP TABLE customer_test1;

4cdaaf895bfedb9d93f92cd9ac6ce9ff.png

创建列存表时,需要指定ORIENTATION参数。例如:

CREATE TABLE customer_test2
(
  state_ID   CHAR(2),
  state_NAME VARCHAR2(40),
  area_ID    NUMBER
)
WITH (ORIENTATION = COLUMN);
\d+ customer_test2

--删除表
DROP TABLE customer_test2;

ad065f38f11fb6a7e75264cc6cc924af.png

行存表与列存表对比实践:

\dt
-- 创建行存表,压缩和不压缩的两张表
create table test_t(id serial primary key ,col1 varchar(8),col2 decimal(6,2),create_time timestamptz not null default now());
\dt+
-- 创建列存表
create table column_t(id serial,col1 varchar(8),col2 decimal(6,2),create_time timestamptz not null default now()) with (orientation=column );
create table column_th(id serial,col1 varchar(8),col2 decimal(6,2),create_time timestamptz not null default now()) with (orientation=column ,compression=high);
create table column_tm(id serial,col1 varchar(8),col2 decimal(6,2),create_time timestamptz not null default now()) with (orientation=column ,compression=middle);
\dt+
-- 列存表添加局部聚簇存储列
alter table column_t add PARTIAL CLUSTER KEY(id);
\d+ column_t

456817386808f3dcecab53ec3442b283.png

580cffb2b982713b948f4ab01b54926e.png

8d4402b7a8f4815f73a56359bd2df822.png

磁盘使用空间对比:分别向两个表插入100万条数据,占比磁盘大小对比

\timing
insert into column_t select generate_series(1,1000000),left(md5(random()::text),8),random()::numeric(6,2);
insert into column_th select generate_series(1,1000000),left(md5(random()::text),8),random()::numeric(6,2);
insert into column_tm select generate_series(1,1000000),left(md5(random()::text),8),random()::numeric(6,2);
insert into test_t select generate_series(1,1000000),left(md5(random()::text),8),random()::numeric(6,2);
\dt+

0a252b7a5ff2e3e46736c638aee27a77.png

列存表开启的压缩级别越高占用磁盘空间越少。

列存表占用磁盘空间比行存表占用磁盘空间少近5~7倍。

DML对比:查找单列

select col1 from test_t where id>=100010 and id<100020;
select col1 from column_t where id>=100010 and id<100020;

e7e6276fe41c1a0db87eb08b52522a1c.png

DML对比:随机查找

select col1 from test_t limit 10;
select col1 from column_t limit 10;

9684eca9ba7c8b561e8a5c4575ae8906.png

DML对比:select * 查询对比,行存表比列存表快近5倍

select * from test_t limit 10;
select * from column_t limit 10;

3d7edc71e4480f7e17a161391a64159b.png

DML对比:Update操作,列存比行存快近12倍

update test_t set col1=col1;
update column_t set col1=col1;

be9d797ee4ad150d906aeebe50da4abf.png

结论:

列存表比行存表在磁盘空间占用上节省近 5~7 倍。

查询指定字段,列存表比行存表慢约 4 倍。(可能是数据解压缩,因为数据都在缓存中,行存表没有压缩,列存表数据有压缩,查询时需要解压缩耗时,数据量越大,解压数据耗时越多)

select * 的方式,列存表比行存表慢 80%。

默认压缩方式批量导入数据,列存表比行存表快 100%。

注:

目前AI和大模型训练,需要大量数据投喂,所以用于存储多维向量非结构化数据的数据库成为发展重点。而AI运算多为浮点数据,主要用于相似性搜索。比如在高维空间里找最近的邻近数据,通常只涉及向量字段和少量过滤条件。这对于ai大模型训练时的大规模和高性能相似性搜索决定其数据存储必然是列存引擎。列存数据库在高维数据的读取效率、计算密集性以及存储成本有着比行存天然的优势。

AI和大模型训练数据,具备特点:

  • 只读取所需的部分列(列存极大减少i/o操作量)。
  • 同质数据的高效数据压缩(更小的存储空间和更快的磁盘i/o)。
  • 向量化计算和SIMD并行计算优化,需要批处理同列数据,列存引擎在此方面加速了核心的相似性计算(距离计算,内积计算)。
  • 列存更适合过滤和聚合运算,加速了带过滤条件的混合查询,也是AI训练使用数据时常用查询操作。
  • 向量数据库的查询模式本质上是OLAP分析型业务,特点通常是读密集型,写入与更新操作相对较少。

3 DataVec向量数据库引擎

openGauss DataVec 向量数据库是一个基于openGauss的向量引擎, 提供向量数据类型的存储、检索。在处理大规模高维向量数据时,能够提供快速、准确的检索结果。适用于智能知识检索、 检索增强生成 RAG(Retrieval-Augmented Generation) 等各种复杂应用场景的智能应用。

DataVec目前支持的向量功能有:精确和近似的最近邻搜索、L2距离&余弦距离&内积、向量索引、向量操作函数和操作符。作为openGauss的内核特性,DataVec使用熟悉的SQL语法操作向量,简化了用户使用向量数据库的过程。

3.1 特性描述

DataVec能够无缝对接自研大模型。通过嵌入技术将非结构化数据(如文本、图像等)转换为向量数据,DataVec为之提供存储和检索能力。嵌入是一种将非结构化数据映射到向量空间的技术,使得相似文本、图像在向量空间中的距离相近,从而提高检索的准确性和效率。

此外,DataVec还支持鲲鹏指令集加速,实现毫秒级响应。鲲鹏指令集是华为自主研发的一套高性能计算指令集,能够显著提升数据处理和计算的效率。通过利用鲲鹏指令集,DataVec可以在处理大规模向量数据时,提供更快的响应速度和更高的处理能力。

在实际应用中,DataVec可以广泛应用于各种需要高效向量检索的场景。例如,在推荐系统中,DataVec可以根据用户的历史行为和偏好,快速找到与用户兴趣相似的内容,从而提供个性化的推荐。在图像检索中,DataVec可以通过图像特征向量,快速找到与查询图像相似的图片。在自然语言处理(NLP)中,DataVec可以通过文本嵌入,快速找到与查询文本语义相似的文档。

3.2 架构设计

3.2.1 SQL层
  • Embedding:支持与DeepSeek、Qwen、盘古大模型对接,将高维数据转化为向量。
  • 混合查询:基于RBO生成标量和向量混合的查询,支持大规模标签的过滤查询能力以及基于过滤率的向量查询策略。
  • 向量计算:通过鲲鹏SVE/SME指令优化的距离计算如欧氏距离、余弦距离等。
3.2.2 存储引擎层
  • 向量存储:支持单页最高64000维向量数据存储
  • 向量索引:支持多种高效ANN索引。
3.2.3 硬件加速层

基于鲲鹏Boostkit量化压缩、向量指令集等软硬结合技术加速检索。

BoostKit加速:openGauss DataVec 深度结合鲲鹏硬件,通过量化压缩算法、Rerank精排、向量化指令加速等软硬协同技术,加速向量检索进程。

d129e6dfa6c500e97b82520c5fd481a7.png

3.2.4 PQ量化压缩

乘积量化(Product Quantization, PQ)是一种基于高效压缩高维向量的方法,适用于大规模数据集的相似度搜索。通过将高维向量分割成为多个低维子向量,并对每个子向量进行独立聚类,将原始向量表示为一系列质心,从而显著减少内存使用和提升检索速度。

3.2.5 PQ码本训练

训练阶段:将向量空间按照维度划分成若干子空间,然后再每个子空间采用聚类方法得到N个中心点,最后分段底库向量和分段query向量与分段聚类中心点进行距离求解,进而获得底库索引表和query距离表。流程如下

  • step1:原始特征向量进行数据切分,切分后维度为N × M,其中N维底库元素的数量,M维切分的段数。
  • step2:对切分数据进行K-Means据类,一般选择28 = 256个聚类中心,聚类后的训练码维度维K × M,K维聚类中心的个数。
  • step3:底库切分向量和训练码本进行IP或者L2距离求解获得距离值,选择距离值中最小的据类中心索引,进而生成底库向量编码表,其维度为N × M。
  • step4:对query向量进行切分,执行与step3相同的操作,生成query向量距离表,其维度为K × M。

f2fef705c26be4351f3dc55c0bc5d0ed.png

3.2.6 PQ检索

检索阶段:通过训练阶段生成的底库索引表和query距离表,进行查表进而获得query向量与底库向量之间的距离。仅需通过M次查表和M次相加,即可得到query向量和任一底库向量之间的距离。

3b70b43851cecb03d510296cbecd6f3c.png

3.2.7 分层导航+PQ融合索引

将PQ的查表法和分层导航索引结合在一起,用查表法来代替向量距离计算,进而提高检索性能,在索引构时,并行构建分层导航图和PQ索引。在检索阶段,对0层以上的图求解query向量和图中节点之间的距离时采用Flat求解器求解,这样可以保证为第0层提供较好的入口节点。同时,顶层节点数较小也不会花费较长时间。在第0层进行检索时,采用PQ求解器的码本来代替距离求解,极大提高了计算效率。

为了进一步提高检索精度,对采用PQ查表法获取的候选集,进行二级精排,通过Flat求解器更新候选集中元素的距离,此时更新的距离为候选集向量与query向量之间的真是距离。然后对更新距离后的候选集进行二次更新,输出最终TopK结果。

3.2.8 向量指令集加速

具体来说,鲲鹏指令集包括一系列优化的指令,如NEON指令和内联汇编,这些指令能够加速向量运算、数据预取和流水线处理。通过利用鲲鹏处理器的硬件加速特性和优化的指令集,ANN算法能够在处理大规模数据集时显著提高性能和效率。

3.2.9 标题向量混合查询

DataVec还能够同时处理标量数据(如数值、类别)和向量数据(如文本、音视频)。这种混合查询的支持使得用户可以在同一个查询中结合不同类型的数据,从而实现更复杂和精细的分析。

0099ef00cd05507d2cd50f5a4a35dcc8.png

  • SQL Join :支持相似性搜索JOIN关系型数据。
  • 复杂、融合SQL:
  • 支持所有类型的工作负载和数据模型:Graph, Text, JSON, Spatial, Relational, etc。
  • 支持所有SQL,包括复杂的运算和功能:Window analytic functions, stored procedures, aggregation。
  • 与向量搜索组合成复杂融合的SQL:
    • 初始按照标量过滤条件生成过滤位图信息,通过ANN检索算法获取向量数据,将同时满足位图过滤和向量检索的数据返回,否则增大候选集再次检索。
3.2.10 支持原地更新引擎

ANN索引页面中在每个Element Tuple尾部附加xmin和xmax字段,从而支持原地更新引擎。这些字段在索引构建和查询过程中起到关键作用,确保数据的可见性和一致性。在实际实现中,插入新数据时系统会记录当前事务ID到xmin字段;在删除数据时系统会更新xmax字段。原地更新引擎采用原位更新的方式极大的节约了空间,将回滚段、数据页面分离存储,具备高效、平稳的IO能力。

38c6e6760485e3a7ec098b9770d7df27.png

3.2.11 并行构建索引

ANN支持并行构建索引,通过将数据集分成若干个子集分配到不同工作线程上,在每个线程上独立计算并将各线程结果合并形成最终全局索引,这极大地提升了处理大规模数据集的效率。

  • 数据分片:数据按照工作线程数划分,切分为若干子集。
  • 并行处理:leader线程创建Bgworker,每个Bgworker并行扫描各个数据子集,计算向量之间距离加入候选集。
  • 结果合并:leader线程合并所有线程结果并进行排序,然后持久化到页面上。

3b5e99c79e0aea8619dbe0389f198b56.png

3.3 openGauss DataVec + Dify搭建智能助手平台

在当今数字化和智能化的时代,大语言模型(LLM)的应用正以前所未有的速度改变着各个领域的工作方式和用户体验。Dify 作为一个开源的大语言模型应用开发平台,为开发者们提供了便捷且强大的工具,助力构建从基础智能体到复杂人工智能工作流程的各类大语言模型应用。其核心优势在于集成了检索增强(RAG)引擎,通过对海量数据的智能检索与分析,能够精准地为大语言模型提供相关信息,极大地提升模型输出的准确性和相关性。 本文着重介绍如何部署Dify,并使用openGauss DataVec向量数据库作为RAG引擎语料库,从而搭建出高效智能的助手平台。

Dify部署

Dify源码地址:https://github.com/langgenius/dify/archive/refs/tags/1.1.3.tar.gz

配置参数

在获取源码压缩包后,需要创建特定目录并解压源码。具体操作如下:

sudo mkdir /usr/local/dify
sudo chown developer:developer /usr/local/dify/
cd /usr/local/dify/ 
git clone https://gitee.com/dify_ai/dify.git

接下来的关键步骤是配置环境变量。在此过程中,需要修改.env文件,将VECTOR_STORE设置为opengauss。执行以下命令进行文件复制和编辑:

cp .env.example .env
vim .env

8a8cd3011e4a59bdbe648853dcc825ef.png

完成上述配置后,执行以下命令,系统将自动拉取对应的Docker镜像,并启动Dify服务。

docker-compose up -d

如果Dify拉取对应的镜像失败,请查阅Dify在Linux本地部署方法。

容器启动完毕后,为了确保各项服务均正常运行,可以执行docker ps命令。若一切顺利,会有类似下图所示的运行状态。

7c61755b233e237cee207e38ff35cd18.png

后面则是Dify的功能应用,此案例主要是Difty用opengauss存储向量数据示例。Dify的AI集成服务不属于本案例的重点内容,故读者可以自行上网查阅Dify相关运用文档与资料。

DataVec向量数据库引擎具体示例见OpenGauss官方文档:

https://docs.opengauss.org/zh/docs/latest/docs/DataVec/openGauss-Dify.html

相关推荐

鸿蒙案例上新啦 | 购物、听歌、健身:15个模板带你一键激活社交娱乐

页面层级如何组织、跨页共享状态如何同步、列表与详情及个人中心如何形成稳定闭环。鸿蒙开发实践中心将这些高频消费与互动场景沉淀为可参考的标准模板,提供从业务架构到界面实现的快捷实践入口。更多实战案例欢迎前往鸿蒙开发实践中心案例中心查看并开启云端体验。

华为云官方博客 338

鸿蒙案例上新啦 | 出门打车、到家上课:25个模板带你一屏打通日常生活

如何合理拆分页面组件、如何建立单一可信的状态源、如何让用户在每一步操作中都获得明确反馈。鸿蒙开发实践中心以标准化的应用与元服务模板为入口,将清晰的业务架构与可复用的代码结构直观呈现。不妨立即挑选一个感兴趣的方向进入云端环境,从页面布局、组件封装、状态管理到路由组织,亲手跑通你的鸿蒙实战项目。

华为云官方博客 325

LakeAgent:DWS数据仓库的第二大脑,告别 “翻译式运维”,迈入智能自治时代

和普通 SQL 改写工具不同,LakeAgent 自动做多方案代价对比,主动规避负优化陷阱:补充分区键过滤实现剪枝,扫描分区由 37 收敛至 1,执行代价从 758.28 降至 113.74;未来的数据仓库,将不止能算、能存,更能看懂自己、诊断自己、理解自己。长久以来,数仓的智能都依附于人:信号需要人解读,瓶颈需要人研判,经验困在个体里,无法随底座永续生长。CPU 高、CPU 告警、CPU 诊断、CPU 使用率过高、CPU 满。语法、错误码、计费、性能调优、最佳实践、故障处置等全场景内容。

华为云官方博客 555

如何使用RDS Supabase后端BaaS能力:文件存储(File Storage)

• product-images(公开桶,允许公共读取):策略名称"Public read for product-images",允许SELECT,目标角色anon,策略定义bucket_id = 'product-images'。上传/删除需另配INSERT/DELETE策略,详见SQL。• product-specs(私有桶,仅认证用户访问自己的文件夹):建议拆为上传、读取、删除三条策略,策略定义均为 bucket_id = 'product-specs' 且仅限本人文件夹(详见下文 SQL)。

华为云官方博客 476

如何使用RDS Supabase后端BaaS能力:实时订阅与推送(Realtime)

Realtime 把数据库的每次变更同步到客户端:表里增、删、改一行,订阅者无需刷新页面或主动请求即可秒级收到。三大能力各司其职:• Postgres Changes — 监听表的 INSERT/UPDATE/DELETE,变化即通知• Broadcast — 客户端之间直接互发,适合瞬时通知、协同编辑• Presence — 跟踪频道里“谁在线”典型场景有实时数据展示(订单、库存、监控指标即时刷新)、即时通讯(消息收发、在线名单、“对方正在输入”)、协同编辑与实时通知。

华为云官方博客 465

AI Agent如何通过MCP连接到华为云RDS Supabase应用平台

Schema元数据列出所有可访问的表(按schema分组)。Schema元数据列出表的列及元数据(类型/默认值/约束)。Schema元数据列出所有约束(PK/FK/UNIQUE/CHECK/EXCLUDE)。可按schema/表/类型过滤。Schema元数据列出所有外键关系。可按schema/表过滤。Schema元数据列出所有索引及定义和大小。可按schema/表过滤。Schema元数据列出已应用的数据库迁移记录。Schema元数据列出已安装的PostgreSQL扩展。

华为云官方博客 473

华为大数据Flink让每一 CU 算力,跑出开源 5.74 倍的性能

1. 开源Apache Flink 已成为业界流计算事实标准,但在极端重负载场景下存在性能瓶颈。2. 华为大数据Flink通过多项自研深度优化,在执行计划、算子执行、状态存储三个层面构建协同的优化体系。3. Nexmark Benchmark 测试结果:整体性能提升 5.74 倍,极端重负载场景性能领先最高 18.3 倍。4. 100% 兼容 Apache Flink 1.20,业务代码零改造,无缝迁移。

华为云官方博客 380

LakeAgent实战 | 业务分析篇从一句提问到业务分析

本文以“订单金额变化”分析为例,展示LakeAgent如何通过自然语言提问,结合DataArtsStudio的数据资产与专业技能,帮助业务人员快速定位数据、生成SQL、追踪血缘、生成报告。从问题出发,逐步实现数据发现、变化洞察、原因追溯与团队协作,最终形成可复用的分析流程与企业规则,显著提升数据分析效率与一致性。

华为云官方博客 389

华为云RDS Supabase AI应用已开放公测 :30分钟搭建AI应用后端

认证、存储、实时推送、数据库API——4个后端模块,传统开发需要数周。今天,你只需要30分钟。AI创业公司的全栈开发工程师。上周老板说"下周要上线的AI对话应用,后端你来搞"——认证鉴权、数据库接口、文件存储、实时推送,每一个模块都需要数周搭建,而市场不会等你。小张打开华为云RDS Supabase,30分钟搭好认证、数据库API、对象存储,剩下的时间全用来打磨AI交互体验。基于开源Supabase+华为云RDS PostgreSQL全托管能力,为开发者提供。

华为云官方博客 396

如何使用RDS Supabase后端BaaS能力:数据库函数(Database Function)

上一篇介绍了 Database Data API——建表即自动生成增删改查接口,解决单表读写,但聚合统计、跨表事务、字段自动维护等逻辑已超出其能力边界。本篇推进到数据库函数(Database Function):把业务逻辑封装进数据库,前端通过 .rpc() 调用,由触发器自动响应数据变更。上一篇中,小张基于 Data API 完成了产品目录的建表与基础读写。但新需求随之而来:按分类统计产品数与价格区间、上架新品同时写产品表与定价表、产品修改后自动刷新更新时间。

华为云官方博客 464

如何使用RDS Supabase后端BaaS能力:创表即生成API(Database Data API)

认证、存储、实时推送、数据库API——4个后端模块,传统开发要数周。本系列逐个拆解,首篇聚焦数据库API(Database Data API):建表即得 API,无需手写后端。小张,AI创业公司的全栈工程师。老板让他做个产品目录页,展示产品与价格、支持上下架。传统做法要搭后端、写接口、配权限,工期少说1-2周;而在华为云RDS Supabase,建两张表、应用 SDK 直连,几分钟增删改查全跑通。

华为云官方博客 478

从一句话到一个能出去的链接,AI开发者空间做了什么

自行搭建的 Agent、正在使用的开源项目、团队既有的工具,都可以接入,可以通过AI创建或者手动搭建环境;华为云 AI开发者空间——面向开发者的云端一站式开发平台,做的就是把这段路接上:环境免安装,浏览器打开即为完整的 Linux 运行环境,预置的 AI 智能体开箱即用。第一个任务建议选能出结果的:做一个游戏、生成一个页面、创建一台实例,从需求走到可访问的链接,一次就能看清这个环境在做什么。沙箱是一个完整的 Linux 环境,依赖、服务、端口都是真实的,不是模拟。环境释放后,权限随之失效。

华为云官方博客 426

华为云码道配置自定义大模型,四种方式完整实操

案例介绍。

华为云官方博客 624

图数据库:实现穿透式监管的数据基座

穿透式监管标志着国企监管从“管企业”向“管资本”转型过程中的关键一跃。而图数据库正是这一跃的技术支点。从股权穿透到资金链穿透,从供应链穿透到数据穿透,华为GES图数据库正在将“穿透式监管”从理念变为可落地、可操作的实践。无论是天眼查式的全量链路查询,还是某集团财经的税务规则判断,抑或是芯片供应链式的部件风险分析,乃至通过Palantir构建决策知识图谱,其底层逻辑都是一致的——用图的力量,穿透一切形式的“隔离层”,直抵风险本质与责任核心。

华为云官方博客 664

《公共云三十问》正式收官,奔赴企业AI百场景新征程

今年6月底,公共云产业联盟重点推出《公共云三十问》专栏,以每周三问的节奏,连载十周,解读《先进公共云》白皮书,分享国计民生系列案例,旨在凝聚共识、推动落地实践。同时,专栏分析公共云在产业升级、民生福祉、科技创新、全球发展等方面的作用,梳理中国特色公共云发展路径:以普惠云拓展用云广度,以智算云提升用云深度,以自主云夯实用云厚度,以全球云打开用云跨度。这十问从专属云、行业云切入,深入政务、金融、交通、电力、钢铁、化工、油气、制造等国计民生场景,回答公共云“怎么用”。

华为云官方博客 473

开发者小技巧|IAM配置,让码道代码智能体连续30天免登录

案例介绍。

华为云官方博客 645

码道深度对接CodeArts,让需求自动落地为代码

案例介绍。

华为云官方博客 720

【公共云三十问 之三十】拥抱AI,企业如何建设面向智能体的专属云?

企业可分阶段建设覆盖开发、运行、运营及安全的一体化智能体平台——从构建一站式、高低码协同的智能体开发平台,到打造高性能、极致弹性的运行时环境,再到搭建AgentOps驱动的持续运营与运维体系,同时构建端到端、多层次的全链路安全防护体系。在数据湖建设方面,遵循“存量复用、平滑演进、AI导向、分步迭代”原则,分三阶段推进——打造AI多模数据湖核心能力、完成存算分离与统一元数据管理、实现闭环赋能全面支撑智能体规模化落地,在保护既有投资的前提下将传统数据平台转型为AI数据专属供给平台。

华为云官方博客 823

【公共云三十问 之二十九】国计民生之制造:制造云如何重塑数智时代的新质生产力?

平台打通软件交付的完整路径,覆盖需求管理、代码托管、代码检查、编译构建、制品仓库、部署、测试等关键环节,支持大模型能力融入研发全流程,实现从需求到交付的端到端管理。通过构建“研发一朵云”,方案打破地域与组织壁垒,实现跨团队协同开发,有效缩短软件交付周期,助力工业制造企业从“传统研发”走向“敏捷研发”,加速数智化转型进程。当制造云真正成为数据流通的平台、AI创新的底座,公共云的社会价值将从基础设施层向生产场景层持续延伸,为新型工业化建设和制造强国战略注入源源不断的动力,重塑数智时代的中国制造新质生产力。

华为云官方博客 789

告别重复手工迁仓,码道MCP+Skill实现仓库批量迁移

案例介绍。

华为云官方博客 790

【公共云三十问 之二十八】国计民生之油气:智算云如何叩响数智时代的“地心蓝金”?

西南油气田以“向地球深部要资源”为战略方向,联合以华为云Stack为代表的公共云服务商共同打造统一算力底座,建设西南区域数据湖与通用技术平台,构建“勘探开发工程技术、天然气生产过程管控、天然气产运储销”等三个一体化协同应用场景,支撑油气勘探、开发生产、管输储运等全业务链的数智化转型。当智算云真正成为数据流通的平台、AI创新的底座,油气田得以将算力效能、数据价值与智能技术深度融入勘探开发全链条,将“看不见的算力”转化为“摸得着的储量”,以智能化手段持续降低勘探风险、缩短发现周期、提高采收效率,确保生产安全。

华为云官方博客 613

【公共云三十问 之二十七】国计民生之化工:数智云如何重塑传统化工新范式?

在架构方面,方案构建云边协同的统一体系,涵盖AI协同、数据协同与运营协同三大维度——总部集中训练大模型,边缘节点负责推理执行,云边持续迭代,实现“边用边学”的智能闭环,模型平均精度提升20%以上。此外,方案提供一站式企业级工业物联网平台、数据湖与数据治理平台,覆盖工业数据分析“采、存、算、管、用”全流程,打通生产现场与管理系统间的数据壁垒,有效消除数据孤岛。层面,方案充分发挥软硬协同优势,实现计算、存储、网络与云平台的深度协同,训练线性度超95%,为大模型训练推理提供强劲算力支撑。▲化工“数智”新模式。

华为云官方博客 663

【公共云三十问 之二十六】国计民生之钢铁:数智云如何淬炼中国钢铁新力量?

同时,构建云边端协同的统一架构,支撑集团总部与各生产基地两级协同发展——总部集中训练大模型,边缘节点负责推理执行,云边持续迭代,实现训推一体化的资源调度与高效协同,为钢铁行业的数智化转型构建了坚实的算力底座。层面,方案构建覆盖“工业数采→边缘IT/OT融合→统一数据湖→数据治理平台→数据应用”全链路的一站式数据治理与流通平台,打通生产现场与管理系统间的数据壁垒,让数据“采得到、流得动、用得好”,加速数据价值从生产现场向经营决策层流动释放。湘潭钢铁集团的钢铁数智云,是钢铁工业智能云建设的标杆案例。

华为云官方博客 526

LakeWatch——MRS 智能运维Agent

从资源池、队列、作业等多个维度,对集群CPU与内存资源进行精细化分析与对比,直观呈现不同时间段的空闲、满载等使用状态,识别资源浪费,指导治理优化,为扩缩容决策提供数据支撑。对HDFS存储进行多维度深度分析(目录、用户、用户组等),涵盖使用量、增量、文件大小分布及数据热度等指标,帮助快速识别增长较快的目录、长期未访问的文件,统计目录文件数量与小文件占比,评估HDFS总存储量与扩缩容需求,为存储治理与资源规划提供全面数据支撑。Agent主动巡检,识别异常趋势并提前预警,让运维从"事后处理"转向"事前预防"。

华为云官方博客 515

华为云专题文档发布:丰富的AI案例、选型指导和概念解读

发布 “云服务选型”、“云计算概念”专题,提供云服务选型指导,助您选择匹配业务的云服务,解读云计算相关概念,开启云上学习之路。开发者工具和文档专区上线,提供从学习、实践到反馈的全链路支持。帮助中心新增100余篇AI案例。

华为云官方博客 286

一个人,也能用AI做点“星东西”

华为云星耀创想者大赛-2026华为云OPC创意大赛等你来~

华为云官方博客 290

从需求到可执行工作项:MCP+Skill 让智能体规划真正落地

回顾整个体验,以前让智能体帮我拆需求,它是洋洋洒洒给我列了一大篇 Markdown,看着挺像那么回事,但最后还是得我一条条往 CodeArts Req 里搬,搬完再手动挂父子关系、排日期,拆需求五分钟,搬运两小时。现在好了,MCP 给智能体接上了"手",Skill 给它装上了"项目经理的脑子",一句话下去,34 个工作项连带排期、层级关系全给我建好了,甘特图一拉,齐刷刷都在两周内,节省了多少工作量啊,美滋滋。本次实操在码道代码智能体基础上,构建了一套"需求→可执行工作项"的自动化规划方案。

华为云官方博客 576

华为云码道「码力续航计划」更新!

✅上新GLM‑5.3‑Flash,高速响应,代码生成、工程解析、Agent调试高效输出。新增GLM‑5.3‑Flash福利模型,每日解锁1000万免费Tokens。● 本次活动共发放总量价值100万元Tokens,发完即止!把耗算力的编码重活,交给华为云码道代码智能体🚀🚀。● 每日额度准时刷新,当日清零、次日满血重置。✅复杂算法、大项目解析、批量代码生成随便跑。✅不用抠额度、不用算消耗,放开调试大胆迭代。✅无需额外操作,登录即送,直接切换模型使用。● 把算力交给码道,让撸码不再内耗👏🏻。

华为云官方博客 685

【公共云三十问 之二十四】国计民生之交通:交通云如何铺就数智通衢新坦途?

交通行业作为支撑实体经济的关键基础设施,涵盖公路、铁路、机场、港口、地铁等众多子领域,其中,公路网络作为综合交通运输体系的基础骨架,承担着全国超过70%的客货运量,其数字化、智能化转型的需求尤为迫切。方面,提供Agent开发框架、知识库管理、RAG工程、意图识别、静态应用编排及模型评测等能力,支持客户将行业知识、业务流程与AI能力深度融合,快速构建面向收费稽核、路网调度、应急处置等场景的智能应用。开发并实现落地应用,全面覆盖建设、管理、养护、运营、服务、安全、办公七大业务领域。

华为云官方博客 461

【公共云三十问 之二十五】国计民生之电力:电力云如何点亮数智电力新引擎?

方案构建了覆盖数据获取、质量评估到标准化处理的全链路能力。基于公共云服务商智算底座及气象大模型,通过时空图神经网络重新建模产流机制,中国华电建成超50TB多源融合数据集,突破时空建模与机理融合等五大关键技术,短期径流预测精度较传统机理模型提升5个百分点以上,实现15天中期径流预测精度超85%,推理效率达秒级。基于气象大模型的基础架构与预训练能力,客户可直接在大模型之上开展增量训练与微调,充分利用场站所在区域的高精度历史数据(如3公里、1公里分辨率),针对不同场站和区域的地形地貌与气候特征进行模型调优。

华为云官方博客 381
上一篇: 仓颉基础大揭秘:数据类型的奇妙世界
下一篇: 基于OpenHarmony的Nexus_Geometry_Nano_Board亮灯实验
华为云开发者联盟
华为云开发者联盟 企业官方账号 企业官方账号
博客等级 码龄10年 72万+粉丝 5985原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值