
1 plprapper 2014-08-08 17:50:02 +08:00 ID不变 是啥意思? |
2 dong3580 2014-08-08 17:56:51 +08:00 每个表加个id嘛,自动增长,发现id大于1KW,try {create table},然后id发现大于2kw就再次try{create table}。 查询的时候,如果id在2KW-3KW之间,就在xxx_3中查找,所以,你可以封装个简单的逻辑方法来处理。 我去年改一个网站就发现它是这么玩的。 再看了看,你要求每个表id不变么?其实还是差不多,第一个表id 0-1kw,第二个表还是id 0-1kw,例如查询a(2kw-3kw)的话就在, (Int)(a/1KW)取整拼接上xxx_就是表名了,不过可能没第一种方便罢了。 另外,不建议这么做,感觉好混乱的样子。 |
3 wodemyworld 2014-08-08 18:06:00 +08:00 内存不足,你多分几个表有用么 |
4 wodemyworld 2014-08-08 18:06:40 +08:00 顶多是查询速度快点罢了,而且这样分表和纵向分区有啥区别呢 |
5 letitbesqzr OP @wodemyworld 建立索引的时候,单表太大了 会出现内存不足 |
6 Mac 2014-08-08 19:16:14 +08:00 加内存 |
7 letitbesqzr OP @Mac 32G了... |
8 letitbesqzr OP @Mac @wodemyworld @dong3580 @plprapper 其实就是想做一个,,所谓的"密码查询"的东西... 没怎么接触过大数据,之前一时糊涂,所有数据都导到一张表.. 建立索引的时候各种问题.. 现在把每个网站的"密码" 都单独分一张表,然后再建立索引,这样就正常查询了 速度也很快.. 用的solr 8E数据大概0.2秒 |
9 x10ng 2014-08-08 22:53:25 +08:00 写个脚本就可以做到啊,你要对什么字段建索引? 另外,可以试试mongodb |
10 bojieyang 2014-08-08 23:57:27 +08:00 这个就是水平分表嘛,可以参考TDDL。 |
11 eslizn 2014-08-09 00:57:23 +08:00 其实分表的关键在于怎么路由表 |
12 letitbesqzr OP @eslizn 这个倒是无所谓,用solr 建立好索引后,直接是全部表查询. |
13 letitbesqzr OP @bojieyang 3Q 但是表已经建立好了 |
14 ETiV 2014-08-09 03:32:04 +08:00 insert into table_1[2,3,4,5,6,7,8,9](columns, ...) select columns,... from source_table where id % 10 = 1[2,3,4,5,6,7,8,9]; 酱紫? |
15 Vonex 2014-08-09 04:31:11 +08:00 社工库? |
16 letitbesqzr OP @Vonex 是的 .. |
17 frankzeng 2014-08-09 10:07:38 +08:00 别分表,用分区嘛 |