美文网首页
merge存储引擎分表

merge存储引擎分表

作者: jacky_8897 | 来源:发表于2021-05-10 09:46 被阅读0次

from: https://www.cnblogs.com/djwhome/p/12536068.html

mysql大数据分表后查询

当数据量猛增的时候,大家都会选择库表散列等等方式去优化数据读写速度,举例说明:

1亿条数据,分100张表

1.首先创建100张表

i=0; while(i<=99){
echo "newNumber \r\n";sql="CREATE TABLE code_".i." ( full_code char(10) NOT NULL, create_time int(10) unsigned NOT NULL, PRIMARY KEY (full_code), ) ENGINE=MyISAM DEFAULT CHARSET=utf8"; mysql_query(sql);
$i++;

2.分表规则:

full_code作为主键,对full_code做hash

table_name=get_hash_table('code',full_code);

function get_hash_table(table,code,s=100){hash = sprintf("%u", crc32(code)); echohash;
hash1 = intval(fmod(hash, s)); returntable."_".$hash1;
}

这样插入数据前通过get_hash_table获取数据存放的表名。

3.使用merge存储引擎来实现一张完整的code表

CREATE TABLE IF NOT EXISTS code (
full_code char(10) NOT NULL,
create_time int(10) unsigned NOT NULL,
INDEX(full_code)
) TYPE=MERGE UNION=(code_0,code_1,code_2.......) INSERT_METHOD=LAST ;

通过select * from code就可以得到所有的full_code数据了。

相关文章

  • merge存储引擎分表

    from: https://www.cnblogs.com/djwhome/p/12536068.html[htt...

  • MySQL性能优化(十一)-- 使用Merge存储引擎实现MyS

    一、使用场景 Merge表有点类似于视图。使用Merge存储引擎实现MySQL分表,这种方法比较适合那些没有事先考...

  • MySQL Merge引擎实现分表

    Merge引擎是一组MyISAM表的组合,组合的分表结构必须完全相同,Merge表本身没有数据,对Merge表的操...

  • 4. MySQL的存储引擎

    MySQL的表的存储是有其存储引擎的,表分为表结构、表数据、表引擎与表中的索引等等信息。 1、存储引擎一般分几大类...

  • Mysql 数据库如何分区、分表?

    分表可以通过三种方式:Mysql 集群、自定义规则和merge 存储引擎。分区有四类:RANGE 分区:基于属于一...

  • mysql分表--MRG_MyISAM(Merge)引擎

    merge存储引擎基本介绍和使用规范说明【以下截自MySql手册】:merge存储引擎,也被认识为mrg_myis...

  • MYSQL Merge存储引擎

    说明:mysql Merge存储引擎允许用户把相同表结构的MYISAM表合并成一张表来做查询,修改,删除操作,减少...

  • Mysql数据库如何分区、分表

    分表可以通过三种方式:Mysql集群、自定义规则和merge存储引擎。分区有四类:RANGE 分区:基于属于一个给...

  • MySql表引擎

    1、innoDB表引擎 默认的事务型引擎,最重要最广泛的存储引擎,性能非常优秀数据存储在共享表空间,可以通过配置分...

  • MySQL有存储引擎

    MySQL有多种存储引擎,每种存储引擎有各自的优缺点,可以择优选择使用: MyISAM、InnoDB、MERGE、...

网友评论

      本文标题:merge存储引擎分表

      本文链接:https://www.haomeiwen.com/subject/hfwbdltx.html