zoukankan      html  css  js  c++  java
  • Mycat分库分表

    垂直切分,按照功能模块或者业务维度将相关联的一类表部署在相同的数据库上(比如【SOA{Service-Oriented Architecture}】中每个服务都有一个单独的数据库)
    水平切分,大表切分为小表(mysql单表超过1000万条记录后,查询性能会下降)10亿的表拆分为10张表,水平切分策略:一致性哈希,日期拆分,范围拆分

    拆分如何解决跨库join
    1在服务层之间调用
    2全局表
    3字段冗余

    唯一主键,采用snowflake算法

    分布式事务,采用最终一致性

    如何权衡当前的存储需要优化,单表数据量到达了1000万条记录,并且还在持续增加

    假如有业务要处理跨分片数据排序分页,则要手动拼接

    Mycat原理

    1 customer 不使用分库分表

    2 item  跨库分表

    3 t_order 单库分表

    在用navicat连接mycat时候,有些逻辑表,直接点击会报错,但是查询界面写SQL语句不会报错

  • 相关阅读:
    JavaScript伪协议
    http-equiv
    js 获取鼠标坐标
    js daily
    Swift中属性Properties
    Swift中类和结构体
    Swift和Java在枚举方面的比较
    Swift特有语法:闭包
    Swift和Java在函数(method/方法)方面的比较
    Swift和Java控制流比较
  • 原文地址:https://www.cnblogs.com/moris5013/p/10822498.html
Copyright © 2011-2022 走看看