读写分离:简单的说是把对数据库读和写的操作分开对应不同的数据库服务器,这样能有效地减轻数据库压力,也能减轻io压力。主数据库提供写操作,从数据库提供读操作,其实在很多系统中,主要是读的操作。当主数据库进行写操作时,数据要同步到从的数据库,这样才能有效保证数据库完整性。

分库分表:

水平分区:分表

垂直分区:分库

水平分表也称为横向分表,比较容易理解,就是将表中不同的数据行按照一定规律分布到不同的数据库表中(这些表保存在同一个数据库中),这样来降低单表数据量,优化查询性能。最常见的方式就是通过主键或者时间等字段进行Hash和取模后拆分。如下图所示:

垂直分库在“微服务”盛行的今天已经非常普及了。基本的思路就是按照业务模块来划分出不同的数据库,而不是像早期一样将所有的数据表都放到同一个数据库中。如下图:

oneProxy分库分表总结:

中间件或架构层中一部分是为了解决应用之间的通信及服务治理,另一部份是为了解决数据的分布问题。相当于是将前面例子中讲的分区表里的每一个分区分别移到一台不同的硬件服务器上,而让应用的开发基本感知不到或者能少做调整就能适应这种扩展,原理非常类似于分区表,但称之为分库分表。

OneProxy将分区表的概念从数据库层抽象到SQL转发器层,然后对通信协议进行分析,可根据SQL里的表名及传入参数进行对上层应用透明的智能路由,从而达到虚拟分区表的效果,也就实现了对应用透明的分库分表的功能。

在OneProxy里同样支持按范围(Range)、按值(List)、按哈希算法(Hash)进行虚拟分库分表

mysql数据库中间件_Mysql 数据库中间件相关推荐

  1. mysql断网_mysql数据库断网链接

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  2. mysql 关闭锁_mysql数据库取消锁

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  3. mysql 表上限_mysql 数据库表的上限

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  4. 数据库 mysql详解_MySQL数据库详解

    一.数据库概述 1.数据库与文件系统文件系统对比. 数据冗余和不一致性 数据访问 数据格式相对独立 数据完整性和原子性 数据的并发访问 数据的安全性问题 2.数据库概念 1.DBMS:数据库管理系统 ...

  5. mysql数据库监控程序_mysql数据库监控利器lepus天兔工具安装和部署

    需要的核心包如下: 以下软件包只需要部署在监控机即可.被监控机无需部署. 1.MySQL 5.0及以上(必须,用来存储监控系统采集的数据) 2.Apache 2.2及以上 (必须,WEB服务器运行服务 ...

  6. mysql数据库语法_MySQL数据库基本语法

    SQL WHAT(SQL是什么?) Structured Query Language:结构化查询语⾔ WHY(为何要使用SQL?) 难道仅仅使用SQL Server Management Studi ...

  7. Mysql常用词汇_mysql 数据库常用单词

    说明:以下单词可能有多种含义,此文档只针对编程做解释.单词不多,熟能生巧,每日认真读读写写,效果不错.如有错误,请谅解并指出,谢谢大家! 黄金超 2017-4-7 连接MySQL数据库: mysql ...

  8. mysql删除原则_MySQL数据库的增删选查

    数据库是专门存储数据对象的容器,这里的数据对象包括表.视图.触发器.存储过程等,其中表是最基本的数据对象. 创建数据库 在 MySQL 数据库中存储数据对象之前,先要创建好数据库. 语法: creat ...

  9. mysql select表达式_MySQL数据库SELECT查询表达式解析

    数据的管理在很大一部分是在进行查找工作,而SELECT占据了很大的一部分 SELECT select_expr [,select_expr...] [ FROM table_reference WHE ...

  10. mysql数据库导出_MySQL数据库导入导出详解[转发]

    1. 概述 MySQL数据库的导入,有两种方法: 1) 先导出数据库SQL脚本,再导入: 2) 直接拷贝数据库目录和文件. 在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况 ...

最新文章

  1. linux 26,Linux常用26条命令
  2. C++ dll 动态链接库的创建与调用
  3. Windows Phone开发(27):隔离存储A
  4. 2021CCPC网络赛部分题解
  5. 【python数据挖掘课程】十六.逻辑回归LogisticRegression分析鸢尾花数据
  6. 操作数栈的字节码指令执行分析
  7. 什么是计算机网络教学反思,《计算机网络实训之常用的网络工具》教学反思
  8. Fisher线性判别分析(LDA)
  9. 沟通管理-输入、输出、工具和技术
  10. 【Modelsim】下载安装教程
  11. graphpad做折线图_GraphPad 折线图要这样玩
  12. 音乐流媒体应用Polaris
  13. 批量同时创建邮箱和AD账户
  14. 软件测试工程师面试题之数据库
  15. java web 使用 Freemarker 导出word,zip包导出多个word
  16. Python | 动态规划解决“返回第n个丑数”
  17. java的博_小博老师解析Java核心技术 ——I/O流
  18. 【面经分享】2022阿里Java后端实习面经,已上岸
  19. java类的各访问级别,Java构造函数具有比其类更宽的访问级别
  20. E销宝:dsp广告应该怎么投放?

热门文章

  1. Docker入门(这篇真的够详细)
  2. 硕士码农的offer档次排行(个人版)
  3. 约瑟环问题(全部代码在本文下方)
  4. PR视频中的素材如何裁剪?
  5. 华硕X55笔记本更换SSD硬盘
  6. AdSec 中开裂梁截面刚度计算
  7. 杜比视界视频Pot Player正常颜色播放方法
  8. 790leetcode多米诺和托米诺平铺
  9. 微信开发 - 公众号授权登录方案(含跳转关注公众号)
  10. 关于网站策划工作的分析