首页 > 代码库 > Facebook Bigdata - Presto 0.80 版本说明
Facebook Bigdata - Presto 0.80 版本说明
Facebook Bigdata - Presto 0.80 版本说明
- 新的HiveORC 读取器
我们增加了一个新的ORC读取器实现。新的读取器支持矢量读取,延迟加载,和谓语推理。所有这些使读者更高效,通常会降低等待查询的时间。尽管新的读取器已被深入的测试,它是Apache Hive ORC读取器的广泛重写,并且可能具有一些潜在的问题。如果您遇到问题,你可以通过设置每个查询的新读取器<hive-catalog>.optimized_reader_enabled会话属性无效,或者禁用这个catalog属性。也可以在默认情况下禁用读者通过设置Hive catalog属性hive.optimized阅读器.enabled= FALSE。
- Hive更新
Hive S3文件系统的最大重试次数参数:hive.s3.max-retry-time=false.
Fix Hive partition pruning for null keys (i.e. __HIVE_DEFAULT_PARTITION__).
- Cassandra更新
升级到 Cassandra driver to 2.1.0.
映射 Cassandra TIMESTAMP类型到 Presto TIMESTAMP类型.
- “Big Query” Support
我们试验性地加入了 “big”查询的支持.。这通过下边的属性提供了一个单独的队列控制::
experimental.max-concurrent-big-queries
experimental.max-queued-big-queries
对带experimental_big_query属性的查询提供了单独的配置选项::
experimental.big-query-initial-hash-partitions
experimental.big-query-max-task-memory
用这个属性提交的查询可以使用所有的哈希分布式连接。.
- 只对元数据的查询优化
我们现在对协调者不敏感的输入(例如,最大值(),最小值(),DISTINCT聚集体)支持重写,以对表的元数据执行聚集查询的优化。
例如,如果key, key1和 key2是分区键, 下边的查询将会获益:
SELECT min(key), max(key) FROM t;
SELECT DISTINCT key FROM t;
SELECT count(DISTINCT key) FROM t;
SELECT count(DISTINCT key + 5) FROM t;
SELECT count(DISTINCT key) FROM (SELECT key FROM t ORDER BY 1 LIMIT 10);
SELECT key1, count(DISTINCT key2) FROM t GROUP BY 1;
这个优化默认是关闭的。打开后, 加入optimizer.optimize-metadata-queries=true协调者配置属性.
警告:
如果该连接器允许分区不包含任何数据, 这个优化将导致查询产生不正确的结果。例如,如果你的Hive仓库包含分区没有数据,Hive连接器会产生不正确的结果。
- 总体更新
加入支持隐式的连接支持。现在允许下边的语法:
SELECT * FROM a, b WHERE a.id = b.id; 加入任务的详细统计信息开关属性。默认是关闭的。 命令行接口dump出二进制格式的数据。 添加近似数值直方图功能,numeric_histogram(). 加入排序数组功能。 加入map_keys()和map_values()功能。 使ROW_NUMBER()成为完整的流。 为聚合的部分工序添加task.max-partial-aggregation-memory属性来配置内存限制。 Fix exception when processing queries with an UNNEST operation where the output was not used. 在查询完全调度后,仅在UI显示查询进度。 加入了查询可视化的调度UI,能够通过查询详细页访问。
Facebook Bigdata - Presto 0.80 版本说明