U-SQL和/或Azure Data Lake Store中的PGP加密

时间:2018-05-17 19:49:02

标签: c# azure-data-lake u-sql pgp

如果不启动VM实例,是否可以将PGP加密添加到Azure Lake Lake Store中的数据?从理论上讲,在U-SQL中使用已注册的c#binary(dll)似乎是可能的,但理论上这需要将文件视为blob(或文本),我不确定如何从U-SQL中执行此操作?

用例是从湖中获取数据,使用公钥将其加密为PGP / GPG,然后将数据放入ADLS位置以供外部团队(随后从ADLS出口)接收。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您可以编写自定义提取器和输出器,然后可以进行解密/加密。这很可能看起来像这样(在抽象层面):

  • 萃取器:

    git clone https://github.com/facebook/rocksdb.git
    cd rocksdb/
    make all
    
  • Outputter上:

    AtomicFileProcessing=true
    d = decrypt(input.baseStream)
    for each row in d.Split do outputrow end // or whatever the right processing is
    

请注意,我们的U-SQL GitHub页面中的示例部分提供了一些示例,说明如何在基本级别对数据进行操作。

如果可以,您将需要避免将超过500MB的数据加载到主内存中。因此,如果加密/解密可以以流方式完成,那将是很好的。