建表最佳实践 分布键 云数据库 FusionDB 在创建表时必须显式指定分布键(DISTRIBUTED RANDOMLY 或 DISTRIBUTED BY (col1, col2,...))。默认情况下,如果创建表时不指定分布键,云数据库 FusionDB 将使用第一个字段作为分布键,这种情况有时会有比较大的风险所以应该坚决杜绝这种情况。
分区键特性 什么是分区键 在分布式数据库中,一张表可能会被划分为多个分区或者分片,实现分布式扩展。在VectorDB中,也支持表的分区机制,目前支持基于哈希算法的分区机制。分区键(Partition Key)就是用来确定一行归属于哪个分区的关键所在。当写入一条新的行时,代理节点根据分区键的取值来计算出一个哈希值,然后将哈希值对总的分区数量求模,从而得到该行数据的目标分区。
管理数据库 说明 数据库管理:支持建表和 DDL 操作 入口 数据库名称 在数据库管理页面,选择一个数据库,点击“数据库名称”,进入数据库管理页面。 数据表管理 在数据库管理页面,选择一个数据库,点击操作列中的“数据表管理”,进入数据库管理页面。 操作指南 数据表管理 在“数据表管理”页签点击“建表/DDL”。
4)虚拟列可以对 JSON 类型不同的 KEY 来建索引,提高检索速度。 Generated Colum使用建议: 虚拟列创建默认创建VIRTUAL类型,这种列数据并不实际存储在磁盘上,只有读取时才做实时计算,对CPU资源有一定消耗;当有实际查询需求时可以增加虚拟列及相关索引来提高查询效率,但没有必要需求时不建议随意使用虚拟列。
问题现象 某百度云RDS用户在将IDC自建数据库迁移上云时,建表失败报错。
建议 在数据库迁移和数据库版本升级的过程中,需要对齐源库和目标库的innodb_large_prefix参数取值,否则可能导致建表失败。 在设计数据库表结构的过程中,对于一个可能包含很长字符串的列上创建索引时尽量使用前缀索引。
在云数据库 FusionDB 中创建表时,默认使用行式存储,并且不启用压缩。如需使用列存和压缩功能,您必须在建表时指定列存和压缩选项。 例如,可以在建表语句中加入以下子句,来启用列存和压缩功能。
还有一点需要特别注意的是,如建表没有指定具体的分布策略,GP将会默认选择主键作为分布键,如果没有指定主键,将会默认选择第一列作为分布键。很容易导致严重的数据倾斜。 对于建表有什么建议呢? 分布键选取正确,按照上个问题进行慎重选择。
进一步查看5.6版本数据库中的账号权限,发现也不存在REFERENCES权限,但是5.6的数据库确实成功创建了含外键的表,这是为什么呢?
读写数据 概述 本章节介绍如何连接向量数据库,根据业务需求简单读写向量数据的操作。运行本章节所提供的示例代码,您将初步了解向量数据库的数据读写的能力。 前提条件 已成功新建数据库实例。 根据 SDK 的准备指引 ,完成 SDK 的准备工作。 完成 库表创建操作 。