簡介
Vertica是一款基於列存儲的MPP(massively parallel processing)架構的資料庫。 它可以支持存放多至PB(Petabyte)級別的結構化數據。Vertica是由關係資料庫大師Michael Stonebraker(2014 年圖靈獎獲得者)所創建,於2011年被惠普收購併成為其核心大數據平台軟體。
Vertica 採用無共享的MPP 架構,基於工業標準的x86 伺服器,擁有高可擴展性。Vertica 集群中的所有節點100%對等,集群中沒有主節點或其他共享資源。通過增加節點,就可以線性地擴展集群的計算能力和數據處理容量。
Vertica 是真正的純列式資料庫,最佳化器和執行引擎可以忽略表中與查詢無關的列。Vertica 不僅僅按列式存儲數據,還主動地根據列數據的特點和查詢的要求選用最佳的算法對數據進行排序和編碼壓縮,這就極大地降低磁碟I/O 消耗。同時,Vertica 的執行引擎和最佳化器也是基於列式資料庫設計的,編碼壓縮過的列數據在Vertica 的執行引擎中進行過濾、關聯、分組等操作時不需要解反編碼,從而大大降低了CPU 和記憶體消耗。
Vertica 充分利用列式存儲的優點,在保持對前端套用透明的前提下,把數據在集群中的所有節點進行均勻分布的同時,還在多個節點上對同一份數據維護了多個拷貝,確保任意一個擴幾個節點出現故障或進入維修狀態都不會影響集群的健康狀態。這使得Vertica 擁有類似磁碟RAID 一樣高可靠性。
無共享的MPP 架構和真正的列式資料庫特性,使Vertica 擁有高性能、高擴展性、高壓縮率、高健壯性的特點。與傳統的解決方案相比,Vertica 可以以30%的成本,實現50 倍-1000 倍的性能提高。
軟體優勢
作為全新架構的實時分析平台,Vertica 有很多的創新,特點包括:
列式存儲和計算
通過列式計算和強大的主動數據壓縮,大幅降低成本高昂的磁碟 I/O(主要是傳統的以行為存儲單位的SQL 資料庫使用),執行查詢的速度可提升 50 到 1000倍,存儲成本最高削減 90%。
“橫向擴展式”大規模並行處理 (MPP)
基於無共享的MPP 架構,支持線上添加數量不限的X86 工業標準伺服器,可根據需求任意擴展解決方案。
實時分析
通過記憶體與磁碟混合存儲架構,以及原生支持kafka 訊息系統的連線,支持數據實時裝載和秒級分析。
資料庫內部分析庫
開箱即用的資料庫內時序插值和關聯、事件視窗和會話處理、模式匹配、空間地理分析、文本情感分析等高級分析,以及廣義線性回歸、邏輯回歸、K-Means聚類、樸素貝葉斯分類等常用機器學習和預測分析功能。您也可以獲取開源分析庫,包括源自 CRAN(綜合 R 存檔網路)的眾多分析功能包。
完整的關係資料庫和SQL 標準支持
Vertica 支持關係資料庫事務處理和ACID 規範,支持SQL-92/SQL-99/SQL-2003 標準,提供ODBC、JDBC、ADO.NET 接口規範驅動,完全兼容傳統關係資料庫的開發、使用和管理習慣,可以輕鬆與現有的ETL 和報表工具集成,保護客戶已有的投資。
可擴展的資料庫內部分析框架
採用面向用戶定義的過程式分析的強大開發框架,實現了對於資料庫內部處理的開放式訪問。除了使用內置的 SQL 分析和聚合函式外,還可藉助 C++/Java/R語言軟體開發人員套件 (SDK) 定義自己的定製函式。SDK 功能可保證沙盒安全,並使函式能夠並行運行以加快運行速度。
原生支持Hadoop
Vertica 可以作為SQL 分析引擎直接部署到Hadoop 集群中,直接存取HDFS上的數據;也可以通過標準SQL 直接訪問Hive 等管理的數據,並與Vertica 管理的數據進行關聯分析;另外Vertica 還提供套用編程接口 (API)支持與MapReduce、Pig 等框架構建結構化、半結構化和非結構化深度融合的大數據分析套用。
自動實現高可用性
不間斷運行,並具有數據複製、故障轉移和恢復功能;Vertica 進行了性能最佳化,並且對業務和運營團隊完全透明。
自動最佳化和性能管理
通過強大的 API 集合來監控系統的資源、後台進程、工作負載及性能,通過工作負載分析和資料庫設計器自動最佳化資料庫,簡化系統管理。
發展歷程
2005年,發表《C-Store: A Column-oriented DBMS》論文,Vertica系統公司成立。
2010年,Vertica在Sybase發起的專利侵權訴訟中勝出,法院駁回了所有侵權請求。
2011年3月,惠普公司收購Vertica系統公司。
版本更新
2006-2012年,發布了1.0-6.x,奠定了MPP列式資料庫引擎地位。
2013年,發布7.0,重點增加了Flex Tables支持半結構化數據的快速探索、Live Aggregate Projections支持數據實時聚合。
2014年,發布7.1,重點增加地理空間信息分析擴展、SQL on Hadoop的新部署模式。
2015年,發布7.2,重點增加了高性能ORC/Parquet開放格式讀取功能、Kafka流式數據為批量載入功能。
2016年,發布8.0,重點增加了Spark連線器支持高性能的雙向數據同步、庫內高性能並行計算的機器學習和預測分析功能、以及AWS、Azure雲平台按需部署模式。