openmetadata 对于元数据的处理也是基于了schema 主要是workflow 这个定义,包含了不同的定义,基于自己定义的workflow 进行执行
数据的获取、处理以及写入
参考workflow 定义 (支持基于json 以及yaml格式的)
包含了source,sink,processor,stage,bulkSink,workflowConfig
source:
type: bigquery-usage
serviceName: local_bigquery
serviceConnection:
config:
type: BigQuery
credentials:
gcsConfig:
type: service_account
projectId: project_id
privateKeyId: private_key_id
privateKey: private_key
clientEmail: gcpuser@project_id.iam.gserviceaccount.com
clientId: client_id
authUri: https://accounts.google.com/o/oauth2/auth
tokenUri: https://oauth2.googleapis.com/token
authProviderX509CertUrl: https://www.googleapis.com/oauth2/v1/certs
clientX509CertUrl: ''
sourceConfig:
config:
queryLogDuration: '1'
processor:
type: query-parser
config: {}
stage:
type: table-usage
config:
filename: /tmp/bigquery_usage
bulkSink:
type: metadata-usage
config:
filename: /tmp/bigquery_usage
workflowConfig:
openMetadataServerConfig:
hostPort: http://localhost:8585/api
authProvider: no-auth
提供的元数据标准接口
基本包含了我们常用的数据领域
- 数据资产接口: 数据库,表,metrics,dashboard,report,pipeline 、topic
- 服务接口: 数据库服务,报表服务、消息服务
- 团队以及用户接口: 团队,用户
- 搜索以及推荐接口额:资产查询、以及建议(自动完成)
- 其他api: 标签,feed,使用
说明
openmetadata 的标准api 还是比较有用的,实现了通用性以及基于schema 的处理提升了系统的灵活性以及开发的快速性
参考资料
https://github.com/open-metadata/OpenMetadata/blob/fdf216aaddff912647f9d84fd70d034f17d9a144/openmetadata-spec/src/main/resources/json/schema/metadataIngestion/workflow.json
https://docs.open-metadata.org/main-concepts/metadata-standard/apis
https://docs.open-metadata.org/main-concepts/high-level-design