【问题标题】:How to encrypt data in hdfs , and then create hive or impala table to query it?如何对 hdfs 中的数据进行加密,然后创建 hive 或 impala 表进行查询?
【发布时间】:2016-10-28 09:37:54
【问题描述】:

最近,我遇到了一个情况: 远程hdfs中有一个数据文件,我们需要对数据文件进行加密,然后创建impala表来查询本地hdfs系统中的数据,impala如何查询加密的数据文件,我不知道怎么解决。

【问题讨论】:

  • 我无法通过创建 udf 函数控制查询 sql,因为查询 sql 不可见。我只能控制创建表。

标签: hadoop encryption hive hdfs impala


【解决方案1】:

可以通过在 hive 中创建用户定义函数 (UDF) 来完成。您可以使用 UDF Hive 接口创建 UDF 函数。然后,从您的 UDF 类中制作 jar,放入 hive lib。

【讨论】:

  • 我无法通过udf控制查询sql,因为查询sql是不可见的,还有其他方法吗?
  • 我认为这个链接很好地解释了如何创建 UDF。 http://blog.matthewrathbone.com/2013/08/10/guide-to-writing-hive-udfs.html
  • 您在 hdfs 中加密了您的数据,不是吗?然后,我假设它还没有加密。因此,您可以通过两种方式进行加密。
  • 一种方法是,您可以创建临时 hive 表,然后将 UDF jar 放入 hive lib 路径,然后使用该 UDF 函数将您的数据加密到您的真实 hive 表中。另一种方法是,如果你了解 Spark,你可以实现一个加密算法来做到这一点。
  • 我认为当前的问题不在于如何加密数据。我想解决这个问题,我们有一个基于impala表的应用程序,但是数据不允许放在我们的本地环境中,我们必须访问远程hdfs中的数据,现在我们要处理如何使用本地 impala 表在安全性下访问远程 hdfs 数据。查询sql不可见,只能创建本地impala表来映射远程数据。
猜你喜欢
  • 2015-04-24
  • 1970-01-01
  • 1970-01-01
  • 2021-09-26
  • 2018-08-30
  • 1970-01-01
  • 2021-11-24
  • 1970-01-01
  • 2015-06-27
相关资源
最近更新 更多