分区和分片的区别_PHP: 分区和分片 - Manual
分区和分片
数据库群组是由于各种各样的原因建立的,他可以提升处理能力、容忍错误,并且
提升大量服务器同时工作的的性能。群组有时会组合分区和共享功能,来将大量复杂的任务
分拆成更加简单的任务,更加可控的单元。
插件可以支持各种各样的 MySQL 群组,一些群组会内置一些分区和共享的方法,他们可以
被透明的使用。插件支持最常用的 MySQL 主从同步表过滤和共享 (应用级分区)。
MySQL 主从同步支持过滤方式的分区,他可以让你创建所有数据库同步,或者部分数据库同步。
这样就要求应用能够拥有同样的策略,你可以通过
从 1.5.0 版本开始,可以通过节点组过滤和 SQL hints 完成手动的分区和共享。
节点组过滤器可以让你将 master 和 slave 命名成一个符号。 范例中,
master_0 和 slave_0
被放在一个命名为 Partition_A 的组中。他们能够完全的组成一个群组。
例如,你可以使用一个节点群组用于共享,并且使用使用群组名称作为一个地址共享,
就像 Shard_A_Range_0_100
示例 #1 Cluster node groups
{
"myapp": {
"master": {
"master_0": {
"host": "localhost",
"socket": "\/tmp\/mysql.sock"
}
},
"slave": {
"slave_0": {
"host": "simulate_slave_failure",
"port": "0"
},
"slave_1": {
"host": "127.0.0.1",
"port": 3311
}
},
"filters": {
"node_groups": {
"Partition_A" : {
"master": ["master_0"],
"slave": ["slave_0"]
}
},
"roundrobin": []
}
}
}
示例 #2 通过 SQL hints 完成手动分区
if ($hint) {$sql=$hint.$sql;
}
if (!($res=$mysqli->query($sql))) {printf("[%d] %s",$mysqli->errno,$mysqli->error);
returnfalse;
}$row=$res->fetch_assoc();printf("%d - %s - %s\n",$row['_thread'],$row['_hint'],$sql);
returntrue;
}$mysqli= newmysqli("myapp","user","password","database");
if (!$mysqli)/* Of course, your error handling is nicer... */die(sprintf("[%d] %s\n",mysqli_connect_errno(),mysqli_connect_error()));/* All slaves allowed */select($mysqli,"slave_0");select($mysqli,"slave_1");/* only servers of node group "Partition_A" allowed */select($mysqli,"slave_1","/*Partition_A*/");select($mysqli,"slave_1","/*Partition_A*/");?>
6804 - slave_0 - SELECT CONNECTION_ID() AS _thread, 'slave1' AS _hint FROM DUAL
2442 - slave_1 - SELECT CONNECTION_ID() AS _thread, 'slave2' AS _hint FROM DUAL
6804 - slave_0 - /*Partition_A*/SELECT CONNECTION_ID() AS _thread, 'slave1' AS _hint FROM DUAL
6804 - slave_0 - /*Partition_A*/SELECT CONNECTION_ID() AS _thread, 'slave1' AS _hint FROM DUAL
默认的,插件使用所有配置的 master 和 slave 进行查询操作。但是如果一个查询,使用
/*node_group*/ 的 SQL hint,那么插件将只使用在
node_group 列出的服务器进行查询操作。所以,SELECT
查询操作,只会在 /*Partition_A*/ 列出的 slave_0
中进行。
分区和分片的区别_PHP: 分区和分片 - Manual相关推荐
- 分区和分片的区别_MySQL分区与分片的差异
要了解分区与分片之间的差异,首先我们需要知道什么是分片与分区.分片:分片Sharding 不是一门新技术,而是一个相对简朴的软件理念.众所周知,MySQL 5 之后才有了数据表分区功能,那么在此之前, ...
- 数据库分区、分表、分片的区别
一.分区的概念 分区并不是生成新的数据表,而是将表的数据均衡分摊到不同的硬盘,系统或是不同服务器存储介子中,实际上还是一张表.另外,分区可以做到将表的数据均衡到不同的地方,提高数据检索的效率,降低数据 ...
- 分区和分片的区别_Mysql分表和分区的区别、分库分表介绍与区别
分表和分区的区别: 一,什么是mysql分表,分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看: [root@BlackGhost test]# ls |grep user a ...
- mysql分区和分表比较_MySQL分区和分表的区别与联系
一.分区和分表简介 分表 就是将一张大表分成N个小表. 分区 将一张大表的数据分成N个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上. 二.分区和分表的区别 1. 实现方式 1.1 分表 My ...
- mysql 分区 mycat 分片_Mysql系列六:(Mycat分片路由原理、Mycat常用分片规则及对应源码介绍)...
一.Mycat分片路由原理 我们先来看下面的一个SQL在Mycat里面是如何执行的: select * from travelrecord where id in(5000001, 10000001) ...
- hive静态分区,动态分区,分桶区别
文章目录 绪论 创建静态分区表 1.准备数据 2.建表语句 3.添加分区,加载数据 4.进入网页(50070)查看 创建动态分区表 1.准备数据 2.建表语句 1.首先创建普通表 2.加载数据 3.创 ...
- 本人有一个60G的金士顿的固态硬盘,测了4K分区对齐前后的区别,发现性能相差很大...
本人有一个60G的金士顿的固态硬盘,测了4K分区对齐前后的区别,发现性能相差很大,不说了,先上图,软件优化和测分软件在下边,有下载的网址: 先上没有4K分区对齐的跑分 注意下图中 31k- BAD, ...
- 硬盘主分区和逻辑驱动器的区别
主分区,也称为主磁盘分区,和扩展分区.逻辑分区一样,是一种分区类型.一个硬盘可以有一个主分区,一个扩展分区,也可以只有一个主分区没有扩展分区.逻辑分区可以若干.主分区是硬盘的启动分区,他是独立的,也是 ...
- Linux主分区,扩展分区,逻辑分区的联系和区别
基本概念 硬盘分区有三种, 主磁盘分区.扩展 磁盘分区. 逻辑分区. 一个 硬盘 主分区至少有1个,最多4个,扩展分区可以没有,最多1个.且 主分区+扩展分区总共不能超过4个. 逻辑分区可以有若干个. ...
最新文章
- UIScrollView 的代理方法简单注解
- Cocoapods安装过程【转载】
- 对话框中加入标签页的5种方法
- 配置MYSQL基于GTID 主从复制详细解析及步骤
- 成功解决win10下dos中运行tensorboard --logdir=logs和调用events.out.tfevents一闪而过的问题
- FPGA学习之路—接口(2)—I2C协议详解+Verilog源码分析
- 市值突破3000亿,Fortinet发布2021Q2财报
- linux的i o模型,I/O模型的分类及简介
- linux工作笔记-linux之间文件传输图形界面工具gftp
- JavaWeb项目文件夹生成Zip压缩包并下载到本地
- systemtap调试linux内核源码,内核调试工具SystemTap:适合懒人的printk替代品
- Jira迁移及内存调整
- QTreeView实现圆角样式
- Android Studio 配置 NDK 开发编译环境
- SpringBoot整合mybatis一直失败差不到数据,解决方案
- 嵌入式开发之 STM32自行车码表(图文)
- 置信区间 VS 置信水平
- Vivado综合running时间太长
- python解析FreeMind思维导图
- 通信扰码的原理与实现
热门文章
- 川职院单招计算机考什么专业,四川单招考什么科目
- arcgis批量将栅格里的nodata转为0
- 【转】应用架构之道:分离业务逻辑和技术细节
- 【转】ABP源码分析二十:ApplicationService
- 【转】对称加密和分组加密中的四种模式(ECB、CBC、CFB、OFB)
- 【转】VS2005 CTP 版本这个CTP是什么意思
- 第七节:语法总结(1)(自动属性、out参数、对象初始化器、var和dynamic等)
- SharePoint2010开发最佳实践
- python合并单元格 索引_python笔记:纵向合并表格
- ffmpeg 截图太模糊了_PPT图片模糊?导师说放大!