【问题标题】:How can i see metadata, lineage of data stored in AWS redshift?如何查看元数据、存储在 AWS redshift 中的数据沿袭?
【发布时间】:2017-05-27 14:58:57
【问题描述】:

我正在使用cloudera navigatoratlasWherehows 等解决方案

获取 Hadoop、HDFS、HIVE、SQOOP、MAPREDUCE 元数据和沿袭。

现在我们在 AWS redshift 中也有一个数据仓库。有没有办法从红移中提取元数据或血统或两者信息。

到目前为止,我还没有找到任何关于此的内容。

有没有办法将其与爬网解决方案集成到 wherehows 中?

我只找到了一个post,它提供了一些关于如何从redshift 获取一些信息的信息,假设它类似于postgresql。我相信有人会为这个问题编写一些开源解决方案。 还是只需要编写一个简单的脚本来提取这些信息? 我正在寻找企业级解决方案。我希望有人能指出我正确的方向。

【问题讨论】:

  • Amazon Redshift 只是一个数据库——它不包含有关数据沿袭的任何信息。您可以提取已运行的查询列表,然后据此进行推断,但这并不明显也不明确。
  • 您可以从 information_schema 视图中提取元数据信息。虽然没有血统,afaik。

标签: amazon-web-services amazon-redshift hadoop2 database-metadata data-lineage


【解决方案1】:

AWS Glue 数据目录 是一项完全托管的元数据管理服务。它具有 AWS Glue 爬虫,可自动爬取您的源(为您的 redshift)并创建一个集中的元数据存储库,可供以下人员访问其他 AWS 服务。

参考:

https://docs.aws.amazon.com/glue/latest/dg/components-overview.html

https://aws.amazon.com/glue/

【讨论】:

    【解决方案2】:

    您可以通过查询 Redshift 中的系统表来访问元数据:

    https://docs.aws.amazon.com/redshift/latest/dg/cm_chap_system-tables.html

    系统表在每个集群的领导节点上(见我写的这个guide on the Redshift Architecture

    Redshift 会滚动删除系统表的内容,因此您需要将该数据存储在您的集群或另一个单独的集群中,以获取历史记录。通过系统表中的数据,您可以获得有关查询以及它们所涉及的表的信息基线。

    您可以将 Kibana 或 Periscope Data 之类的仪表板放在该数据之上以对其进行可视化。 Plaid 写了一篇关于他们如何构建内部监控解决方案的文章,其中包含有关数据沿袭的一些信息:

    https://blog.plaid.com/managing-your-amazon-redshift-performance-how-plaid-uses-periscope-data/

    但是要获得真正的数据沿袭,您需要了解查询与您的工作流程(即 Airflow DAG)之间的关系。要获取该信息,您需要“标记”您的查询,以便您可以在转换/工作流的上下文中跟踪它们,而不是查看单个查询。

    这是我们在产品中内置的东西 - 请注意这是一个商业解决方案:

    https://www.intermix.io/blog/announcing-query-insights/

    与来自系统表的原始日志不同,我们会为您提供有关哪些应用/工作流程正在触发查询、哪些用户正在运行它们以及他们正在接触哪些表的上下文。

    • 拉尔斯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-02
      相关资源
      最近更新 更多