企業自建大數據分析BI平臺,需要考慮哪些點

BI(Business Intelligence),中文爲:商業智能。是利用軟件或服務來把遍佈於企業各處的數據轉化爲可行動的洞察,從而來影響企業的戰略和戰術決策。

 

BI進入中國市場已經有20餘年,而到目前,並不是所有企業都配備了BI系統。有些公司體量較小,需要處理的數據量只有不到10萬行,一套Excel就可以解決。

 

而隨着很多公司規模越來越大,逐步健全了ERP、POS、CRM、OA等IT系統,沉澱了海量的數據資源,如果還是從單一系統來看數據,對於最高決策層來說,就很難全局瞭解整個公司的整體運營情況,這時,企業對BI的需求就應運而生。

 

BI不僅能給公司提供一個權限分明的一站式大數據分析平臺,解決數據融合的問題,還可以彌補Excel、報表等事後分析、靜態報告的弊端,提供實時、動態交互的分析能力。以觀遠數據爲代表的新一代BI平臺,還可以在此之外提供可視化自助分析、十億行數據秒級響應、一鍵AI預測等超前的數據分析能力。

 

總結來說,當企業數據量達到幾十萬行,業務量正在急速增加,而傳統的分析工具已經很明顯地跟不上內部業務發展速度,嚴重影響決策效率和準確度,或者公司已經有了明確的IT項目規劃,都可以考慮使用BI系統。

 

01.BI在技術能力上包含什麼

 

BI是一個複雜的系統,涉及到技術的方方面面,而對於企業要實現的功能來說,主要可以總結爲以下六點:

  • 數據可視化

  • 數據分析

  • 數據集成

  • 內容分發

  • 企業集成

  • 部署方式

 

1、數據可視化

 

對於企業最爲關心的可視化模塊,可以通過以下幾種開源技術進行實現:ECharts、D3、Vega & Vega-Lite。

 

(觀遠數據數據可視化圖片)

 

ECharts是目前國內最流行的開源可視化圖表庫,起源自百度,目前在Apache孵化器中孵化。ECharts提供了使用“JSON”來開發定製的配置方式,帶有很多豐富的可視化圖形,很適合與起步階段的企業。(詳細操作可參考:技術人員眼中的BI之可視化 —— 實幹家:ECharts

 

D3,全名是:Data-Driven Documents。D3的特點首先是表達能力非常強大,其次是非常底層,如果類比編程語言的話, D3可以算是C語言,SVG是彙編語言。(詳細操作可參考:技術人員眼中的BI之可視化 ——藝術家:D3

 

Vega 和 Vega-Lite都誕生於美國華盛頓大學交互數據實驗室(Interactive Data Lab)。相比於同是受“圖形語法”啓發的D3,Vega對於非常多的通用可視化提供了便利的支持,並且也仍有一定的定製化能力。而 Vega-Lite 則是基於Vega,對於各種常用統計圖形提供了更簡單直接的支持。(詳細操作可參考:技術人員眼中的BI之可視化 —— 標準家:Vega & Vega-Lite

 

對於使用ECharts來說,首先會去看自己想要做什麼樣的圖形,再去找例子,然後看怎樣把數據轉換成圖形,是一種從圖形到數據的過程。而對於Vega-Lite來說,首先是看自己到底有哪些數據,然後去看從哪些維度進行分析,最終的可視化圖形就自然來了,所以它是一個從數據到圖形的過程。這兩者看着類似,但其實理念是不一樣的。而對於BI來說,基礎是數據,然後再去看要怎麼分析,這樣才能抓住重點。

 

2、數據分析

 

有了Vega-Lite和Voyager就可以產生BI?如果將這兩者進行組合來代替BI,很快企業又會遇到新的瓶頸。例如,Vega-Lite默認是把所有的數據都加載到前端JS中進行處理,一旦數據量已經大到了幾千萬上億行,就很難處理,需要有一個強大的後端去支持,這個就是數據分析過程。

 

比如說企業一些主要數據,默認爲他來自於一些關係型數據庫,所以,最簡單的處理方法就是,先去看下Vega-Lite產生的JSON有哪些數據維度,做了哪些數據轉換,然後把它轉化成關係型數據庫所需要的SQL形式去直接查詢數據庫,這樣就解決了數據直連中數據量過大的問題。

 

除了支持關係型數據庫,在BI系統中,可以通過把CSV和Excel導入到關係型數據庫中,通過查詢關係型數據庫,處理本地的數據文件。對於企業擁有多種數據庫類型,爲了解決跨庫查詢的難題,可以將不同數據庫的數據導入到某個關係型數據庫中作爲中央庫來解決,或者使用一些外部表來關聯數據,也可以起到數據融合的作用。

 

當企業的數據量越來越大,一臺關係型數據庫無法承載時,則可以使用大數據或分佈式處理的方式。例如觀遠數據目前依託Apache Spark數據處理引擎,再結合Kubernetes來管理,就可以形成一個分佈式、集羣化的操作系統彙總所有的數據,做到分佈式處理。

 

3、數據集成

 

數據是BI的基礎,而在企業內部,數據源不會只來源於一個途徑,可以是關係型數據庫、CSV、Excel、Web Services等。

 

觀遠數據目前可以支持20多種數據庫對接。對於CSV或者Excel,可以把它導入到中央存儲庫中,CSV可以用Apache Commons-CSV去解析內容,Excel就可以用Apache POI來解析。對於關係型數據庫,可以直接用JDBC或ODBC接口來直接查詢,或者把它們也導入到中央數據庫中。

 

 

而對於其他類型,比如Web Services、業務系統、HBase、ElasticSearch等,建議可以把一些基礎的操作定義爲插件的API,並提供一些SDK來輔助業務人員去編寫插件,這樣就接入系統中各種各樣的數據,真正做到融合所有數據。

 

4、數據分發

 

數據分發可以總結爲數據可視化結果展現給用戶端的能力,比如我們常見的用Excel表格做日報週報,或者靜態的PPT分析報告等。

 

觀遠數據目前提供數據大屏、移動BI輕應用等多種應用形式,並且支持數據預警、郵件訂閱等功能,當數據達到危險閥值時也能一鍵觸發給對應負責人。

 

 

5、企業集成

 

BI是企業決策的一箇中樞系統,但如果不能很好地融入到企業常規辦公系統中,也會給使用者帶來困擾。而達到這個目的,首要考慮的是如何把他的賬號體系和核心辦公系統綁定在一起。

 

這個時候就可以使用Keycloak,它是集中身份認證和訪問控制中心,提供了單點登陸SSO、用戶組、角色管理、微服務授權等多功能。尤其當企業的應用平臺較多時,如果說每一個系統都要求實現一套自己的帳號管理,就會帶來一些重複的開發成本和複雜的使用體驗。另外,藉助Keycloak這種集中身份認證,也可以把微服務等也納入到權限控制體系中,真正做到單點登錄。

 

6、部署方式

 

不同的企業用戶對於BI部署方式的選擇不一樣,選擇之後所做的一系列動作也會存在很大差異。如果是部署在公有云上,就要充分應用公有云的功能,例如公有云所提供的託管服務,可以用它託管數據存儲、數據監控、日誌等。

 

利用公有云的優點是:可以藉助雲服務商大量現成的功能,快速開發自己的系統。另外,雲服務商是比較穩定的,也有很多專業的運維人員幫企業做運維,這樣就可以節約成本。但同時也要考慮一點,就是雲服務商是按照階梯收費的,隨着企業數據量越來越大,雲服務上的消費也會越來越高,而因爲之前在雲服務商上已經綁定了很多專有服務,所以就很難再遷移到其他服務商上。

 

如果說企業的業務既有本地化部署又有公有云,則可以採用Kubernetes。如果是公有云,企業可以使用託管的Kubernetes集羣。而對於私有化就會複雜一點,需要自己去管理和安裝Kubernetes,這個是比較有挑戰的,還要考慮到Kubernetes的高可用性。當然,如果是節點比較少的時候,建議可以使用簡化版的Kubernetes —— K3S就可以大大簡化安裝過程。

 

02.BI在應用和發展中遇到的機遇和挑戰

 

不管是數據可視化、數據分析、數據集成、內容分發、企業應用還是部署方式,BI功能實現的每個環節都充滿了挑戰。主要集中在以下幾點:

 

  • 如何去融合和管理BI所有的功能點。尤其是當企業的BI平臺已經有上百個功能時,如果此時要新增一個功能,而這個功能可能和之前50個功能都有關係,這時就可能發生破壞之前功能,或者之前其它功能點上是不可用的情況。

  • 穩定性和高可用性。所有系統不管開源還是商業的,都需要投入大量的人力和財力。觀遠數據在使用Spark引擎時,也遇到過一系列數據傾斜或任務變慢的問題,最後都是通過時間積累和技術優化去克服這些難題,給用戶呈現出一個高穩定高可用的產品。

  • Docker/Kubernetes使用問題。對於Docker/Kubernetes,偶爾會遇到內部DNS不穩定、iptables錯誤,端口一段時間後無法連接等問題。

  • 數據庫標準問題。每種數據庫都有自己的標準,而很多數據庫只規定了很少的一部分標準,對於標準中沒有提到的部分,每個廠家又有自己的一套實現形式,尤其是一些日期函數、總計小計等都需要去支持。另外就是對於每一個數據庫,如果要從那獲取數據,一定要做到能夠去增量獲取,而不是查詢結果立馬都加載到內存中,這樣就會造成機器沒有內存。

 

面對如此多的挑戰,總結來說,自研成本比採購成本要高出很多,對於IT資源有限的企業,建議可以採購成熟的BI系統。

 

當然,如果企業堅持自研,也可以藉助Apache Spark、Kubernetes/K3S、Keycloak等豐富的開源軟件。一方面企業可以利用這些軟件去搭建BI系統,另一方面,企業的研發人員也可以通過這些軟件去學習更多的開源知識,提高自己的架構水平。

 

其次,我們正處於一個馬上要變革的雲原生(Cloud Native)時代,在新的時代,也會誕生更多的開源項目,中國的本土開源項目發展也將會推動企業BI項目的構建。

 

03.BI如何衍生數據生態

 

以智能決策爲目標,數據可視化爲最終展現形式,可以推倒出整個BI體系。那麼,BI體系是如何產生數據生態?

 

首先當BI使用越來越多之後,任務類型也會隨即增多,比如說ETL處理任務、卡片任務、訂閱任務、預警任務等同時出現,隨之而來的任務調度數量也會越來越多,從每天幾百個到每天上千上萬個。如果調度不好就可能出現某個任務一直在被調度,被多次觸發的情況。而這時,就可以選用一些支持複雜調度的開源軟件,比如Apache DolphinScheduler。

 

第二個機遇是從BI這邊會演化出一些數據血緣關係和元數據管理的需求。比如說是隨着BI的使用越來越多,業務人員可能同時做了上千張的可視化頁面、上千個數據集、上千個ETL等,如果系統沒有一個很好的管理軟件,就會出現業務人員想要新增功能,又無法查詢之前是否有過類似功能的情況。或者即使知道有,也不敢在原來基礎上修改,害怕牽一髮而動全身。長期這樣惡性循環下去,就是每個人都在加重複的邏輯和計算,導致系統資源浪費和口徑不一。這個時候,企業就需要一些血緣關係和元數據管理軟件。

 

最後是質量檢測和數據治理。比如說,有同事將ETL做錯了出現很多Null值,或者數據更新不及時,導致後續數據錯誤等情況。這時,就需要一些數據質量檢測和數據治理的工具,把錯誤扼殺在源頭,減少數據排查工作。

 

04.未來,BI有哪些發展趨勢

 

從Excel、報表系統到BI,BI產品在中國市場已經接近成熟,而在未來,也會向以下幾個趨勢發展:

 

實時性:原來BI解決的都是T+1的歷史數據處理,只是支撐管理層一些基本的看數需求,而隨着使用的羣體逐漸覆蓋公各個層級的日常運營,就更需要一些實時的數據分析去做監測做管理,比如在活動期間去監測門店的實時銷量和實時庫存。而實時性對於很多BI產品來說具有很大的挑戰性,既要考慮將實時性、離線化、批量化很好地融合在一起,又要考慮他的易用性和計算成本。

 

BI+AI:隨着算法、算力的成熟,以及企業對於更高階的數據分析需求的產生,未來,AI將會和BI更緊密的結合,產生更多的應用場景。觀遠數據一直秉承着從BI到AI的理念,並首創性地提出一整套從BI(敏捷分析)到AI(智能決策)的完整“5A”落地路徑方法論(Agile敏捷化、Accurate場景化、Automated自動化、Actionable行動化、Augmented增強化),爲企業構建智能決策大腦。

 

 

一站式:國外的BI廠商更傾向於做BI功能中的某一點,比如專門做可視化,而國內的企業需要的是從數據接入、數據準備、數據分析、數據可視化到分發應用的一站式服務。只有形成一個從數據到決策的閉環,才能不斷優化各個環節的產出和流程。

 

BI作爲企業決策的中樞系統,在大數據時代,將會發揮越來越重要的作用。不管是自研還是採購,企業越早規劃,距離智能數據決策就更近一步。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章