我正在尝试使用数据管道将数据从Dynamo导出到s3。但是,在将文件写入s3之前,我不知道如何应用客户端加密。有没有办法用数据管道做到这一点?我可以使用Data Pipeline设置除了客户端加密之外的所有内容。理想的流程是一个发电机源节点、一个要加密的活动和一个S3目标节点。
我也尝试过弹性MapReduce,但我不知道如何编写映射器和缩减程序,因为我没有转换任何数据-我只需要将其移动到s3上的加密文件。我应该能够在hive程序中使用EMR,但我正在努力理解如何在不编写自定义map/reduce代码的情况下使用EMR。理想情况下,S3中不存储任何代码。
服务器端加密不是一个选项,数据在写入s3之前需要加密。
我正在寻找一些关于如何做到这一点或有人谁有类似的挑战的想法。
发布于 2015-05-13 05:41:56
当前的数据管道解决方案目前不支持用于自定义预处理或后处理的钩子。
你们的桌子有多大?可以接受多长时间才能完成导出过程?
使用DynamoDB并行扫描应该可以做到这一点:http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#QueryAndScanParallelScan
实际上,您需要编写一个程序来使用多个线程来处理并行扫描的扫描片段,执行加密,并将加密的项目存储在S3中。每个DynamoDB扫描页面应该返回大约1MB的数据,因此您可以在发布到S3之前聚合多个页面。
要恢复数据,您需要加载S3文件,解密,然后写回DynamoDB。
发布于 2015-07-16 21:41:25
如果这对于您的用例是可接受的,那么您可以在将数据写入DynamoDB之前进行客户端加密。然后,您可以使用数据管道将加密数据导出到S3。
我的应用程序有一个similar setup,使用的是aws-labs提供的client-side encryption library。我们每天导出这些表以保留备份。只要将加密元数据与数据一起导出,就可以恢复数据。
https://stackoverflow.com/questions/30146391
复制相似问题