當前位置:網站首頁>「PowerBI」丟弃SSDT選擇TabularEditor成為你的首選建模開發工具(下)
「PowerBI」丟弃SSDT選擇TabularEditor成為你的首選建模開發工具(下)
2021-08-19 18:38:49 【Excel催化劑】
包括筆者在內,很少說參與到一些非常大的項目,需要團隊分工明細化到一種程度,同一樣工作需要分開多人來協作完成,但這不妨礙我們對其有一定的了解,可以讓我們的視野更開闊。除了協助TabularEditor還有幾個高級功能,是大型數據模型開發場景下很不錯的應用。
現代團隊式開發的場景
在軟件開發行業,團隊式開發是再正常不過了,不同的人從git中開一個分支進行開發,開發完後測試通過後進行合並到主項目中。
在BI項目中,SSDT是沒法支持這樣的操作場景的,整個SSAS模型都只是一個文件,若真要操作,最終合並的時候也只能手工將新增的內容合並到主項目文件中,並且不能進行很好地版本管理,只有一個bim文件,且不是文本文件格式。
TabularEditor的團隊式開發支持
在另存為功能中,可以保存為文件夾格式,即將Model模型的所有對象拆分為一個個文件
整個模型被打散為100+多個文件
細小顆粒度甚至可以去到單個度量值、計算列、字段等。
有了這麼多的文件並且是json的文本文件,可以使用SVN的版本管理軟件來進行管理及團隊式簽出簽入等管理。
Best Practice Analyzer Improvements基本佳實踐分析
作為資深的專家式數據建模來說,數據建模的終點並非可以跑通並數據能够准確送達即可,還要為了後續模型的擴展性維護更新的方便,及性能的最大化及模型的穩定性等方面考慮。
TabularEditor集成了使用脚本來驗證整個模型是否符合某個特定規則的功能,並且提供了可擴展性個性化規則的創建及社區共同提交運作最佳化實踐的規則討論。
同樣通過json文件格式的方式來維護最佳實踐規則,非常易於管理維護及分享。
模型最佳實踐分析後的結果
同樣使用了C#脚本的方式來做規則設定。
當然我們只需跟隨大師級的最佳實踐即可,所以直接到github上下載其最佳實踐的規則來使用就錯不了,當然自己有能力創建有價值的規則就更棒了,創建了不要忘記到github上提交一下,讓大家也可以享用你的規則。
作者另外設了個github庫來存放這些規則和互動。有興趣的話可以更詳細地去了解下。https://github.com/TabularEditor/BestPracticeRules
其他功能
另外Translations(翻譯)、Perspectives(透視)和Partitions(分區)在大型數據模型也是要使用到的,也可以在TabularEditor上很輕松地使用和維護。
TabularEditor工具作者甚至還做了個Master model pattern主核心模型模式的開發分享經驗,使用TabularEditor的脚本功能配合下,非常棒的體驗,也是對大型數據模型開發中可用到的方法論及實踐,有興趣的話也可以閱讀其github上的文章介紹。 https://github.com/otykier/TabularEditor/wiki/Master-model-pattern
結語
經過三篇文章,給大家分享了TabularEditor的經典用法及高級應用,讓SSAS建模工作變得更加簡便和高效,同時在脚本化使用上,模型的標准化程度也更高,模型的健壯性也得到保障。
相對SSDT的入門式簡單的工具,對於應付更為複雜的實際項目時,TabularEditor的使用更為首選,就算小型項目,熟練使用TabularEditor後,也不會再回過頭來願意再使用SSDT。
同時工具的擴展性也帶給我們很大的增值,使我們學習了C#語言後,又多了一個非常棒的使用場景。
筆者未來聚焦在數據領域的分享,不限於Excel,會分享更多Sqlserver、dotNET、Azure、PowerBI等話題,昇級數據分析的能力,歡迎繼續關注。
相關閱讀
「PowerBI」丟弃SSDT選擇TabularEditor成為你的首選建模開發工具(上)https://www.jianshu.com/p/939f7e8f68d5
「PowerBI」丟弃SSDT選擇TabularEditor成為你的首選建模開發工具(中) https://www.jianshu.com/p/0c61ea76d031
本文分享自微信公眾號 - Excel催化劑(ExcelCuiHuaJi) ,作者:李偉堅
原文出處及轉載信息見文內詳細說明,如有侵權,請聯系 [email protected] 删除。
原始發錶時間: 2019-08-05
本文參與騰訊雲自媒體分享計劃,歡迎正在閱讀的你也加入,一起分享。
版權聲明
本文為[Excel催化劑]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2021/08/20210819183849214R.html
邊欄推薦
- 編輯vim時突然大部分鍵失靈,只剩下空格還能用時,猜猜原因?
- cmseasy&內網滲透 Writeup
- 南開大學 | AbiU-Net:基於Transformer的非對稱雙邊U-Net提昇顯著性目標檢測
- 活久見!TCP兩次揮手,你見過嗎?那四次握手呢?
- MQL5-RPC來自 MQL5 的遠程過程調用
- Oracle(四):和SQL*Plus命令來場邂逅
- stm32+mpu6050+四元數解算
- ScheduledExecutorService scheduleAtFixedRate、scheduleWithFixedDelay以及創建定時心跳
- 太難為我這個應届生了,騰訊面試了8輪,終拿下騰訊Android測發崗offer(1)
- 跨文化研究:遊戲可能在維持文化多樣性方面扮演著重要角色
猜你喜歡
隨機推薦
- uniapp上傳圖片及組件傳值
- php獲取gmt時間及時區修改
- lnmp 三之haproxy的使用
- 華為手機USB連不上電腦的解决方法
- Flutter 2,移動金融應用開發
- 關於st25系列NFC標簽簡單介紹及st25TV系列用於門禁讀取時的注意事項總結
- Alink & FlinkMLlib 文章匯總
- 關於用ffmpeg轉手機視頻發現視頻長寬倒了的問題
- 函數 / 類模板--模板2
- NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}····
- 一場面試結束,某度員工從事Android 5年為何還是初級工程師?
- 3本書閱讀筆記【人月神話-Go語言實戰-研發能力持續成長路線】01
- PHP垃圾回收機制
- 快樂寒假 22/01/20
- 解决延遲有 Wi-Fi 6 就够了!(家裏的 Wi)
- 【ISO15765_UDS&OBD診斷】-01-概述
- 【Mysql上分之路】第九篇:Mysql存儲引擎
- 【Unity Shader】HDRP下Amplify Shader Editor透明物體排序不正確
- yum -bash: /usr/bin/yum: /usr/bin/: bad interpreter: Permission denied
- 惡意軟件分析實戰20-內核級軟件逆向Lab10-2
- RHCE 第一次作業
- 220121--測試用例
- [渝粵教育] 華中農業大學 經濟學原理 參考 資料
- nuxt項目總結-綜合
- C語言第一課
- 各比特大佬,Spark的重點難點系列暫時更新完畢
- 基於 esbuild 的 universal bundler 設計
- XCTFre逆向(四):insanity
- 亞線性的近似最小支撐樹
- JDBC編碼六步走
- 理解什麼是真正的並發數
- 143. 重排鏈錶
- JVM腦圖
- 【Pytorch(四)】學習如何使用 PyTorch 讀取並處理數據集
- 函數棧幀的創建與銷毀
- 構建神經網絡- 手寫字體識別案例
- 多模態生成模型ERNIE-VILG
- kotlin不容忽視的小細節
- 如何將PDF轉換成Word文檔?試試這款PDF轉Word工具—PDF to Word OCR
- 備戰一年,終於斬獲騰訊T3,我堅信成功是可以複制的