集算器37場景

慢!

1清單式大報表難以及時呈現,采用數據庫分頁方式翻頁效率很差

  • 集算器將計算和呈現做成兩個異步線程,取數線程發出SQL將數據緩存到本地,然后交給呈現線程快速展現報表
  • 取數線程只涉及一個事務不會出現數據不一致,保證數據準確性

2查詢報表從數據庫中取數量大,JDBC傳輸性能低

  • 集算器通過(多線程)并行計算與數據庫建立多個連接并行取數提升取數性能
  • 可將量大的冷數據事先存儲在庫外文件系統中,集算器基于文件直接查詢計算,避免通過JDBC取數

3T+0實時全量查詢涉及數據量大,影響生產系統運行,而分庫后又難以實施跨庫混合運算

  • 將冷熱數據分離,僅將當期熱數據存放在數據庫中,冷數據存儲在文件系統或數據庫中,通過集算器完成跨源(庫)計算,完成多源數據匯總、復雜計算,實現T+0全量數據實時查詢
  • 集算器提供不同數據庫的SQL翻譯功能,數據分庫(同構異構均可)后,仍然可以使用通用SQL進行跨庫查詢

4SQL復雜,嵌套層次多,數據庫優化路徑不可控,運算性能低

  • 集算器采用過程計算,分步實施計算簡化實現代碼,無需嵌套
  • 過程中可以復用中間結果,性能更高

5存儲過程步驟多,代碼長,使用臨時表落地中間數據,性能低下

  • 相對存儲過程需要反復讀寫磁盤使用中間結果,集算器提供豐富的運算方案,大量減少中間結果落地,性能更高
  • 集算器采用過程計算,提供豐富函數類庫,實現算法短小精悍易于維護
  • 集算器腳本可以脫離數據庫編寫和運行,減少數據庫安全隱患

6數據關聯運算太多,十幾甚至幾十個表JOIN,性能惡劣

  • 集算器重新定義關聯運算,可以根據計算特征選用不同且高效的關聯算法提升多表關聯性能
  • 一對多的主外鍵表可采用指針式連接提高性能
  • 一對一的同維表和多對一的主子表可采用有序歸并提升性能

7巨大數據量中按條件查詢或用批量鍵值取數,無法建索引或簡單索引效果很差

  • 集算器提供高性能壓縮存儲及遍歷技術,再配合以并行手段,可以從巨量數據中快速獲得查詢結果
  • 對于批量鍵值取數,集算器提供多級索引緩存,可以復用多次取數的索引信息,從而提高性能

8SQL難以實現的運算只能在外部應用程序或用UDF開發,高性能算法實現難度大導致效率低下

  • 集算器采用全新的離散數據集理論,基于該理論實現的SPL具備語法簡潔、計算完備的特點,通過SPL更容易實現低復雜度、簡單靈活的高效算法,從而獲得更高性能

9使用了內存數據庫或內存計算技術仍然不能滿足性能要求,占用內存過大,硬件成本太高

  • 集算器采用非關系數據庫理論,計算過程中有效減少數據復制,不僅占用內存更少,而且運算性能更好
  • 通過指針引用機制可以進一步提升內存利用率和定位效率

10中央數據倉庫支撐了過多應用,并發過多導致性能不可控,前端用戶體驗差

  • 集算器易于應用集成,可將數據倉庫中的部分計算和數據移植到應用層借助集算器計算能力實施數據存儲和計算,分擔數據倉庫壓力

繁!

11生產庫和分析庫在一起,大數據運算可能影響生產系統運行;分庫又難以做到實時全量查詢

  • 集算器可基于生產庫和分析庫進行混合計算,量小的實時熱數據從生產庫查,將對生產系統的影響降到最低,量大的歷史冷數據從分析庫查,兩部分數據混合計算實現全量數據實時計算

12很多業務應用中都要部署單獨的前置數據庫作為數據集市,成本高昂

  • 集算器的強計算能力+數據緩存+數據網關+多源混算可以基于文件系統實現數據集市或前置數據庫,成本低廉,甚至可以直接嵌入到應用程序中

13前置數據庫中只能存放部分頻繁數據,難以與中央數據倉庫混合運算,前端應用只能分別針對不同庫查詢分析

  • 集算器提供了多源異構數據混合計算能力,可以基于前置數據庫熱數據和數據倉庫冷數據進行混合計算
  • 集算器提供標準應用訪問接口,前端應用可以通過集算器實現全量數據統一查詢

14數據庫中有大量非原始數據的中間表,冗余嚴重,而且年代久遠非常難管理

  • 集算器支持將數據庫的中間表移植到I/O性能更高的文件系統,降低數據庫冗余,集算器直接基于文件計算,性能更高,還方便實施并行計算,進一步提升效率
  • 中間表在庫外采用文件系統的樹狀結構進行分類管理,優于數據庫的線性結構,管理方便

15報表或ETL涉及多數據庫和非數據庫的整合,SQL無法直接運算,需要事先匯總到單庫,ETL做成ELT和LET,數據庫臃腫且性能差

  • 集算器作為完備計算引擎可以實現真正的ETL,基于多源混合計算能力先將多源數據進行清洗(E)傳輸(T),將整理好數據加載(L)到目標數據庫,避免匯總到單庫帶來的時間、空間和管理上的過多開銷

16查詢報表涉及Web或IOT等實時數據,事先導入數據庫不僅效率低又影響實時性

  • 集算器提供了不依賴數據庫的計算能力,可以直接基于Web或IOT數據實時計算,不僅編碼簡單,而且性能高實時性好,避免入庫帶來的昂貴成本

17Java和SQL編寫的運算邏輯與界面模板分開存儲,程序耦合性太強,還難以做到熱切換

  • 集算器可作為報表獨立的計算層,數據準備算法和報表模板一起存儲,共同管理,可與應用分開部署,降低應用的耦合度
  • 解釋執行的集算器腳本可實現熱切換

18BI系統(多維分析)的后臺,采用普通數據庫性能跟不上,用專業的列存數據庫又太沉重/造價太高

  • 集算器是一個輕量級數據處理引擎,通過高效的存儲機制和開放計算體系可以為BI系統提供遠高于普通數據庫的性能,同時成本遠低于列存數據庫,還可以直接嵌入到BI系統中,結構非常輕巧

19數據中心對外提供數據訪問服務時要解決權限、脫敏等問題,后臺還涉及多個異構數據倉庫及多樣性數據源整合困難

  • 集算器提供JDBC網關功能,可以在網關層實按成數據權限和脫敏工作
  • 集算器具備多源混算能力,可以直接整合多個異構數據源,對外提供統一數據服務

累!

20報表沒完沒了,業務人員取數需求多,自助報表敏捷BI也不管用,技術部門應對吃力,找不到低成本高效率的應對手段

  • 集算器幫助報表開發徹底工具化,不僅報表呈現層工具化,報表數據計算層也工具化,從而降低報表開發難度,報表實現更快更簡單
  • 對人員要求更低,適合一般程序員使用
  • 報表業務不穩定導致報表沒完沒了不可能消滅,集算器提供了最低成本的應對方案

21數據源SQL或存儲過程過于復雜,嵌套或步驟多,SQL缺乏調試機制,開發效率低下

  • 集算器通過過程計算,分步編程簡化算法開發難度,算法短小、分步同時降低了維護難度,極大改善上千行SQL編寫調試和維護困難的情況

22涉及有序及過程性復雜運算,要用庫外的Java開發或編寫UDF才能完成,人工成本高

  • 集算器支持有序和過程性計算,其集合化、離散性、有序性等特性解決了SQL有序運算困難、JAVA集合運算能力差的問題
  • 集算器采用過程計算機制,提供了豐富的計算類庫,復雜計算編碼簡單,對人員要求低

23涉及MySQL等開源數據庫,窗口函數等許多高級語法不支持,開發困難

  • 集算器作為完備計算引擎,提供了豐富的結構化數據運算函數,改善MySQL等數據庫缺乏復雜函數導致的編碼困難

24涉及NoSQL、文本、Excel、json/xml等庫外數據,無法使用SQL,只能硬編碼,開發效率太低且難以維護

  • 集算器提供直接針對文件使用SQL查詢的功能
  • 提供了對JSON/XML這類分層數據的支持
  • 可以編寫腳本讀取NoSQL、文本、Excel數據,提供實施計算,實現復雜度與SQL相當或更低

25某些數據倉庫(或大數據平臺)對存儲過程支持不好,難以完成復雜運算

  • 集算器作為完備結構化數據計算引擎,可以充當通用庫外存儲過程,具備不依賴于數據庫的強計算能力和易移植特性

26SQL(存儲過程)語法涉及數據庫方言,難以移植

  • 集算器作為庫外通用計算引擎,可以編寫不依賴數據庫的通用算法,數據庫發生變化時無需更改核心算法,易于移植

27ETL工具不能直接解決復雜業務邏輯,還要大量編寫腳本,而ETL工具的腳本功能常常弱于SQL,開發困難

  • 集算器通過計算完備的SPL語言,提供不低于SQL的數據處理能力,面向過程的算法實現方式非常適合復雜的ETL場景
  • 實際應用中,集算器替代已有SQL/存儲過程/腳本可以大幅縮短實現代碼,同時獲得數倍到數十倍的性能提升

Hadoop?

28采用了Hadoop/Spark集群仍然難以獲得期望的性能

  • 集算器提供了簡單、靈活的算法機制,可以根據計算特征編寫適合的高性能算法,結合集算器的高性能存儲和分布式計算機制,可以獲得遠高于Hadoop/Spark的性能

29Spark內存耗用太大,硬件成本太高,很多運算超過內存范圍還無法實施

  • 集算器提供內存和外存兩種計算方式,由于采用高效計算模型,內存計算時效率更高、內存利用率更低,從而降低成本
  • 當內存容量不夠或無需全內存計算時,集算器采用外存計算從而減輕對內存容量的依賴,硬件成本更低

30Hadoop集群規模不大,只有幾個或十幾個節點,管理的數據并不多,無法發揮其優勢,但維護卻很復雜

  • 集算器作為輕量級大數據解決方案非常適合幾個到幾十個節點的集群規模,相對hadoop集算器資源利用率更高,節約資源,同樣的計算指標需要硬件更少,同樣的硬件計算效率更高

31Hadoop/Spark難以完成需要的計算,結果又在旁邊部署傳統數據庫來實施計算,結構累贅且效率低

  • 集算器可將hadoop作為數據源,實現hadoop難以完成的計算
  • 同時支持實時查詢,避免部署RDB帶來的ETL時間成本高,數據實時性差,商用RDB價格成本高等問題

32Hadoop/Spark提供的計算接口不夠用,復雜運算經營還要編寫UDF,開發效率低

  • 集算器計算引擎具備復雜計算實現簡單、效率高的特點,適合使用hadoop或spark卻還經常需要編寫UDF的場景,極大提升開發效率

Python?

33Python并非專門為結構化數據計算設計,開源包貢獻者不同,風格不統一,復雜過程編寫并不簡單

  • 集算器專為結構化數據計算設計,支持過程化計算,提供了豐富的結構化數據集算函數,提供即裝即用的可視化編輯調試環境,非常適合進行桌面數據分析,隨裝隨用,隨用隨走

34涉及Excel/json等非庫數據,Python等開源技術雖然接口豐富,但版本混亂,難以駕馭

  • 集算器具備完備的數據計算能力,作為商業軟件,提供了豐富的接口處理Excel/JSON等非庫數據,即裝即用,避免了Python等開源技術版本混亂、使用困難

35Python缺乏自有大數據方案,幾乎不能寫并行程序,無法充分利用多CPU能力

  • 集算器提供了多線程并行計算和分布式計算能力,通過簡單的腳本即可實現并行計算,可充分利用多CPU核能力實施高性能計算

36Python代碼難以和Java集成,算法需要嵌入到生產系統時常常還要重寫

  • 集算器可作為計算中間件無縫嵌入應用系統,桌面數據分析編寫的腳本可直接移植到生產系統中,無需重寫

37Python等桌面開發環境調試功能不夠友好,開發與測試效率低

  • 集算器提供了易于開發調試的IDE,采用網格式編程方式,提供設置斷點、單步執行、執行到光標等功能
  • 提供可視化結果面板,每步運行結果均可實時顯示,利于開發和排錯
广西快乐十分