参考
- The evolution of metadata LinkedIn’s story
- スライド
- LinkedInのdatahubの20200104時点での実装
- アーキテクチャ
- Generalized Metadata Architecture (GMA)
- Metadata Serving
- MAE(Metadata Audit Event)
メモ
LinkedInが提唱する Generalized Metadata Architecture (GMA) を基盤としたメタデータ管理システム。
コンセプトは、 スライド に記載されているが、ざっとアーキテクチャのイメージをつかむには、 アーキテクチャ がよい。
GMA
メタデータは自動収集。
これは標準化されたメタデータモデルとアクセスレイヤによるものである。
また標準モデルが、モデルファーストのアプローチを促進する。
Metadata Serving
Metadata Serving に記載あり。
RESTサービスは、LinkedInが開発していると思われるREST.liが用いられており、 DAOもその中の「Pegasus」という仕組みを利用している。
Key-Value DAO、Search DAO、Query DAOが定義されている。
上記GMAの通り、この辺りのDAOによるアクセスレイヤの標準化が見て取れる。
Metadata Ingestion Architecture
そもそも、メタデータに対する変更は MAE(Metadata Audit Event) としてキャプチャされる。
それがKafka Streamsのジョブで刈り取られ処理される。なお、シーケンシャルに処理されるための工夫もあるようだ。