我想将某些表指定为复制到所有TiKV存储,以便它们始终可以在本地加入(从而减少TiDB级别昂贵的分布式加入(。这将允许TiKV协处理器在本地加入该表,因为它总是可用的(即:复制到每个TiKV(。在OLAP术语"维度"one_answers"事实"中,这是一个维度表。在这个场景中,我想分割事实并复制维度。TiDB似乎将一切都视为一个碎片化的事实。这能做到吗?如果不是,可以用其他技术来近似吗?代码库允许这种类型的功能的适应性如何?
目前,TiDB将每个表拆分为区域,并在区域级别进行复制。很难将一个表复制到每个TiKV服务器中,即使它只包含一个区域。例如,TiKV集群中有100个节点,但配置的区域副本数量为5。
我们不需要在TiKV协处理器中执行联接操作。我们可以从TiKV中读取每个维度表来乘以TiDB节点,并根据事实表的数据分布将每个涉及的TiDB节点关联到事实表的一部分。因此,连接操作是在TiDB层中完成的。
上面描述的技术还没有实现。但它已经在我们的路线图上了。