如何在Hive视图中对列进行模糊处理?

时间:2012-06-13 14:04:09

标签: hadoop md5 hive hue

我为表创建了一个视图:

CREATE VIEW anonymous_table
AS SELECT id, value FROM sensitive_table

并且希望敏感表的id字段以某种方式被混淆,例如MD5哈希或类似的东西,以便查询视图的人无法看到实际的id。在Hive中这样做的好方法是什么?

1 个答案:

答案 0 :(得分:2)

一些选项:

  • 根本不要在您的视图中包含ID:

    CREATE VIEW ES SELECT“HIDDEN ID”,来自sensitive_table的值;

  • 如果您仍需要为每条记录提供不同的密钥,您可以编写UDF来执行您喜欢的任何转换:

    ADD JAR mycode.jar; CREATE TEMPORARY FUNCTION hash为'com.example.MyUDF'; CREATE VIEW东西作为SELECT hash(id),来自sensitive_table的值;

  • 奖励:看到您的用户无论如何都可以查看敏感表,您可以在ID到达蜂巢之前对其进行哈希处理?这可能是最好的选择。

无论哪种方式,如果您正在处理ID,那么如果人们仍然需要依赖ID来加入/聚合等,那么拥有稳定的哈希函数将是您所需要的。

Here is the link to how to create a UDF