0

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

4

1 回答 1

2

在 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 网站上的 Atlas 类型系统

于 2020-07-05T08:15:11.163 回答