RDB和HDB的kdb +复制

时间:2019-03-04 10:36:40

标签: kdb

我试图弄清楚如何实现/配置kdb +的RDB和HDB复制 如何将RDB和HDB配置为在不同主机上具有两个具有相同数据的实例?

2 个答案:

答案 0 :(得分:1)

最简单的方法是交叉安装tickerplant日志位置和HDB位置,并且可以从两个主机访问它们。然后,第二个主机上的RDB实例只需照常重播tickerplant日志,并订阅相同的tickerplant-但重要的是要不要让第二个RDB在一天结束时减记。它的.u.end应该只从内存中清除数据。

第二个HDB没有我可以想到的任何特殊条件,但是为了使实例自动刷新/重新加载(并获取最新的日期片段),然后执行记录的原始RDB还需要触发第二个HDB的刷新/重新加载。

答案 1 :(得分:1)

您可以尝试使用的其他方法。由于KDB没有复制管理系统,因此副本上的数据可能丢失或数据混乱。因此,您将不得不考虑如何处理这些情况。

处理这些情况的一个简单解决方案是为每次更新维护序列号。万一副本检测到丢失序列或顺序混乱,它可以要求主数据库发送那些丢失序列的数据。

  1. 束缚的tick草植物:您可以尝试设置类似于束缚的tick草植物样式的设置。二级报价器工厂订阅了一级设置,然后二级设置像常规设置一样运行。

  2. 次要RDB / TP订阅了主要RDB :次要RDB或TP从主要RDB获得更新。辅助HDB将正常工作。

  3. 复制管理的单独过程:如果要多个副本,则如果所有副本都连接到主副本,则会增加主副本的负载。而且,管理数据丢失方案将很困难。

    相反,您可以创建一个单独的进程,所有副本都将订阅该进程。主TP / RDB将向该管理器服务发送数据,该服务然后可以处理副本。这样,您还可以将所有副本问题相关的处理逻辑放在一个地方。

    此方法的另一个好处是不需要更改主要TP / RDB服务/逻辑来处理数据问题。经理服务将处理一切。