1.引言
當(dāng)前屬于大數(shù)據(jù)時(shí)代,數(shù)據(jù)爆炸式增長(zhǎng),當(dāng)然管理數(shù)據(jù)的工具也是層出不窮,從傳統(tǒng)的單機(jī)關(guān)系型數(shù)據(jù)庫(kù)PostgreSQL、Oracle、MySQL、MS SQL到擅長(zhǎng)分析的Greenplum、Clickhouse、Vertica等,再到前幾年火的不要不要的Hadoop體系,種類繁多的數(shù)據(jù)管理軟件,也得有上百種了。以下截圖節(jié)選自知名VC Matt Turck分享的數(shù)據(jù)棧:
完整圖片獲取地址:http://mattturck.com/wp-content/uploads/2021/12/2021-MAD-Landscape-v3.pdf
2.問(wèn)題的產(chǎn)生
當(dāng)然我們今天不是要討論這些數(shù)據(jù)管理軟件的優(yōu)劣。大家從第一部分也可以看到,數(shù)據(jù)管理軟件層出不窮,小型企業(yè)可能并不能切身感受到多種數(shù)據(jù)技術(shù)帶來(lái)的苦惱,但是稍微成規(guī)模的企業(yè),總要有自己的業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫(kù)、分析型數(shù)據(jù)平臺(tái)、海量數(shù)據(jù)存儲(chǔ)的平臺(tái)等等,那么這么多平臺(tái)帶來(lái)的最直觀的問(wèn)題就是管理。
數(shù)據(jù)平臺(tái)多,數(shù)據(jù)可能存在多個(gè)不必要的副本,數(shù)據(jù)質(zhì)量就無(wú)法保證,數(shù)據(jù)的空間感就會(huì)很差,數(shù)據(jù)管理的混亂,導(dǎo)致的直接問(wèn)題就是,業(yè)務(wù)無(wú)法第一時(shí)間找到最合適的數(shù)據(jù)源,數(shù)據(jù)平臺(tái)之間不能產(chǎn)生數(shù)據(jù)的聯(lián)動(dòng)。
這個(gè)問(wèn)題不是剛出現(xiàn)的問(wèn)題,在數(shù)據(jù)發(fā)展的歷史長(zhǎng)河中,已經(jīng)有很多人對(duì)這個(gè)問(wèn)題進(jìn)行了研究,進(jìn)而產(chǎn)生了各種開(kāi)源與閉源方案。那么今天,我們就來(lái)看看近幾年由Linkedin開(kāi)源的元數(shù)據(jù)管理/數(shù)據(jù)治理平臺(tái):DataHub 是如何解決這個(gè)問(wèn)題的。
3.DataHub簡(jiǎn)介
DataHub是由Linkedin開(kāi)源的,官方喊出的口號(hào)為:The Metadata Platform for the Modern Data Stack – 為現(xiàn)代數(shù)據(jù)棧而生的元數(shù)據(jù)平臺(tái)。官方網(wǎng)站傳送門(mén)。目的就是為了解決多種多樣數(shù)據(jù)生態(tài)系統(tǒng)的元數(shù)據(jù)管理問(wèn)題,它提供元數(shù)據(jù)檢索、數(shù)據(jù)發(fā)現(xiàn)、數(shù)據(jù)監(jiān)測(cè)和數(shù)據(jù)監(jiān)管能力,幫助大家解決數(shù)據(jù)管理的復(fù)雜性。
DataHub基于Apache License 2開(kāi)源,采用基于推送的數(shù)據(jù)收集架構(gòu)(當(dāng)然也支持pull拉取的方式),能夠持續(xù)收集變化的元數(shù)據(jù)。當(dāng)前版本已經(jīng)集成了大部分流行數(shù)據(jù)生態(tài)系統(tǒng)接入能力,包括但不限于:Kafka, Airflow, MySQL, SQL Server, Postgres, LDAP, Snowflake, Hive, BigQuery。
- 源碼倉(cāng)庫(kù)地址:linkedin/datahub: 該倉(cāng)庫(kù)包含DataHub前端和后端服務(wù)的完整源碼。(DataHub采用先進(jìn)的前后端分離架構(gòu))linkedin/datahub-gma: 該倉(cāng)庫(kù)包含DataHub元數(shù)據(jù)搜索和發(fā)現(xiàn)服務(wù)GMA
4.DataHub主要功能
DataHub是端到端的元數(shù)據(jù)發(fā)現(xiàn)工具,可以幫助數(shù)據(jù)管理者挖掘其公司數(shù)據(jù)的價(jià)值。DataHub的主要功能特點(diǎn)如下。
4.1 端到端搜索和發(fā)現(xiàn)
4.1.1 在數(shù)據(jù)庫(kù)、數(shù)據(jù)湖、BI平臺(tái)、ML特征存儲(chǔ)、工作流配置等數(shù)據(jù)資產(chǎn)中進(jìn)行[元數(shù)據(jù)集中查詢搜索]
從下面兩個(gè)截圖可以看到,在DataHub里面搜索health,從所有的元數(shù)據(jù)(BigQuery數(shù)據(jù)集、DataHub Tags/Users等)中,得到了所有相關(guān)結(jié)果,可以在結(jié)果中,點(diǎn)擊查看相關(guān)的結(jié)果。
4.1.2 通過(guò)跨平臺(tái)、數(shù)據(jù)集、管道的[血緣關(guān)系追蹤],輕松理解數(shù)據(jù)的端到端旅程
從下面兩個(gè)截圖可以看到,“DataHub Health”這個(gè)查詢的依賴關(guān)系表一級(jí)一級(jí)的展示出來(lái),可以通過(guò)點(diǎn)擊?展開(kāi)下一級(jí)內(nèi)容。通過(guò)使用lineage視圖,可以詳細(xì)地查看在數(shù)據(jù)集和管道中的依賴關(guān)系。
4.1.3 通過(guò)線性血緣圖,快速獲取相關(guān)實(shí)體的上下文
從下面截圖可以看到,通過(guò)在圖上點(diǎn)擊相關(guān)實(shí)體,可以很容易地查看文檔、使用狀態(tài)、用戶等信息。
4.1.4 獲取數(shù)據(jù)集準(zhǔn)確性和相關(guān)性的確切信息
DataHub針對(duì)流行的數(shù)據(jù)倉(cāng)庫(kù)平臺(tái)提供數(shù)據(jù)集合的詳細(xì)信息瀏覽和實(shí)用信息統(tǒng)計(jì),讓數(shù)據(jù)從業(yè)者更容易理解數(shù)據(jù)的形態(tài)。
4.2 構(gòu)造堅(jiān)實(shí)的文檔和標(biāo)簽基礎(chǔ)
上面4.1部分展示的是DataHub的搜索查看特性,本節(jié)介紹一下它在維護(hù)編輯方面的特性。
4.2.1 通過(guò)API或DataHub UI獲取并維護(hù)公司的知識(shí)庫(kù)
隨著我們?nèi)粘2僮髦卸x和用例的豐富,DataHub可以輕松地更新和維護(hù)文檔。除了通過(guò)GMS管理文檔外,DataHub通過(guò)UI界面提供豐富的文檔和外部支持鏈接操作界面。
4.2.2 通過(guò)API或DataHub UI創(chuàng)建和定義新的標(biāo)簽(tag)
通過(guò)下圖可以看到,在DataHub中可以通過(guò)GraphQL API輕松的創(chuàng)建和添加任何實(shí)體標(biāo)簽,這樣隨著時(shí)間的推移,實(shí)體的屬性回越來(lái)越豐富。當(dāng)有一天我們想要查看某一標(biāo)簽的相關(guān)實(shí)體信息時(shí),只需要在標(biāo)簽位置點(diǎn)擊該標(biāo)簽,就會(huì)將所有相關(guān)的實(shí)體數(shù)據(jù)列出來(lái)。
4.3 觸手可及的數(shù)據(jù)治理
元數(shù)據(jù)管理平臺(tái),最終的目的是實(shí)現(xiàn)數(shù)據(jù)的有效治理,DataHub提供一系列的數(shù)據(jù)治理功能,本部分介紹它的幾個(gè)特性。
4.3.1 快速將資產(chǎn)所有權(quán)分配給用戶或用戶組
通過(guò)點(diǎn)擊實(shí)體的詳細(xì)信息,進(jìn)入詳細(xì)信息瀏覽界面,可以在【Owners】部分輕松快速的將該資產(chǎn)分配給某個(gè)用戶或用戶組。如下圖所示:
4.3.2 使用策略管理細(xì)粒度訪問(wèn)控制
DataHub管理員可以創(chuàng)建相應(yīng)的策略,來(lái)定義誰(shuí)可以在哪些資源上執(zhí)行什么樣的活動(dòng)。在制定策略時(shí),同時(shí)管理員還可以進(jìn)行如下指定操作:
- 平臺(tái)型策略 – 最高級(jí)別的DataHub平臺(tái)權(quán)限,比如用戶管理、組管理和策略管理等
- 資源型策略 – 指定資源類型,比如數(shù)據(jù)集、看板、管道等
- 權(quán)限策略 – 選擇權(quán)限范圍集合,比如編輯用戶、編輯文檔、編輯鏈接等
- 用戶或組策略 – 分配相關(guān)的用戶或組;比如可以直接將策略分配給資源使用的用戶,而不必太關(guān)注他屬于哪個(gè)組
下面給大家放一張直觀的策略分配圖:
4.4 元數(shù)據(jù)質(zhì)量和使用分析
通過(guò)DataHub可以對(duì)元數(shù)據(jù)進(jìn)行深度挖掘。DataHub提供的分析視圖可以清晰的展示元數(shù)據(jù)相關(guān)的操作信息,比如用戶權(quán)限分配的頻繁度、本周活動(dòng)用戶、常用的搜索條件及活動(dòng)等。
5.當(dāng)前支持的數(shù)據(jù)棧列表
DataHub仍然處于活躍開(kāi)發(fā)階段,在最后這一部分,給大家羅列一下DataHub目前支持的數(shù)據(jù)棧有哪些:
5.1 支持的數(shù)據(jù)源有哪些
數(shù)據(jù)源名稱 | 當(dāng)前支持狀態(tài) |
Athena | 支持 |
BigQuery | 支持 |
Delta Lake | 計(jì)劃支持 |
Druid | 支持 |
Elasticsearch | 支持 |
Hive | 支持 |
Hudi | 計(jì)劃支持 |
Iceberg | 計(jì)劃支持 |
Kafka Metadata | 支持 |
MongoDB | 支持 |
Microsoft SQL Server | 支持 |
MySQL | 支持 |
Oracle | 支持 |
PostreSQL | 支持 |
Redshift | 支持 |
s3 | 支持 |
Snowflake | 支持 |
Spark/Databricks | 部分支持 |
Trino FKA Presto | 支持 |
5.2 支持的BI工具有哪些
數(shù)據(jù)源名稱 | 當(dāng)前支持狀態(tài) |
Business Glossary | 支持 |
Looker | 支持 |
Redash | 支持 |
Superset | 支持 |
Tableau | 計(jì)劃支持 |
Grafana | 部分支持 |
5.3 支持的ETL/ELT工具有哪些
數(shù)據(jù)源名稱 | 當(dāng)前支持狀態(tài) |
dbt | 支持 |
Glue | 支持 |
5.4 支持的工作流編排工具有哪些
數(shù)據(jù)源名稱 | 當(dāng)前支持狀態(tài) |
Airflow | 支持 |
Prefect | 計(jì)劃支持 |
最后的最后,如果您感覺(jué)我的分享有用,歡迎點(diǎn)贊并關(guān)注,后續(xù)會(huì)繼續(xù)分享更具體的Datahub操作案例給大家。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。