首页 文章
  • 5 votes
     answers
     views

    如何将数据从Glue移动到Dynamodb

    我们正在为我们的仪表板应用程序设计大数据解决方案,并认真考虑Glue用于我们的初始ETL . 目前Glue支持JDBC和S3作为目标,但我们的下游服务和组件将更好地与dynamodb一起使用 . 我们想知道什么是最终将记录从Glue转移到Dynamo的最佳方法 . 我们应该首先写入S3然后运行lambdas将数据插入Dynamo吗?这是最好的做法吗?或者我们是否应该为Dynamodb使用第三方JD...
  • 15 votes
     answers
     views

    表格的异常通过AWS Glue Crawler识别并存储在数据目录中

    我正在努力 Build 公司的新数据湖,并试图找到最好的和最近的选择在这里工作 . 所以,我找到了一个非常好的解决方案来使用EMR S3 Athena Glue . 我做的过程是: 1 - 运行Apache Spark脚本,以生成由Orc存储的S3中按日期分区的3000万行 . 2 - 运行Athena查询以创建外部表 . 3 - 检查与胶水数据目录相关的EMR表,它工作得很好 . Spa...
  • 1 votes
     answers
     views

    如何以编程方式读取AWS Glue Data Catalog表模式

    我有一组统一结构的每日CSV文件,我将上传到S3 . 有一个下游作业将CSV数据加载到Redshift数据库表中 . CSV中的列数可能会增加,从那时起,新文件将包含新列 . 发生这种情况时,我想检测更改并自动将列添加到目标Redshift表 . 我的计划是在源CSV文件上运行Glue Crawler . 架构中的任何更改都将在Glue Data Catalog中生成表的新版本 . 然后,我想以...
  • 1 votes
     answers
     views

    使用AWS Glue Job在redshift中导入数据时添加时间戳列

    我想知道在AWS Glue Job加载时是否可以在表中添加时间戳列 . 第一种情景: A列| B栏| TimeStamp A | 2 | 2018-06-03 23:59:00.0 当Crawler更新数据目录中的表并再次运行作业时,该表将使用新的时间戳在表中添加新数据 . A列| B栏| TimeStamp A | 4 | 2018-06-04 05:01:31.0 B | 8 | 201...
  • 0 votes
     answers
     views

    时间戳未从Glue加载到Redshift表中

    我在一个存储在S3中的csv文件中有 YYYY-MM-DD XX:XX:XX 格式的时间戳,但是当我使用时间戳数据类型使用Glue加载到Redshift数据库时,timestamp列为null . 看来格式是有效的,但我也尝试过 YYYYMMDD XXXXXX 和 YYMMDD XX:XX:XX 格式 . 我在Glue中的映射从时间戳到时间戳,表的列数据类型也是时间戳 . 以csv格式提供的数据:...
  • 2 votes
     answers
     views

    在胶水作业中创建胶水数据目录表

    我认为这是一个非常简单的要求 . 我想创建一个作业,它接受一个文件并将其转换为另一个文件,然后在胶水中更新数据目录元数据 . 这将允许另一个作业然后获取新数据源并使用glue / emr / athena消耗它 . 现在,我可以毫无问题地进行转换,但对于我的生活,除了使用爬虫或控制台或胶水API之外,我无法弄清楚如何在胶水中创建表格 - 我更喜欢在工作中这样做我可以调用下一个作业而不是执行爬虫并等...
  • 0 votes
     answers
     views

    AWS Glue:crawler将时间戳误解为字符串 . GLUE ETL意味着将字符串转换为时间戳使它们成为NULL

    按照教程here,我一直在玩 AWS Glue 进行一些快速分析 虽然我已经能够在Athena中成功创建爬虫并发现数据,但我遇到了爬虫创建的数据类型的问题 . date 和 timestamp 数据类型被读取为 string 数据类型 . 我通过使用爬虫作为输入创建的数据源和 Amazon S3 中的目标表在GLUE中创建 ETL 作业来实现此目的 . 作为映射转换的一部分,我将日期和时间戳的...
  • 0 votes
     answers
     views

    如何在胶水中处理模式更改并获得csv中的预期输出?

    我正在尝试使用AWS Glue抓取一些具有不同sachems(数据兼容)的文件 .正如我在AWS文档中读到的那样,Glue抓取工具会更新目录表以了解架构中的任何更改(添加新列并删除缺少的列) . 我在创建爬虫时检查了"Update the table definition in the Data Catalog"和"Create a single schema for...
  • 0 votes
     answers
     views

    AWS Glue将重复记录附加到数据目录

    我发现我的AWS胶水作业正在将重复数据附加到我的数据目录中 . 我有一个读取JSON的作业,使用Spark SQL对其进行重复删除,然后尝试将其保存到数据目录中 . 但我必须做错了,因为每次运行任务时数据目录都会变得更复杂 inputGDF = glueContext.create_dynamic_frame_from_options(connection_type = "s3&quot...
  • 0 votes
     answers
     views

    定期安排AWS Glue爬虫的用途是什么 . 运行一次似乎就足够了

    我根据S3存储桶的内容创建了一个AWS glue表 . 这允许我使用AWS Athena查询此S3存储桶中的数据 . 我已经定义了一个AWS Glue爬虫并运行一次以自动确定数据的模式 . 一切都很好 . 之后,所有新上传的数据都会很好地反映在表中 . (在雅典娜做 select count(*) ... . 为什么我需要定期运行(即:安排)AWS Glue Crawler?毕竟,如上所述,对...
  • 4 votes
     answers
     views

    AWS Glue:如何使用不同的模式处理嵌套的JSON

    Objective: 我们希望使用AWS Glue数据目录为驻留在S3存储桶中的JSON数据创建单个表,然后我们将通过Redshift Spectrum进行查询和解析 . Background: JSON数据来自DynamoDB Streams,并且是深层嵌套的 . 第一级JSON具有一组一致的元素:Keys,NewImage,OldImage,SequenceNumber,Approximat...
  • 0 votes
     answers
     views

    AWS Glue:如何使用不同的模式ETL非标量JSON

    Objective 我有一个充满json文件的S3文件夹,其中包含不同的模式,包括数组(一个dynamodb备份,因为它发生) . 但是,虽然模式各不相同,但所有文件都包含一些常用元素,例如“id”或“name”,以及不同长度的嵌套数组,例如“selected items” . 我希望能够在闲暇时解析这些元素 . 我有一个使用外部ETL工具(KNIME)的工作方法,我希望通过Glue以无服务器方式...
  • -1 votes
     answers
     views

    在同一工具下同步所有数据操作

    在我的公司,我们每天都有Pentaho Kettle做我们的ETL工作(一台机器就足够了我们拥有的所有数据),这意味着: 从不同的,主要是关系数据库,电子表格和API中读取数据 应用转换,并将数据插入Redshift 对外部SAAS工具执行API调用 我们正计划在更高级的工具中重做它,这将使我们: 更新dwh比一天更频繁 更容易获取并将数据推送到我们使用的SAAS API(...
  • 4 votes
     answers
     views

    AWS Athena从表格中返回零记录从GLUE Crawler输入来自S3的csv

    Part One : 我尝试使用胶水爬虫在s3中加载的虚拟csv上运行它创建了一个表但是当我在athena中尝试查看表并查询它时它显示返回Zero Records . 但是,雅典娜的ELB演示数据运行良好 . Part Two (Scenario:) 假设我有一个excel文件和数据字典,说明数据存储在该文件中的方式和格式,我希望将这些数据转储到AWS Redshift中 . 最好的方法是什么?
  • 1 votes
     answers
     views

    (AWS)Athena:查询结果似乎太短

    我的Athena查询结果似乎太短了 . 试图找出原因? Build : 胶水目录(118.6千兆字节) . 数据:以CSV和JSON格式存储在S3中 . Athena Query:当我查询整个表的数据时,每个查询只获得40K结果,对于一个月的数据,该查询平均应该有121Million记录 . Athena Cap查询结果数据吗?这是服务限制(文档并未暗示是这种情况) .
  • 9 votes
     answers
     views

    使用AWS Glue和Apache Avro进行架构更改

    我是AWS Glue的新手,并且很难完全理解AWS文档,但我正在努力解决以下用例: 我们有一个带有许多Avro文件的s3存储桶 . 我们已经决定使用Avro,因为它可以在超时的情况下对数据模式更改提供广泛支持,从而允许将新字段应用于旧数据而不会出现任何问题 . 使用AWS Glue,我了解只要存在架构更改,爬虫就会创建一个新表 . 当我们的模式发生变化时,这会导致爬虫程序按照预期创建许多新表,但并...
  • 1 votes
     answers
     views

    AWS Glue Crawler覆盖数据与附加

    我正在尝试利用Athena在第三方供应商预先ETL的数据上运行SQL并推送到内部S3存储桶 . ETL供应商每天将CSV文件推送到存储桶 . 除了返回2016年的数据之外,每个文件还包括昨天的数据(即新数据每天到达,但历史数据也可能发生变化) . 我设置了一个AWS Glue Crawler来监控上传CSV文件的特定S3文件夹 . 因为每个文件都包含更新的历史数据,所以我希望找到一种方法,根据上传...
  • 0 votes
     answers
     views

    AWS Glue ETL作业如何检索数据?

    我是使用AWS Glue的新手,我不明白ETL工作如何收集数据 . 我使用爬虫从S3存储桶中的一些文件生成我的表模式,并检查ETL作业中的自动生成的脚本,这是(稍作修改): import sys from awsglue.transforms import * from awsglue.utils import getResolvedOptions from pyspark.context imp...
  • 0 votes
     answers
     views

    当底层JSON文件中的时间戳格式发生更改时,在Athena中查询时间戳数据

    我正在从存储在S3中的JSON文件中查询AWS Athena中的数据 . 我已经使用AWS Glue将所有JSON文件加载到Athena中,到目前为止它一直运行良好 . 但是,时间戳格式在JSON文件中已更改 2018-03-23 15:00:30.998 至 2018-08-29T07:59:50.568Z 所以表最终会有这样的条目 2018-08-29T07:59:42.803Z 2018...
  • 0 votes
     answers
     views

    AWS Update-GLUECrawler Powershell命令循环

    我仍在学习PowerShell脚本和与AWS的集成 . 该脚本的预期结果是使用新的数据存储(目标)更新AWS Glue Crawler,其中任何S3存储桶目录路径都不在Crawler中 . 原因是我需要在AWS Athena中使用单独的表 . 目前,默认行为是,如果模式相同,则创建分区表 . 我在S3存储桶中有多个目录,所有文件都具有相同的模式 . 所以我的理解是我必须在Crawler中定义每个路...
  • 0 votes
     answers
     views

    AWS Glue从分区表读取并写入分区表

    我的用例很简单 . 我在s3中有20 TB原始csv未压缩数据,具有年份的分区文件夹结构(10个分区10年,每个分区有2 TB) . 我想将此数据转换为镶木地板格式(snappy压缩)并保留类似的分区/文件夹结构 . 我想要在Athena中使用TEN 10分区的一个Parquet表,我将用它来分区查询这些数据,以后可能会删除原始的csv数据 . 使用Glue,我似乎会创建10张不能使用的镶木 ta...
  • 2 votes
     answers
     views

    带有AWS Glue的Spark Catalog:未找到数据库

    我用胶水数据目录创建了一个EMR集群 . 当我调用spark-shell时,我能够成功地列出存储在Glue数据库中的表 spark.catalog.setCurrentDatabase("test") spark.catalog.listTables 但是,当我通过 spark-submit 提交作业时,我收到致命错误 ERROR ApplicationMaster: Use...
  • 1 votes
     answers
     views

    抓取工具可以更新AWS Glue中的导入表格吗?

    我熟悉AWS Glue中的爬虫 . 我从Athena导入了一个数据库目录,并希望每天抓取这些表的数据位置,以便在添加数据时自动更新其分区 . 但是,我的抓取工具似乎只创建了新表,与从Athena导入的表分开 . 他们似乎没有更新我现有的表 . 有没有办法做到这一点?在他们的文档中没有看到任何提及它 .
  • 0 votes
     answers
     views

    将多个胶水目录表导入到redshift表中

    我在S3中有多个文件,我想将其导入Redshift . 复制的命令行给了我难以理解的错误 . 所以我去使用AWS Glue抓取工具将文件放入我的Glue目录中 . 然后我为Redshift创建了一个连接 . 我使用Glue Job将数据摄取到Redshift中 . 我能够将S3中的文件clicks_001.json中的数据转换为Redshift表单击 . 那很有效 . 但问题是我有1000个这样的...
  • 1 votes
     answers
     views

    在EMR上使用Spark SQL查询Glue表时获取NullPointerException(Name为null)

    我已经使用Spark和Zeppelin设置了AWS EMR,并将AWS Glue目录设置为Hive的Metastore . 我用过这个指令:https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-glue.html 似乎EMR集群和Zeppeling正在发挥作用 . 当我运行以下段落时: %sql show databases ...
  • 2 votes
     answers
     views

    AWS Glue Crawler创建分区和文件表

    我有一个非常基本的s3设置,我想使用Athena查询 . 数据全部存储在一个存储桶中,组织为年/月/日/小时文件夹 . |--data | |--2018 | | |--01 | | | |--01 | | | | |--01 | | | | | |--file1.json | | | | | |--file2.jso...
  • 1 votes
     answers
     views

    使用SparkSession进行Glue Dev endpoints 访问目录

    我尝试设置AWS胶水开发 endpoints 来测试一个非常简单的ETL脚本,但我似乎无法访问我的目录数据 . 我没有使用zeppelin,只是使用了scala-repl . spark.catalog.listTables.show - >为空 . 当我尝试按照我的emr步骤创建SparkSession时 SparkSession.builder() .con...
  • 1 votes
     answers
     views

    如何通过boto3访问eu-west-1中Athena表的Athena / Glue目录?

    我需要编写一份使用Athena数据目录中数据的工作 . 我正在使用Python和boto3 . 由于Glue已经发布,我似乎通过Glue API使用以下代码访问我的数据目录: import boto3 from pprint import pprint glue = boto3.client('glue', region_name='us-east-1') response = glue.ge...
  • 2 votes
     answers
     views

    AWS Glue Crawler覆盖自定义表属性

    我有一个由AWS Glue管理的数据目录,以及我的开发人员在我们的S3存储桶中使用新表或分区进行的任何更新,我们每天都使用爬虫来更新,以保持新分区的 Health . 但是,我们还需要自定义表属性 . 在我们的配置单元中,我们将每个表的数据源作为表属性,并且我们以胶水的形式添加到数据目录中的表中,但是,每次运行爬虫时,它都会覆盖自定义表属性,如Description . 我做错了吗?或者这是来自...
  • 1 votes
     answers
     views

    AWS Glue截断红移表

    我创建了一个胶水作业,将数据从S3(csv文件)复制到Redshift . 它可以工作并填充所需的表格 . 但是,我需要在此过程中清除表,因为在完成该过程后,我将留下重复的记录 . 我正在寻找一种方法将此清除添加到Glue流程中 . 任何意见,将不胜感激 . 谢谢 .

热门问题