当前位置: 首页 > 软件库 > 大数据 > 其他 >

PrestoDB

大数据查询引擎
授权协议 Apache
开发语言 Java
所属分类 大数据、 其他
软件类型 开源软件
地区 不详
投 递 者 东方华晖
操作系统 跨平台
开源组织 Linux 基金会
适用人群 未知
 软件概览

Presto是Facebook最新研发的数据查询引擎,可对250PB以上的数据进行快速地交互式分析。据称该引擎的性能是 Hive 的 10 倍以上。

PrestoDB 是 Facebook 推出的一个大数据的分布式 SQL 查询引擎。可对从数 G 到数 P 的大数据进行交互式的查询,查询的速度达到商业数据仓库的级别。

Presto 可以查询包括 Hive、Cassandra 甚至是一些商业的数据存储产品。单个 Presto 查询可合并来自多个数据源的数据进行统一分析。

Presto 的目标是在可期望的响应时间内返回查询结果。Facebook 在内部多个数据存储中使用 Presto 交互式查询,包括 300PB 的数据仓库,超过 1000 个 Facebook 员工每天在使用 Presto 运行超过 3 万个查询,每天扫描超过 1PB 的数据。此外包括 Airbnb 和 Dropbox 也在使用 Presto 产品。

Presto 是一个分布式系统,运行在集群环境中,完整的安装包括一个协调器 (coordinator) 和多个 workers。查询通过例如 Presto CLI 的客户端提交到协调器,协调器负责解析、分析和安排查询到不同的 worker 上执行。

此外,Presto 需要一个数据源来运行查询。当前 Presto 包含一个插件用来查询 Hive 上的数据,要求:

  • Hadoop CDH4

  • 远程 Hive metastore service

Presto 不使用 MapReduce ,只需要 HDFS

要求:

  • Mac OS X or Linux

  • Java 7, 64-bit

  • Maven 3 (for building)

  • Python 2.4+ (for running with the launcher script)

  • # prestodb安装配置 —参考prestodb官方文档配置 # by coco # 20160225 目前prestodb最新版本已经到了0.139,但是官方给出的配置文档还是0.100的,所以就选取了0.100版本的进行配置测试。 1. 安装环境 操作系统:CentOS release 6.2 (Final) hadoop集群:CDH-5.5.1-1 JDK版本:jdk1.8.0_73 注

  • 1、准备一个5节点的cassandra集群 略 node1,node2,node3,node4,node5 2、在node1上下载presto wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.131/presto-server-0.131.tar.gz 3、解压缩 tar zxvf presto-ser

  • hive 优点 缺点 被广泛应用,经受时间的考验 既然是基于Mapreduce,也拥有MapReduce所有缺点,包含昂贵的Shuffle操作和磁盘IO操作 运行在Mapreduce框架之上 hive仍然不支持多个reduce操作group by和order by查询 非常好的支持用户自定义函数 和其他竞品相比,查询速度很慢 很友好的和hbase等系统结合 cloudera impala 优点 缺

  • presto-cli模块 概要 该模块主要负责查询SQL的客户端功能,利用RESTful请求发送给Coordinator实现SQL语句的查询。 PrestoDB可以通过presto-cli客户端和JDBC连接这两种方法实现SQL的查询。 presto-cli模块查询流程:通过用户输入SQL将语句组装成一个RESTful请求,发送给Coordinator执行该SQL,并启动查询方法,分批查询结果和用

  • 安装条件 1.docker docker镜像下载 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客: 下载地址: prestodb-sandbox 执行下载镜像命令: sudo docker pull ahanaio/prestodb-sandbox 查看镜像是否下载成功: sudo docker i

  • presto0.169版本对postgresql9.6.9支持还可以,高版本就不行了 1.建用户 [root@localhost ~]# useradd presto [root@localhost ~]# passwd presto 2.安装jdk8 [presto@localhost ~]$ cat .bash_profile 。。。。。。 export PATH=$PATH:$HOME/jd

  • PrestoDB首页、文档和下载 - 大数据查询引擎 - 开源中国社区 PrestoDB首页、文档和下载 - 大数据查询引擎 - 开源中国社区 posted on 2016-01-27 17:23  lexus 阅读( ...) 评论( ...) 编辑 收藏 转载于:https://www.cnblogs.com/lexus/p/5163986.html

 相关资料
  • 问题内容: 我有几个查询,其中大多数是: 和 由于它们都是一个范围,因此在col和date上使用未聚类的b +树索引会是加快查询速度的一个好主意吗?还是哈希索引?还是没有索引会更好? 问题答案: 在 过滤谓词上 用作 日期范围条件 的列上创建 INDEX 应该很有用,因为它将执行 INDEX RANGE SCAN 。 这是有关如何在Oracle中创建,显示和阅读EXPLAIN PLAN 的演示。

  • 概述 使用find()方法在MongoDB集合中查询数据。MongoDB所有的查询范围都是单个集合的。也就是说MongoDB不能跨集合查询数据。 查询可以返回集合中的所有文档,或者仅仅返回指定过滤条件的文档。你可以指定一个过滤条件或才一个判断条件作为参数传递给find()方法。 find()方法在一个游标中返回所有的结果集,通过游标的迭代可以输出所有文档。 查询集合中的所有文档 查询集合中的所有文

  • 获取单个数据 获取单个数据的方法包括: 取出主键为1的数据 $user = UserModel::get(1); echo $user->user_nickname; // 使用数组查询 $user = UserModel::get(['user_nickname' => '老猫']); // 使用闭包查询 $user = UserModel::get(function($query){

  • 数据库操作使用 Db类封装方法,请事先在引入 Db类 use think\Db; 以上可以引入 Db,后面的文档不再说明,直接使用; 查询一个数据使用: // table方法必须指定完整的数据表名 Db::name('user')->where('id',1)->find(); find 方法查询结果不存在,返回 null 查询数据集使用: Db::name('user')->where('s

  • 获取单个数据 获取单个数据的方法包括: 取出主键为1的数据 $user = UserModel::find(1); echo $user->user_nickname; 如果你是在模型内部,请不要使用$this->user_nickname的方式来获取数据,请使用$this->getAttr('user_nickname') 替代。 或者在实例化模型后调用查询方法 $user = new Use

  • 数据库操作使用 Db类封装方法,请事先在引入 Db类 use think\facade\Db; 以上可以引入 Db,后面的文档不再说明,直接使用; 查询一个数据使用: // table方法必须指定完整的数据表名 Db::name('user')->where('id',1)->find(); find 方法查询结果不存在,返回 null 查询数据集使用: Db::name('user')->w