Lindorm寬表引擎是面向海量半結構化、結構化資料設計的分布式儲存,相容HBase、Phoenix(SQL)、Cassandra等開源標準介面,下文將對它們之間的異同做一個對比,以便使用者有更好的瞭解。
特性 | 雲原生多模資料庫Lindorm | 開源HBase | 開源Cassandra | |
核心功能 | 資料模型 | 支援寬表、時序、搜尋、檔案等多種資料模型,並且寬表支援多端、多API。 | 僅寬表 | 僅寬表 |
訪問API | 包括HBase API、Cassandra CQL、Phoenix SQL,並且多端資料互連。 | HBase API或Phoenix SQL | Cassandra CQL | |
SQL | JDBC標準,相容Phoenix,具備更好的穩定性與效能。 | 依賴外部Phoenix支援 | 簡單SQL方言 | |
資料類型 | 豐富。 | 只支援byte[] | 豐富 | |
TTL | 企業級TTL,支援表、行、Cell等多種粒度。 | 支援表和Cell級 | 只支援表級 | |
強一致 | 支援強一致、最終一致等多一致性等級。 | 支援 | 不支援 | |
全域二級索引 | 內建,查詢透明、高效能、按需冗餘非索引列。 | 依賴外部組件,複雜 | 支援,但資料非強一致 | |
多維檢索 | 與搜尋引擎LindormSearch智能整合,支援海量資料的儲存、多維查詢、全文檢索索引等統一訪問能力,詳情請參見搜尋索引介紹。 | 不支援 | 不支援 | |
效能 | 吞吐效能 | 單機吞吐是開源HBase的7倍,詳情請參見測試結果分析。 | 無 | 無 |
請求毛刺 | P99延遲是開源HBase的1/10,詳情請參見測試結果分析。 | 無 | 無 | |
成本 | 儲存成本 | 支援效能型、標準型、容量型等多種儲存規格,成本比雲端硬碟自建低80%。 | 雲端式盤、本地碟自建,成本高且不彈性 | 雲端式盤、本地碟自建,成本高且不彈性 |
存計分離 | 是,儲存和計算分別支援伸縮。 | 否 | 否 | |
資料壓縮 | 內建深度最佳化的壓縮演算法,資料壓縮率高達10:1以上,相比snappy提高50%以上。 | 支援snappy/LZ4/LZO,壓縮率不高 | 支援snappy/LZ4,壓縮率不高 | |
編碼 | 面向資料類型的自適應編碼,壓縮率高,並且無需解碼,即可快速尋找。 | 支援DIFF,壓縮效果一般,並且編碼後的資料無法檢索 | 無 | |
冷熱分離 | 冷熱資料自動分層,其中冷資料使用高壓縮和廉價儲存,減少80%成本,熱資料可提升訪問效能15%,詳情請參見冷熱分離介紹。 | 不支援 | 不支援 | |
擴充性與彈性 | 最小規模 | 不涉及。 | 至少3個節點 | 至少3個節點 |
擴充性 | 強,支援水平伸縮至幾千節點。 | 強,支援水平伸縮至幾千節點 | 中,支援水平伸縮,百個節點往上有瓶頸 | |
彈性 | 不涉及。 | 中,手動擴容,分鐘級 | 弱,擴容需要搬遷資料,小時級 | |
可靠性 | 主備雙活 | 成熟,支援自動容災切換、雙叢集請求並發等進階能力,支援與自建HBase/Cassandra構建混合主備。 | 無最佳化,不支援切換 | 支援,但需要三副本 |
跨機房強一致 | 跨機房部署,支援機房級故障的自動回復,並保證資料的強一致。 | 不支援 | 不支援 | |
備份恢複 | 支援100TB+規模的資料備份至OSS,並提供與規模無關的RTO(小於30分鐘)、按需備份、指定時間點恢複等進階能力,詳情請參見開通備份恢複。 | 支援,能力弱 | 支援,能力弱 | |
全球多活 | 支援,全球多地多單元部署,資料按需同步。 | 不支援 | 支援,能力一般 | |
多租戶與安全 | 認證與ACL | 支援易用的帳號密碼認證+ACL,使用請參見系統管理使用者。 | 不支援 | 支援 |
資源隔離 | 提供Resource Group特性,支援租戶間的資源物理隔離。 | 不支援 | 不支援 | |
Quota | 支援租戶的全域Quota,包括請求、儲存等。 | 只支援單Server | 不支援 | |
靜態加密 | 支援,密匙KMS託管,資料和Log全加密。 | 支援,較弱 | 不支援 | |
RPC黑名單 | 支援,可限制RPC調用。 | 不支援 | 不支援 | |
審計 | 計劃中。 | 不支援 | 不支援 | |
進階特性 | Feed流API | 提供社交IM情境專屬的FeedStream功能,開發效率和運行效能提升一個數量級。 | 不支援 | 不支援 |
表資源回收筒 | 資料表被刪除後進入資源回收筒,支援找回,防止誤刪。 | 不支援 | 不支援 | |
級聯Split | Region可以連續Split,無需等待Compaction,可大幅提升擴充和負載平衡能力。 | 不支援 | 不支援 | |
離散TTL | 支援保留多個時間區段的資料。 | 不支援 | 不支援 | |
營運診斷 | 營運工具 | 介面化叢集管理工具,支援表,Namespace,Group,ACL等管理,請參見登入叢集管理系統。 | HBase Shell | 黑屏工具 |
資料查詢 | 叢集管理系統內支援圖形化SQL互動查詢,請參見資料查詢,也支援使用開源工具HBase Shell/CQLsh。 | HBase Shell | CQLsh | |
生態體系 | 資料搬遷 | 支援與HBase/Cassandra各個版本之間的線上、跨版本、自動化、高效搬遷,應用零影響、零改造,請參見LTS(原BDS)服務介紹。 | 只能離線遷移 | 只能離線遷移 |
MySQL資料同步 | 通過LTS(原BDS)服務介紹,支援MySQL資料到Lindorm的全量匯入和增量同步處理。 | 自己用工具,不支援線上增量 | 自己用工具,不支援線上增量 | |
Spark分析 | 產品化深度整合,支援Spark SQL分析Lindorm、Lindorm資料增量同步處理到Spark,離線分析結果迴流到Lindorm等。 | 無最佳化,Data Integration需要較大開發 | 無最佳化,Data Integration需要較大開發 | |
MaxCompute | 產品化整合,支援Lindorm資料增量歸檔到MC。 | Data Integration需要較大開發 | Data Integration需要較大開發 | |
Log Service(SLS) | 通過LTS(原BDS)服務介紹,支援即時訂閱SLS資料到Lindorm。 | Data Integration需要較大開發 | Data Integration需要較大開發 | |
服務能力 | 可用性SLA | 提供SLA保障,單叢集99.9%,雙叢集高可用99.99%。 | 無 | 無 |
營運成本 | 全託管,無需複雜的資料庫營運投入。 | 無 | 無 | |
技術團隊 | 由多名Apache社區PMC和Committer組成的專家隊伍提供技術服務支援。 | 無 | 無 | |
實踐經驗 | 支援9年天貓雙十一,阿里部署上萬台。 | 無 | 無 | |