Vertica是一款基于列存储的MPP (massively parallel processing)架构的数据库。它可以支持存放多至PB(Petabyte)级别的结构化数据。Vertica是由关系数据库大师Michael Stonebraker(2014 年图灵奖获得者)所创建,于2011年被惠普收购并成为其核心大数据平台软件。
简介
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 集合来监控系统的资源、后台进程、工作负载及性能,通过工作负载分析和数据库设计器自动优化数据库,简化系统管理。
以上摘自百度百科。