tencent cloud

游戏数据库 TcaplusDB

表格

PDF
聚焦模式
字号
最后更新时间: 2024-12-04 09:56:32

表格概述

与其他数据库的一样,表格是数据的集合,是业务数据根据表格的定义存放在一起的组合形式。 从游戏业务角度来看,一张表可负责一个业务模块的一段相关数据集合,例如用户表、道具表。
如下示例的玩家表数据,该表可用于存储有关某一游戏中所有玩家的相关信息:游戏角色名、性别、种族、等级、战斗值、装备、坐骑、物品等信息。
{
player_id:11474,
player_name: "测试账号2",
gender:0,
ethnicity:"精灵",
FightingPower:10,
equipment:
{
helmet:0,
Warframe:0,
gloves:0,
necklace:0,
pants:0,
Shoes:0
},
horse:"0"
}
{
player_id:11475,
player_name: "测试账号1",
gender:1,
ethnicity:"兽人",
FightingPower:1477,
equipment:
{
helmet:1478,
Warframe:21,
gloves:554,
necklace:12,
pants:64,
Shoes:122
},
horse:"3"
}

记录

多个同一对象字段值的集合,称之为记录。上述示例的玩家角色表中,一个玩家角色的所有信息,由多个属性字段值组成,其所有信息表示这个玩家角色信息在此游戏的集合。单条记录支持最大1MB。

字段

字段描述了指定对象的某一特征。上述示例,玩家角色的一个独立属性我们称之为一个字段,如玩家角色表中的player_name、ethnicity。

主键字段

由如上示例表可看出,每条记录都有标志记录唯一性的字段,用于将表中的记录区分开来,我们称之为主键字段。上述示例的玩家角色表中,主键字段包含 player_id 以及 player_name。TcaplusDB 最大支持4个主键字段。

普通字段

每条记录除了标志其唯一性的字段外,还有其他的属性,这些属性所构成的字段,称之为普通字段。上述示例的玩家角色表中,普通字段则为 equipment,FightingPower 等属性。TcaplusDB 支持最多128个普通字段。

分片字段

TcaplusDB 是分布式数据库系统,可以为表格提供更高规格的并发请求能力。如果用户设置了分片字段,TcaplusDB 将自动根据当前表格访问情况,通过对分片字段 Hash 计算从而自动调整表格分片。如果用户不设置,那么系统将默认采用主键字段作为分片字段。
分片字段的设置与后台数据分布相关,用户需要评估作为分片字段的字段取值是否离散。取值有限的字段如性别、星期等都不建议设置为分片字段,建议使用 ID、name 类的字段作为分片字段。

字段类型

TcaplusDB 支持多种数据类型,支持的类型如下:
字段类型
字段介绍
int32
使用可变长度编码,此类型表示值介于 -2^31 到 +2^31 之间的有符号整数,但是负数表示效率较低。
int64
使用可变长度编码,此类型表示值介于 -2^63 到 +2^63 之间的有符号整数。
uint32
使用可变长度编码,该类型表示值为 0 到 2^32 的无符号整数。
uint64
使用可变长度编码,该类型表示值为 0 到 2^64 的无符号整数。
sint32
可变长度有符号的 int 值,与常规 int32 相比,可以更有效地表示负数。
sint64
可变长度有符号的 int 值,与常规 int64 相比,可以更有效地表示负数。
bool
布尔类型,表示真 Ture 或假 False。
fixed32
定长数字类型,始终占用四个字节。如果值通常大于 2^28,则比 uint32 更有效率。
fixed64
定长数字类型,始终占用八个字节。如果值通常大于 2^56,则比 uint64 更有效率。
sfixed32
定长数字类型,始终占用四个字节。
sfixed64
定长数字类型,始终占用八个字节。
float
浮点类型,浮点数占 4 个字节,用 32 位二进制描述。
double
双精度类型,浮点数占 8 个字节,用 64 位二进制描述。
strings
字符串必须始终包含 UTF-8 编码或 7 位 ASCII 文本,并且不能超过 2^32。
bytes
可以包含任意长度不超过 2^32 的字节序列。
message
嵌套类型,可连续嵌套,支持最高嵌套128层,嵌套层数过多会影响性能。

表格定义格式

TcaplusDB 支持 Protocol Buffers 数据存储格式,这是一种轻便高效的结构化数据存储格式,主要用于将结构化数据序列化存储。 详细关于表的格式可通过 表描述语言 查看。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈