我正在 Hadoop 中编写一个 Java MapReduce 程序,每个 reducer 都需要访问一个静态 XML 文件(其中包含一些关于将规则应用于值列表的业务逻辑)。我决定将此文件存储在分布式缓存中,然后利用分布式缓存 API 在每个减速器中访问它(序列化它)。我还没有实现这个,但是在 HDFS/分布式模式下使用这个功能时,API 看起来很简单。但是,是否可以在伪分布式独立模式下使用它来进行测试?它将如何运作?
另外,在每个 reducer 中序列化文件是不是一个坏主意?我愿意就将“全局静态数据”分发给减速器的其他方式提出建议。
谢谢!