Open Source DataHub: Pencarian Metadata dan Platform Penemuan LinkedIn

Open Source DataHub: Pencarian Metadata dan Platform Penemuan LinkedIn



Menemukan data yang tepat dengan cepat sangat penting bagi perusahaan mana pun yang mengandalkan data dalam jumlah besar untuk membuat keputusan berdasarkan data tersebut. Ini tidak hanya memengaruhi produktivitas pengguna data (termasuk analis, developer pembelajaran mesin, ilmuwan data, dan teknisi data), tetapi juga berdampak langsung pada produk akhir yang mengandalkan pipeline machine learning (ML) berkualitas. Selain itu, tren untuk memperkenalkan atau membangun platform pembelajaran mesin tentu saja menimbulkan pertanyaan: apa metode Anda untuk menemukan fitur, model, metrik, kumpulan data, dll. Secara internal?



Pada artikel ini, kami akan membagikan bagaimana kami menerbitkan sumber data DataHub di bawah lisensi terbuka pada platform pencarian dan penemuan metadata kami, dimulai pada hari-hari awal proyek WhereHows . LinkedIn mempertahankan versi DataHub-nya sendiri secara terpisah dari versi sumber terbuka. Kita akan mulai dengan menjelaskan mengapa kita memerlukan dua lingkungan pengembangan yang terpisah, setelah itu kita akan membahas pendekatan pertama untuk menggunakan sumber terbuka WhereHows dan membandingkan versi internal (produksi) DataHub dengan versi di GitHub.... Kami juga akan membagikan detail tentang solusi pengunggahan dan pengunduhan sumber terbuka otomatis baru kami untuk menjaga agar kedua repositori tetap sinkron. Terakhir, kami akan memberikan instruksi tentang cara mulai menggunakan DataHub open source dan secara singkat membahas arsitekturnya.





WhereHows sekarang menjadi 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 , . :



  1. LinkedIn / , rsync.
  2. , Apache Rat.
  3. .
  4. , , .


, .





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 :



  1. Docker docker-compose docker-compose .
  2. , , , .
  3. DataHub .


Gitter . GitHub. , !





DataHub Docker, docker-compose. Kubernetes, Kubernetes .



Kami juga berencana untuk memberikan solusi siap pakai untuk menerapkan DataHub di layanan cloud publik seperti Azure , AWS, atau Google Cloud . Mengingat pengumuman baru-baru ini tentang migrasi LinkedIn ke Azure, ini akan sejalan dengan prioritas internal grup metadata.



Terakhir, terima kasih kepada semua pengguna DataHub awal di komunitas open source yang menghargai DataHub versi alfa dan membantu kami mengidentifikasi masalah dan meningkatkan dokumentasi.




All Articles