我正在使用Clojure每小时提取10个XML文件,每个文件大约10 MB。此脚本在服务器计算机上运行 XML文件现在被解析并存储到RDBMS中(所有这些都是使用本机Clojure代码完成的。)
考虑到我的情况,如果我使用Hadoop Map / Reduce解析XML文件,我会获得更多好处吗?或者它会有点矫枉过正?
答案 0 :(得分:8)
在这种情况下,使用Hadoop绝对是一种过度杀伤力。如果你使用Hadoop来解析10个文件,那么就等了
如果你的文件最多都是10 Mb,那么我没有看到太多的优势,你将从JVM启动和过多的IO中获得显着的开销。
我想你应该在每个文件交叉100-150 Mb时考虑Hadoop
答案 1 :(得分:3)
我有两个可用于比较的clojure示例:
当然,这取决于服务器的处理能力,但一切都是在clojure中完成的,没有任何瓶颈。