2017-08-07 17 views
2

我有一个星型模式类型的数据库结构,就像一个事实表,它具有所有ID的& skeys,而有多个维度表具有实际的id,代码, id在事实表中被引用。在不使用Scala或Python的AWS EMR中进行数据转换

我们正在所有这些表(事实上&尺寸)至S3(云)单独地和各表中的数据被分成多个镶木文件在S3位置(每个表中的一个S3对象)

查询:我需要在云上执行转换(即)我需要剥离事实表中引用的所有ID的skeying,并将其替换为维表中的实际代码,并创建另一个文件并将最终输出存储回S3位置。此文件稍后将由Redshift for Google Analytics使用。

我的疑问: 请告诉我实现这个解决方案,因为我不需要在红移原始数据(skeys &的ID)的成本和存储优化的最佳方法是什么? 在执行数据转换之前,我们是否需要首先将这些分割文件(parquet)合并为一个大文件(即)。另外,在数据转换之后,我打算将最终输出文件保存为实木复合格式,但问题在于,Redshift不允许复制实木复合地板文件,因此是否有解决方法?我不是硬核程序员,并且想要为了避免在EMR中使用scala/python,但我擅长SQL,那么是否有办法通过SQL在EMR中执行数据转换,并将输出数据保存到一个或多个文件中。请指教

回答

相关问题