1
plprapper 2014-08-08 17:50:02 +08:00 1
ID不变 是啥意思?
|
2
dong3580 2014-08-08 17:56:51 +08:00 1
每个表加个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 1
内存不足,你多分几个表有用么
|
4
wodemyworld 2014-08-08 18:06:40 +08:00 1
顶多是查询速度快点罢了,而且这样分表和纵向分区有啥区别呢
|
5
letitbesqzr OP @wodemyworld 建立索引的时候,单表太大了 会出现内存不足
|
6
Mac 2014-08-08 19:16:14 +08:00 1
加内存
|
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 1
写个脚本就可以做到啊,你要对什么字段建索引? 另外,可以试试mongodb
|
10
bojieyang 2014-08-08 23:57:27 +08:00 1
这个就是水平分表嘛,可以参考TDDL。
|
11
eslizn 2014-08-09 00:57:23 +08:00 1
其实分表的关键在于怎么路由表
|
12
letitbesqzr OP @eslizn 这个倒是无所谓,用solr 建立好索引后,直接是全部表查询.
|
13
letitbesqzr OP @bojieyang 3Q 但是表已经建立好了
|
14
ETiV 2014-08-09 03:32:04 +08:00 1
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 1
社工库?
|
16
letitbesqzr OP @Vonex 是的 ..
|
17
frankzeng 2014-08-09 10:07:38 +08:00
别分表,用分区嘛
|