SelectDB Cloud
使用指南
WebUI

WEBUI

SelectDB Cloud WebUI(简称 WebUI)是面向数据开发场景,由 SelectDB 提供的云上数据开发平台,能协助用户管理、探索数据,可以替代 Navicat。

主要功能

  • 仓库登录 :在 WebUI 使用不同的数据库用户登陆仓库。
  • 数据管理 :查看、管理数据库中的数据,当前支持查看。
  • 数据查询 :简单易用的 SQL 查询编辑器,支持查询执行、查看查询 Profile、查看查询历史、保存查询。
  • 数据集成 :轻松连接云上对象存储中的数据,进行数据湖连接,导入样例数据。
  • 权限管理 :管理数据库内的用户和角色,并对其进行授予、撤销权限。

注册与登录

使用 WebUI 服务

在 SelectDB Cloud Manager(简称 Manager)中,每一个仓库都有对应的 WebUI 服务,在 Manager 的“连接”模块,你可以找到通过私网或者公网进入 WebUI 的入口。

你也可以保存 WebUI 的入口地址,直接访问。

登录 WebUI

你需要在登录页面输入数据库的用户名密码以及 仓库名 。如果你是从 Manager 点击链接跳转登陆的,仓库名应该预先填好。

我们不会记录你的登陆账号和密码,但你可以使用浏览器自带的记录功能。

数据

“数据”模块是 WebUI 管理数据库的基本功能,主要有两方面的作用:

1、 查看数据与数据的组织形式,比如库表结构、数据大小、建表语句、表字段信息、数据预览等。

2、增删改数据,包括新建、删除数据库对象,修改存储策略等。这部分功能仍在实现中,暂时不可用。

数据模块,按照数据库中数据的组织形式进行展示,分为 目录 (Catalog)- 数据库 (Database)- (Table)/ 视图 (View)。

目录(Catalog)

目录(Catalog)是数据库的集合。

目录(Catalog)分为内部目录(Internal)与外部目录(External),内部目录(Internal)包含了 Doris 自身的数据库;外部目录可以连接 Hive、Iceberg、Hudi 等并进行查询。

当前,你可以在“集成”模块通过新建“Hive-OSS”集成来新建外部目录,进行数据湖查询。

数据库(Database)

数据库(Database)是表、视图的集合。数据库(Database)属于目录(Catalog)。

当选中一个目录时,你可以查看目录下属的数据库,以及数据库的大小,修改时间。同时,你可以删除、新建数据库。

表(Table)

表(Table)是SelectDB数据仓库的基本组成单位,表(Table)属于数据库(Database)。

当选中一个数据库时,可以看到数据库下属的表,以及表的大小,创建、修改时间。

在当前版本,你可以删除表,在以后的版本上,你可以在 WebUI 建表并管理表的生命周期。

表详情

在表详情页面,你可以查看表的定义和一些基础属性。

未来我们会在这里支持对表的生命周期的查看和管理,提供更丰富的存储相关的统计信息。

在 SelectDB WebUI 未来也会支持将本地文件上传到表,完成轻量化的表导入功能。

字段信息

在这里你可以看到当前表(Base Table)以及其 Rollup 或者 物化视图的字段信息。

索引

这里展示的是表内的索引信息,SelectDB 中有很多类似索引的加速方式,在这里,分区、主键、rollup暂时不作为索引对待,只展示 Zonemap, Bloomfilter, Bitmap/Inverted Index 这几类索引。

数据概览

查看概览会消耗集群资源,你必须有可用的集群,才能查看数据概览。

“共 x 条数据”是从元数据服务中获取的,因此可能有延迟,不能反映实际表行数。

视图(View)

视图是基于 SQL 语句的结果集的可视化的表。在 WebUI 中,我们将视图与表分开处理,物化视图不在视图的范围内。

视图页面与表页面大致类似,视图没有的属性(如索引、详情)不会被展示。

你可以预览数据,但预览视图数据会发起查询,消耗集群资源。

查询

查询的结果将在编辑框的下方返回,查询返回的错误或者是成功状态以及信息也会在查询结果处展示。

同时,你可以点击 运行 (LIMIT 1000) 右侧的下拉按钮,切换到 运行并下载 ,将你的查询结果下载下来。

提醒 当前,如果一次性执行了多次查询,会返回第一条 Query 的结果,我们会在之后的版本添加查看其他返回的功能。

同时,在“查询”模块发起查询时,没有上下文关联。所以可能遇到 USE [DATABASE] 不生效等上下文缺失的问题,我们会在下一个版本添加查询时的上下文关联。

点击查询记录的 Query ID ,可以查看查询详情。

注意 非查询语句没有 Query ID ,查询失败的语句也没有 Query ID。

在 WebUI 发起的查询默认都开启了查询计划,这不会对单个查询性能造成影响,点击“查询语句”可以进入执行计划页面。

你可以在编辑器右上角找到“保存查询”与“另存为新查询”。

从“已保存的 SQL”打开 SQL,之后再进行修改,这些修改会被保存下来。

在已保存的查询中,可以看到我们预制的测试数据集的测试语句。

集成

集成是连接 SelectDB Cloud 与仓库外数据的门户。

新建集成

当前,你可以新建三种集成,分别是Stage 集成(对象存储)、Catalog 集成(Hive-对象存储)、样例数据。

对象存储

通过新建对象存储集成,你可以与对象存储中的数据建立 连接 。通过集成 + Copy Into 命令,你可以将对象存储中的数据导入到仓库。

在新建对象存储集成时,你需要输入以下内容:

  • 集成名 :与数据库对象命名规则一致,最多 64 个字符,可以使用字母、数字、下划线。
  • 注释 :集成的注释。
  • Bucket :你需要集成的存储桶。
  • 默认文件路径 :存储桶中要访问的文件路径,SelectDB 只会访问你填写的路径下的文件,如果不填写,则默认为整个桶的数据均可访问。
  • 访问授权 :允许 SelectDB 访问你的存储桶的方式。分为 Access key 与 跨账号授权,我们推荐使用 跨账号授权 来获得更好的安全性。有关跨账号授权的指引,可以参考:跨账号授权指引 - 云原生实时数据仓库。你必须通过权限校验才能成功创建集成。
  • 高级配置 :下详。

高级配置

分为文件类型导入配置 。这些是你在导入集成的数据时可能会用到的参数,你可以在这里设置,也可以在导入时另行指定,如果你没有设置也没有指定,系统将以默认配置执行该集成的导入任务。

文件配置

  • 文件类型 :该集成存储文件的默认类型,目前支持csv,json,orc,parquet。默认为系统根据文件名后缀推断。
  • 压缩方式 :该集成存储文件的默认压缩类型,目前支持gz,bz2,lz4,lzo,deflate。默认为系统根据文件名后缀推断。
  • 列分隔符 :该集成存储文件的默认列分隔符,默认\t
  • 行分隔符 :该集成存储文件的默认行分隔符,默认\n
  • 文件大小 :导入该集成下的文件时,默认的导入大小限制,默认为不限制。
导入配置

  • 遇到错误 :导入该集成下的文件时,当数据质量不合格时,默认的错误处理方式。分为三种,继续导入、中止导入、错误数据比例不超过一定值时继续导入。
  • 严格模式 :对于导入过程中的列类型转换进行严格过滤。默认为关闭。

样例数据

新建样例数据集成,会在创建对象存储集成的基础上,导入样例数据到数据库中。因此,你需要选择集群来完成新建。 TPCH、GitHub Event、SSB-FLAT 测试数据数据大小有以下选择:sf1(1GB)、sf10(10GB)、sf100(100GB),通过下拉菜单选择,测试仓库只能选择1sf(1GB)。

Clickbench 只有sf100(100GB)的选项,我们推荐你使用较大的集群导入 ClickBench 样例数据。

你可以在样例数据详情查看导入进度。

数据湖 Hive-对象存储

通过创建 Hive-对象存储 集成,你可以访问元数据在 Hive Metastore(以下简称 HMS) 而存储在对象存储的数据。

创建 Hive-对象存储 集成时,需要注意两点:

  1. 确保 SelectDB Cloud 能连通 HMS。当前,我们支持通过私网链接访问 HMS,你可以在 Cloud Manager-连接-SelectDB 访问私有网络 中,登记你的终端节点服务,并创建终端节点,在 WebUI 中,你可以访问终端节点的地址以及对应端口,来访问 HMS。
  2. 确保 SelectDB Cloud 能访问你对象存储的对应文件。你可以使用 AKSK/跨账号授权 的方式,让 SelectDB 访问你的对象存储,授权方式与“对象存储集成”的授权方式相同。

新建 Hive-对象存储集成会同步创建目录(Catalog),你可以在“数据”模块中查看 Catalog,并在“查询”模块选择并查询其中的数据。

在未来,我们会支持 SSH 隧道通过公网访问 HMS 的功能。

权限

用户

展示 SelectDB 仓库中的用户,需要注意的是,root 用户不会在这里展示。

只有拥有 Admin 权限的用户,能新增、修改其他用户。

你可以在这个页面新建用户,除了用户名之外,其他的内容都是非必选的。但我们强烈建议你为用户添加密码,同时限制访问主机以增强安全性。

角色

在这里你可以管理 SelectDB 中的角色,也可以给角色进行授权的操作。

只有拥有 Admin 权限的用户能新增、修改其他角色。

SelectDB 目前还不支持通过角色管理角色下的用户,这意味着你需要在创建用户或者修改用户时指定你的角色。

授权

在用户或角色的详情页,你可以进行授权/撤销操作。

你需要拥有 Admin 或者对应层级的 Grant 权限,才能进行授权/撤销工作。

在 WebUI 中,我们将权限分为四类,分别是:

  • 全局:全局权限时 Global 层级的权限,拥有全局权限,自动拥有数据库中所有对应对象的对应权限。
  • 数据:指数据资源的权限,你可以按照层级进行授权,拥有父层级的权限,自动拥有其子内容的对应权限。
  • 集成:对外部集成的权限,目前实际上是对对象存储集成的权限。
  • 集群:可以使用的计算资源的权限。

© 2023 北京飞轮数据科技有限公司 京ICP备2022004029号 | Apache、Apache Doris 以及相关开源项目名称均为 Apache 基金会商标