1
1
使现代化 视图的可配置性似乎可以通过UDF实现。 我把先前的答案全部删掉了。 为了显示以上内容,我创建了一个简单的UDF,它输出一个随机双精度。
并且,在hive中注册jar以创建我的udf:
假设我已经有一个简单的表
然后连续
请记住,不能使用
因此,实现这种可配置性的方法是在UDF类代码中获取配置。这
answer
提到如何
我提出了一个相关的 Question 是否可以访问UDF中的配置单元变量。如果你有答案(如果仍然没有答案),可以考虑提供帮助。
原因与第一种方法不起作用的原因相同。 在创建视图时,将始终对构成视图的select查询进行计算。因此,即使您已将一些变量传递给select查询中用于形成视图的UDF,也会在该点对UDF本身进行评估,以实现视图,并且视图内容在当时是固定的。
下次访问视图时(无
因此,除非您愿意调用与视图相关的DML查询以及
看到这个了吗 answer 观察无论使用何种变量,观点始终是如何具体化的。UDF的情况也是如此。 |
2
1
@Alex-在第二种方法中,下面是访问
该代码在hive 1.2上进行了测试 要测试代码,请执行以下操作:
|
wttttt · Spark scala数据框udf返回行 6 年前 |
LalaJava · Java方法字符模式-初学者 6 年前 |
user8704018 · 定义函数的一种奇怪类型 6 年前 |
newbieHalp · 多维数组中对列进行分组和求和的C函数 6 年前 |
Joshua Howard · 火花聚合器无法正常工作 6 年前 |