Contents
  1. 1. build
  2. 2. Use
  3. 3. metacat

元数据管理, 表关系分析,字段查询

设计上按自动接入为主,手动要建json文件通过api实现,UI主要是做查询浏览管理

build

如何不编译其他模块?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
wget https://mirrors.ustc.edu.cn/apache/atlas/2.4.0/apache-atlas-2.4.0-sources.tar.gz

mvn clean -DskipTests package -Pdist,embedded-hbase-solr
[INFO] Total time: 02:09 h
[INFO] Finished at: 2025-02-27T19:02:44+08:00

ls distro/target
# apache-atlas-2.4.0-bin.tar.gz 为所有都集成在一起
cd ..
tar -xzf apache-atlas-sources-2.4.0/distro/target/apache-atlas-2.4.0-server.tar.g
z
cd apache-atlas-2.4.0

export MANAGE_LOCAL_HBASE=true
export MANAGE_LOCAL_SOLR=true
bin/atlas_start.py
bin/atlas_stop.py

http://localhost:21000
admin:admin

Use

创建:

  • type
  • entity of type
  • lineage info

通过RestApi

1
2
3
4
5
6
7
8
9
10
11
12
{
"entity": {
"typeName": "hive_table",
"attributes": {
"qualifiedName": "my_database.my_table@my_cluster",
"name": "my_table",
"description": "This is a table with no columns",
"owner": "admin"
}
},
"entity": {...}
}
1
2
3
4
5
6
# 创建表
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d @path/to/json/file \
http://<atlas-server>:21000/api/atlas/v2/entity/bulk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"typeName": "hive_table_db",
"end1": {
"typeName": "hive_table",
"uniqueAttributes": {
"qualifiedName": "my_database.my_table@my_cluster"
}
},
"end2": {
"typeName": "hive_db",
"uniqueAttributes": {
"qualifiedName": "my_database@my_cluster"
}
}
}
1
2
3
4
5
6
# 创建关系实体
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d @path/to/json/file \
http://<atlas-server>:21000/api/atlas/v2/relationship

metacat

1
2
3
git clone git@github.com:Netflix/metacat.git
cd metacat
./gradlew clean build