我的平台是Spark 2.1.0,使用的是Python语言。
目前我有大约100个随机森林多分类模型,它们已经被保存到HDFS中。同时,HDFS中也保存了100个数据集。我希望使用相应的模型对数据集进行预测。如果模型和数据集能够在内存中缓存,预测速度将提高十倍以上。
但是我不知道如何缓存模型,因为模型不是RDD或DataFrame。
谢谢!
回答:
TL;DR 如果数据在预测过程之外会被重复使用,只需cache
数据,如果不会重复使用,甚至可以跳过这一步。
RandomForestModel
是一个本地对象,不依赖于分布式数据结构,没有DAG
需要重新计算,预测过程是一个简单的、仅映射的作业。因此,模型无法被缓存,即使可以缓存,操作也毫无意义。