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%,詳情請參見冷熱分離介紹。 | 不支持 | 不支持 | |
擴展性與彈性 | 最小規模 | 1個節點,并且提供Serverless模式,最小規模為0。 | 至少3個節點 | 至少3個節點 |
擴展性 | 強,支持水平伸縮至幾千節點。 | 強,支持水平伸縮至幾千節點 | 中,支持水平伸縮,百個節點往上有瓶頸 | |
彈性 | 通過Serverless,實現自適應伸縮,按需即時彈性。 | 中,手動擴容,分鐘級 | 弱,擴容需要搬遷數據,小時級 | |
可靠性 | 主備雙活 | 成熟,支持自動容災切換、雙集群請求并發等高級能力,支持與自建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等。 | 無優化,數據集成需要較大開發 | 無優化,數據集成需要較大開發 | |
MaxCompute | 產品化集成,支持Lindorm數據增量歸檔到MC。 | 數據集成需要較大開發 | 數據集成需要較大開發 | |
日志服務(SLS) | 通過LTS(原BDS)服務介紹,支持實時訂閱SLS數據到Lindorm。 | 數據集成需要較大開發 | 數據集成需要較大開發 | |
服務能力 | 可用性SLA | 提供SLA保障,單集群99.9%,雙集群高可用99.99%。 | 無 | 無 |
運維成本 | 全托管,無需復雜的數據庫運維投入。 | 無 | 無 | |
技術團隊 | 由多名Apache社區PMC和Committer組成的專家隊伍提供技術服務支持。 | 無 | 無 | |
實踐經驗 | 支持9年天貓雙十一,阿里部署上萬臺。 | 無 | 無 |