【问题标题】:How do I save lineage info in Apache Atlas when using Apache Cassandra and Elasticsearch使用 Apache Cassandra 和 Elasticsearch 时如何在 Apache Atlas 中保存沿袭信息
【发布时间】:2020-10-06 08:08:27
【问题描述】:

我计划使用 Apache Cassandra 作为存储后端并使用 Elasticsearch 作为索引后端来部署 Apache Atlas。我想知道如何用这个保存血统信息?它提供了get API来获取血统信息,但似乎无法保存。

【问题讨论】:

    标签: cassandra apache-atlas


    【解决方案1】:

    在 Atlas 中,血统是通过使用输入和输出的流程链接起来的。

    示例: 如果您想查看两个 hive_table 类型之间的血统,就像:

    T1(hive_table)--->P1(hive_process)--->T2(hive_table)

    因此,基本上实体需要通过流程类型链接。

    在 Atlas 中,流程是实体,可以使用 API POST: /v2/entity 创建,其中定义了输入和输出,如上述 hive_process

    POST: /api/atlas/v2/entity
        {
          "entity": {
            "typeName": "hive_process",
            "attributes": {
              "outputs": [
                {
                  "guid": "2", 
                  "typeName": "hive_table",
                  "uniqueAttributes": {
                    "qualifiedName": "t2@primary"
                  }
                }
              ],
              "qualifiedName": "p1@primary",
              "inputs": [
                {
                  "guid": "1",
                  "typeName": "hive_table",
                  "uniqueAttributes": {
                    "qualifiedName": "t1@primary"
                  }
                }
              ],
              "name": "P1-Process"
            }
          }
        }
    

    在创建流程之前需要注意的重要一点是引用的实体(输入、输出)应该预先存在,否则流程创建将失败。

    如果您的需求不包含预先存在的类型,您当然可以继续为 Atlas Entity 和 Process 定义自己的类型

    Apache site 上有关 Atlas 类型系统的更多信息

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-07-06
      • 1970-01-01
      • 2021-05-21
      • 2022-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多