我有一个场景,我将逐行传递给 Hive UDF,并且需要对每一行执行一些验证。
这些验证是使用一些预先定义的元数据执行的,我需要从外部资源加载这些元数据。
我的问题是,我能否将此元数据仅在 init 中加载一次并将其应用于所有行。作为加载,每行的每次元数据都会大大降低性能。
最佳答案
除非此元数据发生很大变化,否则我认为最好的办法是将该元数据保存在 HDFS 中。在构造函数中读取它,然后除非映射器启动,否则您不必读取它。
关于hadoop - 跨通用 UDF Hive 保存状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26241670/