关于数据库:使用-NineData-GUI-创建与修改-ClickHouse-表结构

52次阅读

共计 1857 个字符,预计需要花费 5 分钟才能阅读完成。

01 前言

随着 ClickHouse 的疾速倒退,越来越多的开发者关注并在业务中应用 ClickHouse。作为开发人员除了在利用中拜访数据库、进行业务数据的剖析跟进,还有很重要的一个库表构造的设计。但在 ClickHouse 官网文档举荐的泛滥第三方开发的可视化管理工具中,不论是商业的还是开源的,绝大多数只关注在其数据的查问、剖析、报表出现、性能等畛域,对表构造变更的可视化治理仅 DBeaver、DBM 有大量反对( 前者交互较重,后者仅大量场景的新建反对 ,可参考两个产品的建表界面)。

在后面的文章中咱们曾经介绍过「NineData:弱小的 ClickHouse 图形客户端工具」,明天咱们重点来介绍一下如何通过 NineData 帮忙开发者,通过 GUI 的形式创立、批改 ClickHouse 的数据库表构造。

02 新建表

NineData- 让每个人用好数据和云 - 玖章算术

进入 NineData 平台后,首先关上左侧的 SQL 窗口,抉择咱们的指标数据源(此处演示为 ck_集群测试 1);在左侧对象导航树找到咱们的指标数据库(此处演示为 str_test),在该对象名上鼠标右键抉择“创立表”,进入新建表页面,如下:

缺省咱们 NineData 会提供默认表名、主键 id 等信息,缺省表引擎为 ClickHouse 里最强的 MergeTree,您可按需调整表名、正文、引擎参数、字段、压缩与编码、索引、排序键(key 配置)、投影、束缚、分区、过期工夫等相干信息。如果您想要在指定逻辑集群的多个节点同时创立同一个表,也能够抉择配置 on cluster 参数(此处演示抉择 ninedata_cluster);当您抉择 on cluster 参数后,咱们 NineData 提供您一键为“本地表”创立“分布式表”的能力(勾选 创立分布式表,您可在下方 SQL 脚本中实时看到对应的语句);若您临时不须要创立分布式表,则可勾销该勾选项。

另外,如果您的本地表曾经创立在每个分片节点上,您想对其再创立一个分布式表,您只须要将表引擎抉择为 Distributed,咱们 NineData 同样为您提供高效的创立计划。当您抉择好本地表,咱们将为您一键带入本地表的字段相干定义信息,只须要补充分布式参数就能够实现创立(个别倡议填写 sharding_key,此处示例为 user_id;缺省分布式表的表名为“本地表名称_all”)。

在建表语句确认后,点击页面的保留,实现确认即可执行失效到数据库中。执行实现后您在 NineData SQL 窗口可通过如下 SQL 进行确认:

## 查看逻辑集群有哪些分片节点:## 此处 ninedata_cluster 须要替换为您应用的逻辑集群名
select *
  from system.clusters
 where cluster='ninedata_cluster';
 
 ## 查看本地表、分布式表的创立状况:## 此处 order 须要替换为您理论定义的本地表的表名称
 ## 此处 str_test 须要替换为您理论应用的 ClickHouse 数据库名称
 
 SELECT *
  from system.tables
 where name like 'order%'
   and database='str_test';
   
您还能够按需在 SQL1 查出来的逻辑集群分片上逐个确认表构造、建表语句等信息。

以后,咱们 NineData 的「新建表」性能残缺反对 ClickHouse 的所有表引擎、引擎参数、字段属性等相干的抉择与配置;同时,新建表对集群与分布式的反对,即能够帮您保障多个本地表在集群分片上的统一、分布式表与本地表的统一,更可无效帮您晋升研发效率,缩小反复工作的投入。

03 批改表

当业务倒退产生需要变更时,表构造的批改也是极其常见的需要;此时您只须要在 SQL 窗口左侧导航树找到对应指标表,右键“编辑表”即可进入批改页面,字段等相干信息您可按需批改(注:为了更好的适配 ClickHouse 的个性,局部信息如表引擎等是不反对批改的,具体数据库反对能力参考 ClickHouse 官网文档)。

以后,咱们 NineData 的「编辑表」性能也残缺反对 ClickHouse 的全副变更操作,集群多个分片的一致性变更也已反对。

04 总结

对于 ClickHouse 表构造变更的可视化治理,明天先介绍到这里。以后 NineData 曾经齐全适配反对 ClickHouse 所有表引擎的新建及其变更,在集群与分布式表的新建反对上更是做了联动优化,进一步帮忙宽广开发者晋升效率,缩小不统一景象的呈现。将来,咱们将持续迭代优化反对本地表与分布式表的一键联动更新,NineData 让每个人用好数据和云。

正文完
 0