11.172. Release 0.69

Warning

The following config properties must be removed from theetc/config.properties file on both the coordinator and workers:

  • presto-metastore.db.type
  • presto-metastore.db.filenameAdditionally, the datasources property is now deprecatedand should also be removed (see Datasource Configuration).

Prevent Scheduling Work on Coordinator

We have a new config property, node-scheduler.include-coordinator,that allows or disallows scheduling work on the coordinator.Previously, tasks like final aggregations could be scheduled on thecoordinator. For larger clusters, processing work on the coordinatorcan impact query performance because the machine’s resources are notavailable for the critical task of scheduling, managing and monitoringquery execution.

We recommend setting this property to false for the coordinator.See Config Properties for an example.

Datasource Configuration

The datasources config property has been deprecated.Please remove it from your etc/config.properties file.The datasources configuration is now automatically generated basedon the node-scheduler.include-coordinator property(see Prevent Scheduling Work on Coordinator).

Raptor Connector

Presto has an extremely experimental connector that was previously calledthe native connector and was intertwined with the main Presto code(it was written before Presto had connectors). This connector is nownamed raptor and lives in a separate plugin.

As part of this refactoring, the presto-metastore.db.type andpresto-metastore.db.filename config properties no longer existand must be removed from etc/config.properties.

The Raptor connector stores data on the Presto machines in acolumnar format using the same layout that Presto uses for in-memorydata. Currently, it has major limitations: lack of replication,dropping a table does not reclaim the storage, etc. It is onlysuitable for experimentation, temporary tables, caching of data fromslower connectors, etc. The metadata and data formats are subject tochange in incompatible ways between releases.

If you would like to experiment with the connector, create a catalogproperties file such as etc/catalog/raptor.properties on both thecoordinator and workers that contains the following:

  1. connector.name=raptor
  2. metadata.db.type=h2
  3. metadata.db.filename=var/data/db/MetaStore

Machine Learning Functions

Presto now has functions to train and use machine learning models(classifiers and regressors). This is currently only a proof of conceptand is not ready for use in production. Example usage is as follows:

  1. SELECT evaluate_classifier_predictions(label, classify(features, model))
  2. FROM (
  3. SELECT learn_classifier(label, features) AS model
  4. FROM training_data
  5. )
  6. CROSS JOIN validation_data

In the above example, the column label is a bigint and the columnfeatures is a map of feature identifiers to feature values. The featureidentifiers must be integers (encoded as strings because JSON only supportsstrings for map keys) and the feature values are numbers (floating point).

Variable Length Binary Type

Presto now supports the varbinary type for variable length binary data.Currently, the only supported function is length().The Hive connector now maps the Hive BINARY type to varbinary.

General Changes

  • Add missing operator: timestamp with time zone - interval year to month
  • Support explaining sampled queries
  • Add JMX stats for abandoned and canceled queries
  • Add javax.inject to parent-first class list for plugins
  • Improve error categorization in event logging