• mycat 学习


    1、什么是mycat

    mycat是一个抽象的数据库代理,可以实现分表分库,适用于不同类型的数据库,比如oracle、mysql、sql server等等。mycat有利于提升开发速度,降低开发成本,但是相比直接代码实现效率比较底,建议如果使用的数据库相同时代码实现分库分表更加效率。

    2、一般数据库的拆表方式

    随着时间的推移,业务的不断发展,用户数量大大增长,就会存在表操作越来越慢的问题,普通的优化代码结构、优化sql已经无法实现对效率的优化,这个时候就需要对已有表进行拆分来优化效率,拆分的方式大概有2个方向,横向拆分和纵向拆分。

    1)横向拆分

    所谓的横向拆分就是对表字段进行拆分,常用字段和不常用字段拆分后,由于表数据量减少进而提升效率,但是由于修改了表结构,需要对原有代码进行修改。

     拆分后

    2)纵向拆分

    纵向拆分是对表数据进行拆分,常用的拆分方式对字段id取余,并且新增业务对应编号表,新增数据时保存该数据的业务编号,更新时根据业务编号获取对应表进行更新数据,查询时使用视图查询。根据实际业务需求可以对其他字段进行拆分,方便后续扩展。

  • 相关阅读:
    [django]django models最佳实战
    [vue]模拟移动端三级路由: router-link位置体现router的灵活性
    [js]顶部导航和内容区布局
    [django]django查询最佳实战
    [vue]webpack使用样式
    [vue]webpack中使用组件
    [vue]组件的导入
    [django]django权限简单实验
    [django]前后端分离之JWT用户认证
    [django]drf知识点梳理-权限
  • 原文地址:https://www.cnblogs.com/huanlingjisi/p/12767826.html
Copyright © 2020-2023  润新知