"A1=demo.query(“select id from test”).keys@[链接] (id) A2=demo.cursor(file).fetch() A3=A2.join@[链接] .."
A1=demo.query(“select id from test”).keys@m (id)A2=demo.cursor(file).fetch()A3=A2.join@d (id,A1)得出 A2 在 A1 不存在的数据
1 数据库 IO 很慢,读上亿行就很慢2 数据读入内存占空间很大,Java 分配内容以及 gc 也会很耗时间。相比之下,keys 和 join@d 是小头。
性能优化(外存的计算)是个手艺活,要根据实际场景想办法。这个代码,只能说得出慢在哪里,但没有足够用于优化的信息(比如数据能不能出库,能不能先排序,其中某个数据是不是比较小?)。SPL 的高性能任务,从知识储备角度上看,是有些难度的。需要花几周时间系统地学习那些原理,把一些练习都做一遍,以理解存储和算法,不适合一上来就搞。
1 数据库 IO 很慢,读上亿行就很慢
2 数据读入内存占空间很大,Java 分配内容以及 gc 也会很耗时间。
相比之下,keys 和 join@d 是小头。
性能优化(外存的计算)是个手艺活,要根据实际场景想办法。
这个代码,只能说得出慢在哪里,但没有足够用于优化的信息(比如数据能不能出库,能不能先排序,其中某个数据是不是比较小?)。
SPL 的高性能任务,从知识储备角度上看,是有些难度的。需要花几周时间系统地学习那些原理,把一些练习都做一遍,以理解存储和算法,不适合一上来就搞。