C/C++教程

《TcaplusDB数据库常见问题解决及诊断技巧集锦-数据库使用类-3》

本文主要是介绍《TcaplusDB数据库常见问题解决及诊断技巧集锦-数据库使用类-3》,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

随着信息技术的飞速发展,企业越来越依赖于信息化管理。尽管当前各种新的技术层出不穷,但大多数企业的业务数据依然主要存储在数据库中, 数据库是应用系统的基石,数据库中存储着大量的数据信息,数据库的稳定性、性能、扩展性,对业务的运营起着至关重要的作用。TcaplusDB作为腾讯自研的分布式NoSQL数据库,致力于帮助客户解决数据存储问题,为业务保驾护航。

以下为TcaplusDB常见入门问题(数据库使用类-3)


SetResultFlag 的作用?

写操作时,响应包里支持返回记录,读操作调用该函数无效,具体的 result_flag 值含义如下:
0表示:只需返回操作执行成功与否,不需要返回 value 字段。
1表示:返回与请求字段一致的数据。
2表示:须返回变更记录的所有字段最新数据。
3表示:须返回变更记录的所有字段旧数据。

SetResultFlagForSuccess 接口可以设置成功场景下,返回的数据情况;SetResultFlagForFail 接口可以设置在失败场景下,返回的数据情况。

increase 操作可以一次对多个普通字段进行 increase 操作吗?如果主键字段不存在的场景呢?

increase 操作可以一次对多个 普通字段进行 increase 操作,需要 gameserver 传递的请求里对多个字段都进行了赋值,如果某个 key 不存在时,再进行 increase 操作,此时可以通过函数 SetAddableIncreaseFlag 设置;如果 key 不存在时,插入该 key 并进行 increase 操作,该 key 的非 increase 字段不会实际存储,在读取该条记录时非 increase 字段会采用默认值;如果 key 存在,则直接会执行 increase 操作。

TcaplusDB 在读取记录时,有哪些省流量的方法?

TcaplusDB 读取记录时,支持在固定时间内记录没有变化则不返回 value 字段、记录版本号没有变化则不返回 value 字段,具体的见函数 SetFlags 函数。

TcaplusDB 支持回档吗? 支持的回档粒度如何?

TcaplusDB 支持回档,包括全区全服、单张表、千亿条记录回档N条记录,支持冷备时间回档(最近的凌晨01:05:00)、精确时间回档(秒级别)、模糊回档(您指定回档的规则),精确时间回档的速度请参照300GB数据、200GBUlog流水,耗时2小时左右,回档的原理,冷备时间回档即替换引擎文件,精确时间回档,将冷备的引擎文件 + 执行Ulog流水,执行到需要回档的时间点即可,基于 key 的回档需要您配合,先对这些 key 封号,TcaplusDB 回档完毕后,再对这些 key 解封。

TcaplusDB 按照部分 key 查询(索引)的效率怎么样?

推荐在业务场景1:N(N > 1024)下使用部分 key(索引)查询,单个索引键下的主键个数 = 10GB/单条记录主键的大小,单次读写索引操作耗时100ms左右(单条索引键下有10w+以上的数据记录)。

TcaplusDB API 的超时机制是什么?it is timeout 错误什么意思?

TcaplusDB API 对每个请求分配个 ID,发送成功后,将 ID 压入判断超时数据结构里,如果该请求的响应包回来后,则从数据结构里删除该 ID,如果在3秒内该请求的响应包还没有被应用层处理,则会显示打印错误日志,关键字包括 it is timeout,此时需要看下 gameserver 是否被阻塞,可能是 tcaproxy(接入层)在向 gameserver 端回包时丢包,可能是响应包已经到达了 gameserver 端,但是 gameserver 端没有及时处理
TcaplusDB 推荐您自己实现超时机制,这样可以对超时的请求进行重试等处理。


欢迎联系我们!

公众号:

TcaplusDB

社区:

https://tcaplusdb.tencent.com/
一对一服务:

QQ:3426723433

购买链接:

https://cloud.tencent.com/product/tcaplusdb

这篇关于《TcaplusDB数据库常见问题解决及诊断技巧集锦-数据库使用类-3》的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!