2024年4月21日发(作者:)
大数据平台的软件有哪些?
查询引擎一、 Phoenix 简介:这是一个 Java 中间层,可 以让
开发者在 Apache HBase上执行SQL查询。Phoenix完全 使用 Java
编写,代码位于 GitHub 上,并且提供了一个客户 端可嵌入的 JDBC
驱动。 Phoenix 查询引擎会将 SQL 查询转 换为一个或多个HBase
scan,并编排执行以生成标准的 JDBC 结果集。 直接使用 HBase A PI 、
协同处理器与自定义过滤器, 对于简单查询来说,其性能量级是毫秒,
对于百万级别的行 数来说,其性能量级是秒。 Phoenix 最值得关注
的一些特性 有: ?嵌入式的 JDBC 驱动,实现了大部分的 接
口, 包括元数据API?可以通过多部行键或是键/值单元对列进行 建模 ?
完善的查询支持,可以使用多个谓词以及优化的扫描 键?DDL 支持:
通过 CREATE TABLE、DROP TABLE 及 ALTER TABLE 来添加 /
删除列 ?版本化的模式仓库:当写入 数据时,快照查询会使用恰当的
模式 ?DML 支持:用于逐行 插入的UPSERT VALUES、用于相同
或不同表之间大量数据 传输的UPSERT ?SELECT、用于删除行的
DELETE?通过客 户端的批处理实现的有限的事务支持 ?单表——
还没有连接,
同时二级索引也在开发当中 ?紧跟 ANSI SQL 标准二、 Stinger 简
介:原叫Tez,下一代Hive,Hortonworks主导开发,运行 在 YARN 上
的 DAG 计算框架。某些测试下, Stinger 能提升
10倍左右的性能,同时会让 Hive支持更多的SQL ,其主要
优点包括: ?让用户在 Hadoop 获得更多的查询匹配。其中包 括类
似 OVER 的字句分析功能, 支持 WHERE 查询,让 Hive 的样式
系统更符合 SQL 模型。 ?优化了 Hive 请求执行计划, 优化后请求
时间减少 90% 。改动了 Hive 执行引擎,增加单 Hive 任务的被秒处
理记录数。 ?在 Hive 社区中引入了新的列 式文件格式(如 ORC 文
件),提供一种更现代、高效和高性 能的方式来储存 Hive 数据。 ?
引入了新的运行时框架—— Tez,旨在消除Hive的延时和吞吐量限
制。Tez通过消除不 必要的task、障碍同步和对 HDFS的读写作业
来优化 Hive job。这将优化Hadoop内部的执行链,彻底加速Hive
负载处 理。三、Presto简介:Facebook开源的数据查询引擎 Presto ,
可对 250PB 以上的数据进行快速地交互式分析。 该项目始于
2012 年秋季开始开发,目前该项目已经在超过 1000 名
Facebook 雇员中使用,运行超过 30000 个查询,每日数据 在 1PB
级别。 Facebook 称 Presto 的性能比诸如 Hive 和 Map*Reduce 要
好上 10 倍有多。 Presto 当前支持 ANSI SQL 的大多数特效, 包
括联合查询、 左右联接、 子查询以及 一些聚合和计算函数;支持
近似截然不同的计数 (DISTINCT COUNT)等。四、Shark 简介:Shark
即 Hive on Spark,本质 上是通过Hive的HQL解析,把HQL翻译
成Spark上的RDD 操作,然后通过 Hive的metadata获取数据库里
的表信息, 实际 HDFS 上的数据和文件,会由 Shark 获取并放到
Spark
上运算。 Shark 的特点就是快, 完全兼容 Hive ,且可以在 shell 模
式下使用rdd2sql()这样的API ,把HQL得到的结果集,继 续在


发布评论