月光寶盒
Moonbox是一個DVtaaS平臺解決方案。Moonbox致力于提供基于數(shù)據(jù)虛擬化設計理念的批量計算服務解決方案。Moonbox負責屏蔽底層數(shù)據(jù)源的物理和使用細節(jié),為用戶帶來類似虛擬數(shù)據(jù)庫的體驗。通過統(tǒng)一SQL語言,用戶可以透明地混合和編寫異構數(shù)據(jù)系統(tǒng)。此外,Moonbox還提供數(shù)據(jù)服務、數(shù)據(jù)管理、數(shù)據(jù)工具、數(shù)據(jù)開發(fā)等基礎支持,可以支持更加敏捷靈活的數(shù)據(jù)應用架構和邏輯數(shù)據(jù)倉庫實踐。
特征
多租戶支持Moonbox建立完整的用戶系統(tǒng),引入了Organization的概念,用來劃分用戶空。系統(tǒng)管理員ROOT帳戶可以創(chuàng)建多個組織,并在組織中指定一個或多個組織經(jīng)理。SA負責創(chuàng)建和管理普通用戶。Moonbox將普通用戶的能力抽象為六個屬性,即是否可以執(zhí)行Account management語句、DDL語句、DCL語句,是否可以授權其他用戶執(zhí)行Account語句,是否可以授權其他用戶執(zhí)行DDL語句,是否可以授權其他用戶執(zhí)行DCL語句。通過屬性的自由組合,可以構建滿足各種角色和需求的用戶系統(tǒng)模型,實現(xiàn)多租戶。
Moonbox以Spark為計算引擎,可以支持各種數(shù)據(jù)源的混合計算,如MySQL、Oracle、Hive、Kudu、HDFS、MongoDB,支持用戶自定義擴展。
統(tǒng)一SQLMoonbox將查詢語言統(tǒng)一到Spark SQL中,使用Spark SQL語法進行查詢操作,擴展了一套DDL和DCL語句。包括創(chuàng)建、刪除和授權用戶、訪問數(shù)據(jù)表或數(shù)據(jù)列、裝載和卸載物理數(shù)據(jù)源或數(shù)據(jù)表、創(chuàng)建和刪除邏輯數(shù)據(jù)庫、創(chuàng)建和刪除udf/udaf、創(chuàng)建和刪除計劃任務等。
優(yōu)化策略Moonbox基于Spark,Spark SQL支持多數(shù)據(jù)源。而Spark SQL只是在從數(shù)據(jù)源拉數(shù)據(jù)時向下推項目和篩選運算符,沒有考慮數(shù)據(jù)源的計算能力特點。Moonbox進一步優(yōu)化Spark Optimizer優(yōu)化的LogicalPlan,根據(jù)規(guī)則拆分可以下推的子樹,將子樹映射成數(shù)據(jù)源查詢語言,將推的結果拉回到Spark參與進一步計算。如果可以將LogicalPlan整體下推,Moonbox就不會使用Spark進行計算,而是直接使用數(shù)據(jù)源客戶端運行邏輯Plan映射的查詢語句,減少啟動分布式作業(yè)的開銷,節(jié)省分布式計算資源。
1.《混之從零開始 從零開始理解大數(shù)據(jù)架構之大數(shù)據(jù)虛擬混算》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡信息知識,僅代表作者本人觀點,與本網(wǎng)站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《混之從零開始 從零開始理解大數(shù)據(jù)架構之大數(shù)據(jù)虛擬混算》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/tiyu/1407959.html