数据分析 Analysis

更新时间:
复制为 MD 格式

数据分析(Analysis)是 EventHouse 的计算引擎层,提供高性能的 SQL 查询、流式处理和联邦查询能力。通过数据分析,可以对事件仓中的事件数据执行实时查询、聚合分析和可视化展示。

使用场景

  • 实时异常检测:使用时间窗口函数实时计算交易成功率、延迟分布等指标。当分析结果触发阈值(例如 1 分钟内失败订单超过 100),结合规则引擎自动触发告警事件。

  • 跨源关联分析:通过联邦查询,将 EventHouse 中的实时事件数据与 RDS 中的用户维表、OSS 中的日志文件进行 JOIN 分析,无需将数据迁移到同一存储中。

  • 事件全文检索:使用 SEARCH 语法对事件内容进行全文检索,快速定位包含特定关键词的事件记录。

前提条件

  • 已开通事件总线 EventBridge 服务。

  • 已在数据目录 Catalog 中创建 Catalog、Namespace 和 Event Table。关于创建方法,请参见数据目录 Catalog

进入数据分析页面

  1. 登录事件总线 EventBridge 控制台

  2. 在左侧导航栏,选择事件仓 > 数据分析 Analysis

页面分为三个区域:

区域

位置

说明

Catalog 面板

左侧

展示数据目录树,层级为 Catalog > Namespace > Event Table > Columns。支持搜索、刷新和折叠

SQL 编辑器

右上

SQL 查询编辑区,包含查询范围选择器、时间范围选择器和运行按钮

输出面板

右下

查询结果展示区,支持 Table 和 Visualization 两种展示模式

执行 SQL 查询

  1. 在 SQL 编辑器上方的查询范围选择器中,依次选择目标 Catalog 和 Namespace。

    说明:必须先选择查询范围,运行按钮才会启用。
  2. 时间范围选择器中选择查询的时间范围。

    支持以下预设时间范围和自定义时间范围:

    分类

    可选范围

    分钟

    最近 5 分钟、最近 10 分钟、最近 15 分钟

    小时

    最近 1 小时、最近 6 小时、最近 24 小时

    半天、今天、近三天

    本周、近两周、近三周

    本月、近两个月、近三个月

    自定义

    通过日期选择器指定起止时间

    默认时间范围为近三天

  3. 在 SQL 编辑器中输入查询语句。

    SQL 编辑器基于 Monaco Editor,支持语法高亮和行号显示。关于查询语法,请参见查询语法

  4. 单击运行按钮执行查询。

    运行按钮支持以下两种执行模式:

    模式

    说明

    全量查询

    返回所有匹配的查询结果

    LIMIT 1000

    自动在查询语句末尾添加 LIMIT 1000,仅返回前 1000 条结果

    单击运行按钮右侧的下拉箭头可以切换执行模式。

查看查询结果

查询执行完成后,结果在输出面板中展示。输出面板包含 TableVisualization 两个标签页。

Table 标签页

Table 标签页以表格形式展示查询结果,支持以下功能:

功能

说明

事件条数

显示查询结果总数,支持折叠

显示模式

支持表格(默认)和原始两种模式

筛选列

选择显示或隐藏特定列

分页

支持设置每页显示数量(默认 10 条),通过页码导航浏览全部结果

Visualization 标签页

Visualization 标签页用于将查询结果以图表形式展示。

  1. 单击 Visualization 标签页,然后单击添加图表

  2. 编辑图表对话框中,选择图表类型并配置图表参数。

    支持以下图表类型:

    图表类型

    说明

    折线图

    适用于展示数据随时间的变化趋势。默认图表类型

    柱状图

    适用于对比不同类别的数据量

    饼图

    适用于展示各部分占总体的比例

    图表编辑器提供以下配置项(以折线图为例):

    配置分类

    配置项

    面板配置

    面板标题、面板描述、显示背景边框

    图形配置

    折线样式(线条宽度、线条样式、连接方式)、填充样式、点样式、数据标签、堆叠处理、网格线

    图例配置

    显示图例、图例模式(列表/表格)、图例位置(底部/顶部)、图例排序

    Tooltip 配置

    排序、显示标题、小数位数

    X 轴配置

    显示 X 轴、X 轴标题、刻度数、格式

    Y 轴配置

    显示 Y 轴、单位、刻度数、Y 轴范围

  3. 配置完成后,单击确定保存图表。

可以通过输出面板的 + 按钮添加多个 Visualization 标签页。

多标签页分析

数据分析支持同时打开多个分析标签页,每个标签页独立维护查询范围、时间范围、SQL 内容和查询结果。

  • 单击 SQL 编辑器区域的 + 按钮创建新的分析标签页。

  • 单击标签页上的关闭按钮可以关闭标签页。

Catalog 面板操作

Catalog 面板展示数据目录的层级结构:Catalog > Namespace > Event Table > Columns。

操作

说明

搜索

在搜索框输入关键词过滤目录树

刷新

单击刷新按钮更新目录树

展开表

展开 Event Table 节点可查看所有列名及数据类型

查看表信息

悬浮于表名可查看表描述,支持复制表名

显示/隐藏

通过工具栏按钮切换 Catalog 面板的显示和隐藏

查询语法

数据分析当前支持 SQL 查询模式,兼容 PostgreSQL SQL 语法,同时扩展了全文检索能力。详见PostgreSQL 官方手册

SQL 查询

数据分析支持标准 PostgreSQL SQL 语法,包括 SELECTWHEREGROUP BYORDER BYJOINLIMIT 等。

示例:查询指定表中的事件数据。

SELECT order_id, amount, status
FROM "order-events"
LIMIT 10
说明
  • 表名需使用双引号包裹。

  • `SELECT *` 会自动转换为 SELECT 具体列名。建议在查询中直接指定需要的列,以提高查询效率。

  • 所有查询自动限定在选定的 Catalog 和 Namespace 范围内。

  • 所有查询需要指定时间范围(`__time__`)。通过控制台的时间范围选择器设置,无需手动在 SQL 中指定。

  • 联邦查询中 JOIN 外部表时,外部表可以不指定 `__time__`。

全文检索

使用 SEARCH 关键词对事件内容进行全文检索。

语法

SELECT * FROM "table_name" SEARCH 'keyword'

示例:检索包含"error"的事件记录。

SELECT * FROM "order-events" SEARCH 'error'
说明SEARCH 关键词后的检索内容使用单引号包裹。

查询语法汇总

查询类型

语法说明

示例

全文检索

使用 SEARCH 关键词检索事件内容

SELECT * FROM "table" SEARCH 'keyword'

标准 SQL

兼容 PostgreSQL SQL 语法

SELECT col1, col2 FROM "table" WHERE col1 > 100

联邦查询

通过 JOIN 关联内部表与外部数据源

SELECT * FROM "events" JOIN "external_table" ON ...