longjianghu 发表于 2010-7-20 12:06:00

2千条记录的数据递归如何提升效率?

现在有一个教学课程是采用无限分类递归的方式处理的,有2000条记录目前有4级.加载的时候很慢,我想把数据排序之后序列化生成一个PHP文件然后读取进来反序列化来解决这个问题,有没有朋友提供一个更好的方法来解决加载缓慢的问题?原来也想过用ajax处理,但是不知道服务器返回这个数组的效率如何.

hj_545 发表于 2010-7-21 00:04:57

本帖最后由 hj_545 于 2010-7-21 00:14 编辑

想看看数据~
利用数据库的导出功能,导出数据后读取~再操作
导出成HTML格式或者其他

hj_545 发表于 2010-7-21 00:16:06

导出后可以使用JQ插件什么的,排序下,你想怎么排都可以!

BillyFan 发表于 2010-7-22 00:23:36

如果是属于“经常读取,偶尔更新”的表的话,
可以考虑把无限极分类的方法从“递归树”改成“预排序遍历树”,

经常更新的话。。。。
ajax也不错~~~~~

longjianghu 发表于 2010-7-22 12:55:58

预排序遍历树?这个能不能详细说说.

BillyFan 发表于 2010-7-22 17:54:57

这里有两页是英文资料:
http://dev.mysql.com/tech-resources/articles/hierarchical-data.html
http://articles.sitepoint.com/article/hierarchical-data-database/2

这里好像有个中文版的:
http://www.be-evil.org/post-168.html

google一下 无限极分类 预排序遍历树
应该能找到很多相关资料。

适合大量内容、层级较多、经常读取、较少更新的情况,
效率比递归要高的多的多

longjianghu 发表于 2010-7-24 20:12:01

谢谢,先去研究下!

uponcn 发表于 2010-7-27 11:53:45

数据库结构如何,详细说下
2000条数据查询应该不慢的

longjianghu 发表于 2010-7-28 12:32:12

本帖最后由 longjianghu 于 2010-7-28 12:46 编辑

改天再测试一下,找原因了.

ares333 发表于 2010-7-30 17:57:25

我给你讲吧,你说加载很慢那只能是PHP处理递归能力有限,序列化是最好的办法,ajax肯定不好用,延迟不说,无端增加复杂度,搞开发就是能怎么简单就怎么来,要学着做一个聪明的懒人.
还想更快,行,找一些专门的算法的书,我想那应给不是咱搞PHP开发的重点吧?
页: [1]
查看完整版本: 2千条记录的数据递归如何提升效率?