從0開始,構建全棧和通用的大數據系統(一)

Laxcus大數據管理系統

Laxcus大數據技術實驗室

摘要

本文闡述一套全功能的通用大數據管理系統。它源自當初這樣一個思考:能不能在一套產品里,集成大數據所有功能,向上支持大數據應用,向下整合各種軟硬體基礎設施,為用戶提供完整、通用一站式的大數據解決方案。從而解決目前積木式模塊框架存在的:層次繁多、功能分散重疊、兼容和安全性差、組織部署困難、運行效率低下、開發維護使用成本高昂等諸多問題。

為此,我們摒棄積木式設計思維,將各種大數據處理工作做為一個整體考慮。從零開始,從最底層做起,在總結大量業務需求和應用案例的基礎上,結合軟硬體平台特點,採用體系化、集成化、全功能、一站式的設計思想,將雲管理、大數據、資料庫、容器、中間件的技術和功能溶為一體。同時滿足用戶的部署、運行、開發、測試、維護需求,和具備使用的便捷性、安全性,以及極低的成本,並且在集群規模和數據處理能力上,首次達到1,000,000+級節點和EB量級(1EB = 1,073,741,824GB)可計算數據,以及100,000,000+次/秒響應規模。使之成為適合全行業、全球用戶使用的通用大數據管理系統。

前言

過去七年,我們設計開發了Laxcus大數據管理系統。在設計這套產品前,市場上雖然已經有多種數據產品,卻沒有一家能夠提供一套功能完整、適合各行業使用的通用大數據軟體,這是我們設計這套系統的初衷。更重要的原因是,隨著大數據應用的快速發展,存儲計算規模越來越大,以及需求多樣性的增加,導致數據處理過程更加複雜和緩慢。如何解決這個問題,在保證效能的前提下,改變大數據應用現狀?針對軟硬體性能特點,採用架構/功能一體化設計,增加內聚,減少調用層次和處理流程,改進人機界面,提高分布效能,無疑是一個很好的解決思路。但是這個方案也因為體系化和集成化設計的緣故,需要涉及多個技術領域,在當時的技術條件下,設計這樣級別的大數據系統,有許多不確定因素,面臨著巨大的研發風險。這些風險歸納起來,主要包括以下幾個方面:

1.對硬體成本和運營成本的考量。

2.分布環境下,系統穩定性和可靠性的問題。

3.數據業務和處理規模可擴展性、可承載能力、適用性的問題。

4.軟硬體冗餘容錯和處理的問題。

5.系統安全的問題。

6.人機介面的設計,包括簡化開發、管理、操作流程的問題。

7.軟硬體結合和多平台兼容的問題。

8.各個子系統整合和設計指標平衡的問題。

在此後七年時間裡,經過我們持續研發和版本升級,上述問題已經全部解決,目前Laxcus大數據管理系統的主要特徵是:

1. 硬體基礎設備定位於PC、移動架構平台,來減少用戶採購、運營費用。

2. 系統總體設計成松耦合架構,在此框架下實現多集群、多用戶、多任務,和數據業務的可定製、可擴展。

3. 網路通信採用二進位協議,來提高數據傳輸和處理效率。

4. 引入自適應機制,使集群具備自組織管理和容錯處理能力,降低運維人員工作壓力。

5. 依託多集群並行和弱中心管理的特點,實現超大規模、可伸縮的數據存儲和計算。

6. 底層數據採用混合存儲方案,支持OLTP和OLAP業務兩種業務模式,實現數據即時存取。

7. 數據處理融入SQL思想,兼容資料庫,滿足高並發和高可靠性兩種需求。

8. 索引矩陣融合分區、動態關係、圖論、鍵值技術,實現網路數據的精準定位和快速查詢。

9. 全新設計的分布演算法,保證數據處理簡捷高效。

10. 組件化編程,結合容器管理,來減少數據業務的開發和維護難度。

11. 體系化安全策略,將安全管理納入系統每一個環節。

12. 使用類自然語句命令操縱集群,覆蓋全部數據處理和管理工作。

13. 支持全球所有字符集,滿足不同國家地區的用戶語言使用習慣。

Laxcus大數據管理系統運行在Linux/Windows操作系統上,支持X86、ARM、POWER PC、NVIDIA硬體平台。以下將以2.6版本為基礎,結合之前版本,來介紹Laxcus大數據管理系統主要的設計、技術、實現,以及發展過程。

關鍵字: 集群、節點、松耦合架構、人機交互、FIXP協議、數據塊、數據分區、分布描述語言、分布任務組件、分布鎖、安全、DSM、NSM、Invoke/Produce、Diffuse/Converge、Scan/Sift、Marshal/Educe、RPC、SQL、可調CAP策略、跨用戶資源共享。


推薦閱讀:

中華財寶:珠寶行業在大數據時代該如何前行?
大數據時代來臨,會將水務未來帶向何處?
大數據計數原理1+0=1這你都不會算(七)No.59
數據產品經理之道
天元數據網線上零售數據成為新消費時代零售業勝負手

TAG:大數據 | 大數據分析 | 自己動手做大數據系統書籍 |