オープンソースDataHub:LinkedInのメタデータ検索および検出プラットフォーム
大量のデータに依存してそのデータに基づいて決定を下す企業にとって、適切なデータをすばやく見つけることは不可欠です。これは、データユーザー(アナリスト、機械学習開発者、データサイエンティスト、データエンジニアを含む)の生産性に影響を与えるだけでなく、高品質の機械学習(ML)パイプラインに依存する最終製品にも直接影響を及ぼします。また、機械学習プラットフォームを導入または構築する傾向は、当然のことながら疑問を投げかけます。機能、モデル、メトリック、データセットなどを内部で発見する方法は何ですか。
この記事では、WhereHowsプロジェクトの初期から、メタデータ検索および検出プラットフォームでオープンライセンスの下でDataHubデータソースを公開した方法を共有します。 LinkedInは、オープンソースバージョンとは別に独自のバージョンのDataHubを維持しています。 2つの別々の開発環境が必要な理由を説明することから始め、その後、WhereHowsオープンソースを使用する最初のアプローチについて説明し、DataHubの内部(本番)バージョンをGitHubのバージョンと比較します。..。また、両方のリポジトリの同期を維持するために、新しい自動化されたオープンソースのアップロードおよびダウンロードソリューションの詳細を共有します。最後に、オープンソースのDataHubの使用を開始する方法について説明し、そのアーキテクチャについて簡単に説明します。
WhereHowsはDataHubになりました!
LinkedIn DataHub ( WhereHows), LinkedIn, . - DataHub . , . DataHub GitHub.
WhereHows, LinkedIn , ; 2016 . — , LinkedIn, , LinkedIn, . , WhereHows (, . .), . WhereHows , . , .
: « »
« », , . , GitHub, . , . , .
, , , , . , , , , .
, , -. , , , WhereHows -. , , .
: « »
** « », , . , . , — , . . , , , , .
!
, WhereHows GitHub . , WhereHows LinkedIn , . — DataHub. .
LinkedIn , . , LinkedIn (ELR). , , , .
, DataHub, . , . , . ( DataHub), . .
DataHub , . :
- LinkedIn / , rsync.
- , Apache Rat.
- .
- , , .
, .
DataHub , GitHub, DataHub LinkedIn ( multiproducts). DataHub, , LinkedIn. DataHub .
1: LinkedIn DataHub DataHub
, , . , , .
{
"datahub-dao": [
"${datahub-frontend}/datahub-dao"
],
"gms/impl": [
"${dataset-gms}/impl",
"${user-gms}/impl"
],
"metadata-dao": [
"${metadata-models}/metadata-dao"
],
"metadata-builders": [
"${metadata-models}/metadata-builders"
]
}
— JSON, , — LinkedIn. . Bash. , , .
{
"${metadata-models}/metadata-builders/src/main/java/com/linkedin/Foo.java":
"metadata-builders/src/main/java/com/linkedin/Foo.java",
"${metadata-models}/metadata-builders/src/main/java/com/linkedin/Bar.java":
"metadata-builders/src/main/java/com/linkedin/Bar.java",
"${metadata-models}/metadata-builders/build.gradle": null,
}
; . 1: 1 LinkedIn . , :
- , , FQCN, . « ».
- «null» , .
- . .
metadata-models 29.0.0 -> 30.0.0
Added aspect model foo
Fixed issue bar
dataset-gms 2.3.0 -> 2.3.4
Added rest.li API to serve foo aspect
MP_VERSION=dataset-gms:2.3.4
MP_VERSION=metadata-models:30.0.0
LinkedIn , , . DataHub , - , , DataHub , .. , (, , ) , DataHub , . , , -, .
, , , . , , DataHub .
DataHub
DataHub, , . DataHub LinkedIn, .
, , LinkedIn's Offspring ( LinkedIn). Offspring , . ; DataHub .
. LinkedIn, LinkedIn . , . , DataHub . , , , .
DataHub. — . , () , .
— GMS ( ) , GMS. GMA ( ) — DataHub, GMS — GMA. GMA — , (, , . .) , , GMS . GMS, DataHub .
.
Product Features | LinkedIn DataHub | Open Source DataHub |
---|---|---|
Supported Data Constructs | 1) Datasets 2) Users 3) Metrics 4) ML Features 5) Charts 6) Dashboards | 1) Datasets 2) Users |
Supported Metadata Sources for Datasets | 1) Ambry 2) Couchbase 3) Dalids 4) Espresso 5) HDFS 6) Hive 7) Kafka 8) MongoDB 9) MySQL 10) Oracle 11) Pinot 12) Presto 12) Seas 13) Teradata 13) Vector 14) Venice | Hive Kafka RDBMS |
Pub-sub | LinkedIn Kafka | Confluent Kafka |
Stream Processing | Managed | Embedded (standalone) |
Dependency Injection & Dynamic Configuration | LinkedIn Offspring | Spring |
Build Tooling | Ligradle (LinkedIn’s internal Gradle wrapper) | Gradlew |
CI/CD | CRT (LinkedIn’s internal CI/ CD) | TravisCI and Docker Hub |
Metadata Stores | Distributed multiple GMS: 1) Dataset GMS 2) User GMS 3) Metric GMS 4) Feature GMS 5) Chart/Dashboard GMS | Single GMS for: 1) Datasets 2) Users |
Docker
Docker . DataHub , , Kafka, Elasticsearch, Neo4j MySQL, Docker. Docker Docker Compose.
2: DataHub * **
DataHub . , Docker:
datahub-gms:
datahub-frontend: Play, DataHub.
datahub-mce-consumer: Kafka Streams, (MCE) .
datahub-mae-consumer: Kafka Streams, (MAE) .
DataHub .
CI / CD DataHub
DataHub TravisCI Docker Hub . GitHub . , (, Confluent), Docker, Docker Hub . Docker, Docker Hub, docker pull.
DataHub Docker Docker Hub «latest». Docker Hub , Docker Hub.
DataHub
DataHub :
- Docker docker-compose docker-compose .
- , , , .
- DataHub .
Gitter . GitHub. , !
DataHub Docker, docker-compose. Kubernetes, Kubernetes .
我々はまた、のようなパブリッククラウドサービス上DataHubのを展開するためのターンキーソリューションを提供する予定のAzure、AWS、またはGoogleクラウド。LinkedInのAzureへの移行に関する最近の発表を考えると、これはメタデータグループの内部優先順位と一致します。
最後になりましたが、DataHubのアルファ版を高く評価し、問題の特定とドキュメントの改善に協力してくれた、オープンソースコミュニティの初期のDataHubユーザー全員に感謝します。