2500万条数据的处理,求解! 100个网站,每个网站有500部小说,每部小说500个章节,共约25,000,000条数据。而我要查询某一部小说的全部章节内容,就要去查遍整个数据库的25,000,000条数据,太慢!太慢!怎么办?初步打算:每部小说建一个表,共建500个表,搜索时,直接搜索该表(分开后每个表越5万条记录)。高手们,有其他的好办法吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个不大,直接一个小说表,一个章节内容表,在内容表的小说id上建立索引,查询根据id查,应该很快的 小说的章节分布不要太那么散乱么,一部小说的章节基本在一块就好了。根据小说的ID基本大致可以确定章节ID的范围的话就明显可以缩小查询范围了,如果给ID加上索引的话应该会很快。另外,数据库支持分区么,分区就更好了,一部小说分一个区 数据不算大。但必须要建索引,针对你要查的字段建立索引。还有就是优化。向like,函数之类的东西不要用。在表与表之间的连接要在where之前搞定, 关于更多优化 看看这里吧http://hi.baidu.com/shenwenchao1/blog/item/1f8e14dda5f657abcc1166d2.html 用lucene全文检索会不会快一点? 2500w不算大。另外搞不懂为什么100个网站也要加进来?网站与小说应该是N->N的一个关联。查小说应该只找小说ID及所有章节ID就完,25W的查询 想什么呢小说有小说表,章有章表,你的数据库怎么设计的再说正如楼上说的,你就算全部弄到一张表里面来,select出来也不会像你描述的那么慢,除非你用了夸张的修辞手法把你查询的方式列出来吧 章节表那多存一个小说的id 然后建立索引create index 章节_index on 章节(小说id) 查询书的章节内容,意味着你需要做全文检索,那直接通过数据检索必须是死路一条。就算你分解成500个表也不会解决问题。应该用专业搜索引擎来解决此类问题,lucene就是其中一个非常优秀的开源搜索引擎。配合你适当业务的分解,可实现非常理想的搜索效果。 字符串转换成16位的ascii码 50 分 求 GEF-runtime-3.0.1.zip 在哪里下载? 一个简单的问题 JSP编程指南(第二版) [英文书名:Profession JSP 2nd Edition]书中源码 java里怎么转型啊? 怎么才能让Tomcat识别我已经刷新了*.class? 请问在LINUX如何把MYSQL连接到JSP上? Tomcat小总题,可是对我来说是大问题?以下错误提示,是什么原因? 一个jsp表单传输的问题?救急 dhtmlxgrid怎么默认选择第一行数据? 求jsp+wml的源码 新手求教怎么把String类型的字符插入到数据库中--在线等
根据小说的ID基本大致可以确定章节ID的范围的话就明显可以缩小查询范围了,如果给ID加上索引的话应该会很快。另外,数据库支持分区么,分区就更好了,一部小说分一个区
另外搞不懂为什么100个网站也要加进来?
网站与小说应该是N->N的一个关联。查小说应该只找小说ID及所有章节ID就完,25W的查询
再说正如楼上说的,你就算全部弄到一张表里面来,select出来也不会像你描述的那么慢,除非你用了夸张的修辞手法
把你查询的方式列出来吧