數據倉庫自動化工具:好處還是壞處?
今天在研究像Kettle這樣的 ETL 和數據倉庫解決方案時,我遇到了一個新概念(對我來說),稱為數據倉庫自動化工具。
我還在這裡查看了白皮書,這表明該領域的供應商很少。
我對這些工具的一個反應是:哇,購買其中一種工具的任何人都在進行巨額投資。同時,似乎許多數據倉庫項目都失敗了,即使它們需要大量的開發人員時間來實施。
那麼,如果有人在實際項目中使用過數據倉庫自動化工具,您能回答這些問題嗎?
- DWA 工具是否大大減少了啟動和執行數據倉庫的時間,或者學習該工具所花費的時間是否佔用了原本可以獲得的時間?
- 如果 DWA 工具導致您的數據倉庫項目失敗,原因是什麼?
- 如果你過去做過數據倉庫,沒有使用 DWA 工具,最近也使用過 DWA 工具,你會在下一個數據倉庫項目中再次使用 DWA 工具嗎?
- 您什麼時候會認為 DWA 工具太過分了?
- 您最喜歡使用 DWA 工具的哪一點?你最不喜歡什麼?
我會從使用者的角度來衡量。
我在 SQL Server 後端使用其中一種自動化工具進行了廣泛的工作(大約 15 個項目),結果喜憂參半。
- DWA 工具是否大大減少了啟動和執行數據倉庫的時間,或者學習該工具所花費的時間是否佔用了原本可以獲得的時間?
答案是一個很大的“取決於”。我發現它在很大程度上取決於您正在建構的數據倉庫的複雜性,以及您使用本機工具的技能。只要需求
簡單,我們就可以輕鬆地使用該工具讓客戶設計自己的數據倉庫和 olap 解決方案,只需很少的培訓和底層技術知識即可。 對於使用原生底層工具的經驗豐富的數據倉庫和 OLAP 開發人員來說,收益並沒有那麼令人印象深刻,而且我還沒有看到自動化工具支持 SSIS 和 SSAS 的每一個特性。大多數都提供了可以插入 SQL 或 XMLA 腳本的鉤子,但是隨著項目複雜性的增加,您最終會編寫腳本而不是使用自動化工具。
此外,由於數據倉庫自動化工具支持多個版本的底層技術,我看到 SQL 中的新功能出現較晚或根本不出現在自動化工具中。
- 如果 DWA 工具導致您的數據倉庫項目失敗,原因是什麼?
在大型複雜項目中:自動化工具的性能和缺乏靈活性。如果您手動完成所有操作,您可以按照自己喜歡的方式完美地配置並行處理,您可以在查詢中使用技巧來加快查詢速度,您可以考慮哪些運算符在 SSIS 中阻塞,數據流的沿襲是什麼等等。
- 如果你過去做過數據倉庫,沒有使用 DWA 工具,最近也使用過 DWA 工具,你會在下一個數據倉庫項目中再次使用 DWA 工具嗎?
同樣的“取決於”在這裡也適用。這取決於項目。如果我期望大量數據或大量複雜性,不,我不會,但我可能會考慮
BIML
生成 SSIS 包以避免重複任務。如果它是一個簡單的項目、一個小型源系統,或者我需要讓客戶的關鍵使用者參與該項目並在我離開後接管支持,也許可以。
- 您什麼時候會認為 DWA 工具太過分了?
當價格明顯超過收益時,就會矯枉過正。如果它適合該項目,特別是如果經驗不足的使用者或高級使用者可以接管項目而不是支付顧問費,那麼成本不一定會令人望而卻步。
- 您最喜歡使用 DWA 工具的哪一點?你最不喜歡什麼?
我最喜歡的也是有時不喜歡它的原因。在您的位置做出的僵化和決策確保項目是“乾淨的”並遵循某種方法。尤其是與多個開發人員一起工作,每個人都被迫以某種方式工作可能是一個好處,你只需打開一個項目並知道你會發現什麼。
如果您遇到該工具未預見到的問題,您被迫以某種方式工作這一事實可能會很麻煩。
我想提出的其他幾點
- 對底層技術的支持更好。如果您對如何在 SSIS 或 SSAS 中做某事有疑問,您可以在此處搜尋或詢問。由於 DWA 工具抽象了該層,您需要求助於供應商支持(可能不是免費的)
- 每個軟體都有缺陷。SQL Server 的錯誤在網上有更好的記錄。我記得有一種情況,在與我們的供應商支持人員進行了長時間的討論後,我最終反編譯了 DWA 工具,以弄清楚他們的程式碼中發生了什麼以及為什麼它的行為方式如此。
- 每個 DWA 工具都缺乏靈活性和 SQL Server 社區所具有的靈活性,遲早您可能會遇到該工具必然具有的限制。以版本控制為例。DWA 工具可能會自行執行,並且可能或多或少地工作,但是如果您有一個簡單的 Visual Studio 項目,您可以將其添加到您的 TFS 中,其餘程式碼所在的位置,使用 BIDShelper 來獲得可讀的差異等。如果您需要SSAS 中的儲存過程,您也可能會不走運。
埃克森的名單沒有得到很好的研究。在我們的網站http://ajilius.com/competitors上有更全面的數據倉庫自動化工具目錄。
我將從供應商的角度回答您的問題。
- 我們的客戶報告說項目時間大大節省。大多數 DWA 產品都是由數據倉庫人員編寫的,他們首先希望節省自己的時間,然後將他們的產品商業化。與任何 ETL 工具相比,我想不出任何 DWA 工具實際上需要更長的時間來建構給定場景。
- 我們在運營的第一年有兩次失敗。一位客戶試圖將我們的產品用於其並非設計的方法論,我們現在在銷售對話中強調該方法論(Kimball)。另一個是我們產品的一個缺點,(當時)我們沒有正確處理橋接表。兩位客戶都收到了全額退款,我們現在在付款前將 30 天的完整產品試用作為我們銷售的一項功能。
- 我曾經為一家全球數據庫供應商銷售數據倉庫工作負載,包括供應商的 ETL 工具。我還在一些倉庫項目中使用了獨立的 ETL 工具。即使我們自己的產品不存在並且我被迫使用競爭對手的工具,我也不會再使用 ETL 而不是 DWA 工具。
- 絕不。好吧…如果您正在建構數據倉庫,我希望該工具可以端到端使用。我們有幾個案例,其中該工具僅用於提取和載入,但客戶編寫了自己的轉換程式碼。這可能是矯枉過正,但我們的價格點(見下文)是成本合理的。
- 我最喜歡的功能是能夠向客戶展示他們的需求,然後在他們改變主意時快速更改解決方案;並在任何時間點生成完整的文件。
你提到了巨大的投資。這僅適用於市場上的遺留產品。我們的產品 (Ajilius) 擁有每年 5,000 美元的站點許可,擁有無限的使用者、無限的伺服器和無限的數據庫。其他產品,如 Leapfrog,可能還有 Dimodelo(價格最近發生了變化)也是低成本的好產品。Quipu 等產品有免費版本,Optimal ODE(開發中)也有,我認為 Varigence BIML 也可能有免費增值模式。
我希望這看起來不太像廣告,但這是從使用過許多數據倉庫自動化產品的人的經驗中得出的誠實答案。