产品特点
MySQL协议兼容
PALO提供兼容MySQL协议的连接接口,使得用户不必再单独部署新的客户端库或者工具,可以直接使用MySQL的相关库或者工具;由于提供了MySQL接口,也容易与上层应用兼容;用户学习曲线降低,方便用户上手使用。
大查询高吞吐
利用MPP架构的优势,使得查询能够分布式的在多个节点并行执行,充分利用集群整体计算资源,提高大查询的吞吐能力。
高并发小查询
通过使用分区裁剪、预聚合,谓词下推,向量化执行、异步RPC等技术,PALO可以支持高并发点查询场景。100台集群可达10w QPS。
数据更新
PALO 支持按主键删除和更新数据。能够方便的从 MySQL 等事务数据库中同步实时更新的数据。
高可用和高可靠
PALO中的数据和元数据都默认使用3副本存储(Leader Node节点和Compute Node节点需各自大于等于3)。在少数节点宕机的情况下,依然可以保证数据的可靠性。 PALO会自动检查和修复损坏的数据,并将请求自动路由到健康的节点,7*24 小时保证数据的可用性。
水平扩展和数据均衡
Leader Node节点和Compute Node节点都可以进行横向扩展。用户可以根据计算和存储需要,灵活的对节点进行扩展。其中Compute Node节点在扩展后,PALO会自动根据节点间的负载情况,进行数据分片的自动均衡,无需人工干预。
物化视图和预聚合引擎
PALO支持通过物化视图或上卷表的形式对数据预聚合计算后的结果进行存储,从而加速部分聚合类场景的查询效率。同时,PALO能够保证物化视图和基础表之间的数据一致性,从而使得物化视图会查询和导入完全透明。PALO内部会自动根据用户的查询语句,选择合适的物化视图进行数据摄取。
丰富的数据导入功能和导入事务保证
PALO支持多种导入方式。不仅支持近实时的流式导入,也支持大批量的数据导入。同时还可以直接订阅和消费kafka中的数据。PALO自身提供导入事务支持,配合导入Label机制,可以保证导入数据的不丢不重和原子一致性。
高效的列式存储引擎
PALO采用自研的列式存储格式来提升OLAP领域的查询效率。存储采用字典编码、RLE等多种编码方式,配合列式存储的特点,提供了非常高的数据压缩比,帮助用户节省存储空间。同时,存储格式上提供包括Min/Max智能索引、稀疏索引、布隆过滤器、bitmap倒排索引等多种查询加速技术,进一步提升了查询效率。
在线表结构修改
支持在已导入数据的情况下修改表结构,包括增加列、删除列、修改列类型和改变列顺序等操作。变更操作不会影响当前数据库的查询和写入操作。
丰富的生态
PALO可以方便的导入存储在对象存储、HDFS或Kafka中的数据。用户也可以通过Spark来直接查询PALO中存储的数据。而PALO也可以通过ODBC读取包括MySQL、PostgreSQL、SQLServer、Oracle等外部数据源的数据。同时,PALO也可以读取Elasticsearch中存储的数据,为Elasticsearch提供强大的分布式SQL查询层。
成本低
在性价比方面是商业产品的10倍到100倍。