backup - 如何使用 tplogs 恢复 HDB?

标签 backup kdb

我们的系统当前正在将 tplog 备份到 S3。根据我所读到的内容,只需确保这些文件位于 kdb 期望的位置即可在 RDB 白天出现问题时进行恢复。

但是,我没有看到如何使用 tplogs 恢复 HDB 的说明。我试图创建另一个备份系统来将 hdb 文件夹也同步到 S3。设置和使用至少两倍的存储空间将需要更多的工作,并且是冗余的。因此,如果没有必要,那么我想避免这个额外的步骤。

如果我们失去对 HDB 文件夹的访问权限,是否有办法从 tplogs 恢复 HDB,或者我是否需要为 HDB 文件夹添加另一个备份系统?谢谢。

最佳答案

将日志文件重播到 HDB。

.Q.hdpf[`::;get `:tpLOgFile;.z.d;`sym]

根据我的经验,如果您从 TP 日志文件构建 HDB,请使用 get 函数加载 tp 日志文件并使用 dpft 保存它,这是高效的。

如果你想使用-11!函数,那么你必须提供一个upd函数(-11!从tp日志文件中读取每一行并调用upd函数,然后insert data to in memory table) 将数据加载到内存中,然后将数据保存到磁盘上。

在这两种情况下,您都必须将数据加载到内存中,但通过使用 get 函数,您可以跳过 upd 函数调用

-11! 函数对于构建 RDB 非常有效,因为它不会加载完整的日志文件。

有关更多详细信息,请阅读下面的链接 http://www.firstderivatives.com/downloads/q_for_Gods_July_2014.pdf

关于backup - 如何使用 tplogs 恢复 HDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35665614/

相关文章:

sql-server - Azure 导出 SQL 数据库示例

backup - 您如何备份您的开发机器?

c# - NSFileManager.SetSkipBackupAttribute() 是否也适用于(递归)路径?

database - 将 csv 文件数据加载到表中

kdb - 通过从行组创建列来转换表

kdb q - 有效地计算平面文件中的表

json - 将json字符串解析到kdb表的通用函数?

backup - 带文件后端的 Hashicorp Vault 备份

ubuntu - q 解释器不记忆 Ubuntu 16.04 上的历史

windows - 将 collabnet subversion edge 备份到另一个硬盘