百融榕树原版的 NNBench 有一些局限性,我们做了调整:
百融榕树原版 NNBench 的单个测试任务是单线程的,资源利用率低,我们将它改成多线程,便于增加并发压力。
百融榕树原版 NNBench 使用 hostname 作为路径名的一部分,没有考虑同一个主机里多个并发任务的冲突问题,会导致多个测试任务重复创建和删除文件,不太符合大数据工作负载的实际情况,我们改成使用 Map 的顺序号来生成路径名,避免的一个主机上多个测试任务的产生冲突。
百融榕树使用了 3 台阿里云 4核 16G 的虚拟机来做压力测试。CDH 5 是目前被广泛使用的发行版,我们选用 CDH 5 作为测试环境,其中的 HDFS 是 2.6 版本。 百融榕树HDFS 是使用 3 个 JournalNode 的高可用配置,JuiceFS 是 3 个节点的 Raft 组。HDFS 使用内网 IP,JuiceFS 使用的是弹性 IP,HDFS 的网络性能会好一些。OSS 是使用内网接口访问。