AWS S3中存储的巨大CSV文件的数据屏蔽

时间:2018-09-27 20:05:45

标签: csv unix amazon-s3 bigdata masking

我在aws s3(s3://bucket1/rawFile.csv)中有大约15GB的巨大csv文件。可以说模式是否如下所示:

cust_id, account_num, paid_date, cust_f_name
1001, 1234567890, 01/01/2001, Jonathan

我正在尝试屏蔽帐号列和客户名称,并创建一个新的maskedFile.csv并将其存储在另一个AWS s3存储桶(s3://bucket2/maskedFile.csv)中,如下所示:

cust_id, account_num, paid_date, cust_f_name
1001, 123*******, 01/01/2001, Jon*******

只需使用一次付款数据快照即可完成一次。

我该怎么做?我应该使用什么工具来实现这一目标?请让我知道。

2 个答案:

答案 0 :(得分:1)

AWS Glue是AWS的托管ETL和数据目录工具,它正是用于此类任务的。

您将其指向S3上的源文件夹,将其告诉目标文件夹您要将结果放到的目标文件夹,然后将指导您进行所需的转换。基本上,如果您可以编写一些Python,则可以立即进行简单的掩码转换。

设置完成后,Glue会自动将您拖放到源文件夹中的任何新文件转换,因此,您不仅创建了执行屏蔽所需的代码,而且还拥有一个完全自动化的管道,该管道在新数据到达时运行。我看到您的案例只要求它运行一次,但是编写一次代码实际上并不容易。

要查看使用Glue设置简单的ETL作业的示例,请查看:https://gorillalogic.com/blog/in-search-of-happiness-a-quick-etl-use-case-with-aws-glue-redshift/。还有很多其他教程可以帮助您入门。

答案 1 :(得分:0)

您可以尝试FileMasker。 它将屏蔽S3存储桶中的CSV(和JSON)文件。 您可以将其作为AWS Lambda函数运行,尽管Lambda限制会将输入文件的大小限制为几个GB。 如果您可以将输入文件拆分为较小的文件,则可以。否则,请与供应商联系以获取选项。参见https://www.dataveil.com/filemasker/ 免责声明:我为DataVeil工作。