人類的家譜,記錄了人們之間的親屬關係;那血緣分析,記錄的是資料、組件、儀表板之間的親屬關係 。
假設我們有一張業務模型資料表,我們可以在血緣分析中看到該表從哪裏來的(父資源有哪些),以及用該表做了產物(子資源:包括子表、組件、儀表板等) 。
血緣分析可以幫助我們:
資料來源追溯:磁軌當前表的原始來源表、來源指標/維度,方便我們確定資料的準確性和可信度。
故障檢修:噹噹前表出現品質問題、分析結果異常或更新錯誤時,使用者可以透過血緣分析,追溯資料的來源及更新情況,定位問題的根源,並採取相應的糾正措施。
查看當前表的影響範圍:若當前表擁有眾多子資源,則說明它的影響很大。我們需要謹慎對當前表進行修改或刪除操作。
查看影響在血緣分析介面可以查看該資料表的上游資料資源和使用它製作的下游資料資源、組件和儀表板;
使用者在血緣分析頁面點選對應的節點,可以直接跳轉到對應頁面;
資料資源包括:資料表、從模型中心發佈的指標、維度和業務模型;
當前資源:使用者點選「資料目錄」的「XX表/指標/維度/業務模型」查看血緣,「XX表/指標/維度/業務模型」就是當前資源;
父資源:代表當前資料資源的上游資源,血緣分析當前資源左側內容;也是生成當前資源的來源表/指標/維度;
子資源:代表當前資料資源的下游資源,血緣分析當前資源右側內容;使用當前資源生成的內容 。
點選「資料目錄」,選擇需要查看的資料資源,點選「血緣分析」。如下圖所示:
若想了解「資料資源上下游血緣數、資料類型、建立者、位置、更新時間等」,使用者可將滑鼠懸浮在對應的標籤上。如下圖所示:
在自助資料集的詳細資訊中顯示血緣層級,血緣層級代表資料表在血緣中的層次級別:
若資料表的血緣層級為 1 ,說明該資料表沒有父表,是這條血緣線的祖宗或祖宗之一。
若資料表的血緣層級為 2 ,說明該資料表上面有 1 層父表。
若資料表的血緣層級為 13,說明該資料表有 12 層父表。這 12 層上所有的表都是它的來源表,這些來源表的變化都會對此表產生影響。我們應該要儘量避免出現這種血緣層級很深的情況,詳細可參見本文第 3 節。
注:為了避免血緣層級過深帶來的維護問題,所有資料表預設最大層級限制為 16 。
若來源表本身還有來源表,子孫表本身有子孫表和儀表板,組件也有儀表板,就會繼續做血緣分析。下一層的血緣分析預設摺疊,使用者可手動設定展開摺疊,如下圖所示:
點選資源的跳轉按鈕,可以跳轉到對應位置。如下圖所示:
注1:當資料表無使用權限,儀表板無查看權限時,它們的標籤會灰化顯示,點選標籤不能跳轉 。
注2:僅支援指標、維度、業務模型、組件和儀表板的建立人在血緣分析介面點選跳轉,其他使用者不支援點選跳轉到對應位置 。
點選搜尋,支援搜尋血緣檢視表中的資料資源。如下圖所示:
當血緣分析中的資源過多時,可透過「資料過濾」篩選想要顯示的內容。
支援對上下游、類型、權限狀態、是否在資料目錄、異常狀態、建立者進行篩選。如下圖所示:
篩選後,效果如下圖所示:
點選「清空」並查詢,即可復原血緣檢視表。
當查看血緣分析並拖動檢視表後,點選「定位」,即可重新定位到「當前資源節點所在位置」。如下圖所示:
點選右上角縮放,調整血緣分析檢視表大小。如下圖所示:
我們可以從下圖中看到「當前表(自助資料集)」」存在無數個父表,每個父表又有無數個父表,形成了深階層式血緣層級。所以當「當前表」出現問題時,追溯問題的來源變得非常困難。我們很難從這些父表中找出問題,增加了故障檢修和溯源的複雜性。
更令人擔心的是:當這幾千上萬個父表中的任何一個出現問題時,都可能導致「當前表」變得不可用。這樣的依賴關係使得整個資料表的穩定性和可用性極其脆弱。
以上我們展示了一個極端情況,此例也告誡我們避免建立以及依賴深層次血緣層級的資料表:
難以理解和維護: 當表結構層級很深時,資料元件之間的關係會變得複雜,閱讀和理解表結構的邏輯會變得困難。對於資料維護人員和開發者來說,難以準確理解表中資料的來源和去向,增加了維護工作的複雜性。
容易引發錯誤和風險: 深階層式表容易同時被成千上萬的資料表同時影響,只要父表中有一個表錯誤,當前表就無法使用。
效率低下: 當表的層級很深時,查詢和運算元據的效率可能會降低。由於需要跨越多個層級獲取所需的資料,查詢效能和資料存取效率可能會受到影響,對資料表更新的影響也很大,佔用很多無謂的更新資源。
我們可以透過以下方式讓 FineBI 中的血緣關係變得更簡單:
我們先來看一下「公共資料」和「我的分析」的定位:
公共資料:是存放公共資料的地方,並不是個人區域,所以就類似於車站、公園這種公共場所。在公共場所中,我們的裝置、配套都是由專門的市政機構準備的。所以說我們的公共資料最好也由專業的 IT 人員準備,對公共資料進行管理,可以保證公共資料空間有序、高效、以及資料可靠。
我的分析:是我們每個人自己的分析空間。相當於我們自己的家,可以隨意佈置,但如果佈置整潔,我們住的也會更舒服。
那 IT 人員準備公共資料,為什麼能優化血緣呢:
IT 人員多使用專業 ETL 工具(比如FineDataLink)進行資料治理,再透過 SQL 資料集 或 DB表 將資料新增到 FineBI 的公共資料中。這樣得到的表品質高,且沒有父表,用它們進行分析不會引發複雜的血緣關係。
IT 人員對資料的處理和規劃品質更高,不容易產生問題,影響之後用該表做的子資源。
雖然我們不推薦將編輯資料中的表發佈為公共資料表,但如果您確實有這個需求,我們建議您選擇較低層級的資料表發佈到公共資料中。
例如,如果將層級為 12 的資料表發佈到公共資料中,其他使用者使用該資料表建立的新分析資源的血緣層級將大於12。
相比之下,如果將層級為 2 的資料表發佈到公共資料中,其他使用者使用該資料表建立的新分析資源的血緣層級將大於2,相對於前一種情況來說,這種選擇要好得多。
公共資料中的資料更乾淨,層級更低,引用公共資料中的資料進行分析可以極大的優化血緣關係。
而引用「我的分析」中的資料的話,會造成主題與主題之間的耦合,資料表血緣混亂,所以我們要剋制跨主題引用資料。
當前資料集無權限:此資料集無使用權限,需要管理者分配 資料權限;
當前儀表板/組件無權限:不是本人制作的儀表板/組件,所以沒有權限;
當前資料集/儀表板/組件不可用:資料更新失敗,導致不可用,需要檢查更新狀況;
當前資料集/儀表板/組件丟失:內容被刪除了,或者已發佈或分享的內容被取消發佈或分享;
系統預設資料表的最大血緣層級為 16 ,若資料表的層級超過 16 ,則會報錯:當前資料集超出血緣層級限制。
說明當前表的父表層級過高,使用者可以重新選用層級較低的表作為父表,重新進行資料編輯。
111s
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙