问答 › 查看内容
返回列表

如何查询所有数据账户下开启增量更新的数据集

35 1
发表于 昨天 15:24 | 查看全部 阅读模式
如何批量列出所有数据账户下已开启增量更新的数据集,并同时查看数据账户名称和数据集名称?元数据库分别使用 MySQL、PostgreSQL 时应如何查询?

评论1

观小程楼主Lv.1 发表于 昨天 15:25 | 查看全部
需使用观远 BI 元数据库的只读账号连接元数据库,不能在普通业务数据库连接中查询。若尚无账号,可参考 GuanOps 文档中的“元数据库只读账号获取”:https://docs.guandata.com/product/bi/guanops

以数据集配置 `guanIndexIncrementalUpdateSetting.enabled = true` 判断是否开启增量更新。以下查询仅包含未删除的数据账户和数据集。

MySQL(连接到 BI 元数据库后执行):

```sql
SELECT d.dom_id,
       a.name AS account_name, a.ac_id,
       d.name AS dataset_name, d.ds_id,
       d.cn_id, d.display_type
FROM data_source d
JOIN account a
  ON a.dom_id = d.dom_id AND a.ac_id = d.ac_id
WHERE d.is_del = 0
  AND a.is_del = 0
  AND JSON_UNQUOTE(JSON_EXTRACT(
        d.config, '$.guanIndexIncrementalUpdateSetting.enabled'
      )) = 'true'
ORDER BY d.dom_id, a.name, d.name;
```

PostgreSQL(下例元数据表位于 `public` schema;如实际 schema 不同,请替换 `public`):

```sql
SELECT d.dom_id,
       a.name AS account_name, a.ac_id,
       d.name AS dataset_name, d.ds_id,
       d.cn_id, d.display_type
FROM public.data_source d
JOIN public.account a
  ON a.dom_id = d.dom_id AND a.ac_id = d.ac_id
WHERE d.is_del = false
  AND a.is_del = false
  AND d.config::jsonb #>> '{guanIndexIncrementalUpdateSetting,enabled}' = 'true'
ORDER BY d.dom_id, a.name, d.name;
```

如只需单个租户,在对应 SQL 的 WHERE 条件中增加 `AND d.dom_id = '租户ID'`。若提示表不存在,先确认连接的是 BI 元数据库,并检查表所在的 schema。

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

微信服务号
联系我们
电话:400-880-0750
邮箱:hello@guandata.com
Copyright © 2001-2026 观远社区 版权所有 All Rights Reserved. 浙 ICP 备15006424号-3
去回复 去发帖 返回顶部
快速回复 返回顶部 返回列表