数据库层:
主要工作是表shardkey的设计,shardkey是TD应用适配的核心,对此,我行对每个表逐一进行了分析。在新的应用系统,数据库语句通过namesql单独管理,可以很好的将具体表涉及的语句统计出来,再根据sql对表的shardkey、以及索引、甚至结构进行调整。
应用层:
应用层本身有良好的设计,所以主要工作就是对namesql中sql语句的调整。语句调整分两个阶段,一是替换函数,变更语法,使应用能跑起来。二是进行性能调优。
TD中联表查询,两个表关联条件中如果有shardkey,那么查询效率能充分发挥分布式的优势,性能很好,但如果没有对等的shardkey,查询将非常缓慢,实时交易必须将这种情况全部解决。
厂商的支持非常重要,在系统建设过程中,行方、应用方要全力投入,做好改造工作,同时还要进行严格的测试,发现的问题,需要分布式数据库厂商及时支持,修改。
收起