我希望将某些表指定为复制到所有TiKV存储,以便它们始终可用于本地连接(从而减少TiDB级别的昂贵的分布式连接)。这将允许TiKV协处理器本地加入这个表,因为它总是可用的(即:复制到每个TiKV)。在OLAP术语“维度”和“事实”中,这是一个维度表。在这个场景中,我想切分事实并复制维度。看起来TiDB把所有的事情都当做一个分片的事实。这可以做到吗?如果不是,可以用其他技术来近似吗?代码库在多大程度上允许这种类型的特性?
发布于 2018-11-16 10:30:29
目前,TiDB将每个表拆分成region,在region级别进行复制。很难将一个表复制到每个TiKV服务器中,即使它只包含一个区域。例如,TiKV集群中有100个节点,但配置的区域副本数量为5个。
我们不需要在TiKV协处理器中进行连接操作。我们可以从TiKV中读取每个维表来多个TiDB节点,并根据事实表的数据分布将涉及到的每个TiDB节点关联到事实表的一部分。因此,join操作是在TiDB层完成的。
上面描述的技术还没有实现。但它已经在我们的路线图上了。
https://stackoverflow.com/questions/53314007
复制相似问题