Resources

Presto Management Tools

Presto-Admin

Project
Presto-Admin
Description
Presto-Admin is a tool for installing and managing the Presto query engine on a cluster. It provides easy-to-use commands:

  • Install and uninstall Presto across your cluster
  • Configure your Presto cluster
  • Start and stop the Presto servers
  • Gather status and log information from your Presto cluster
Examples
presto-admin server start|stop|restart|status
presto-admin server install path-to-presto-rpm
presto-admin connector add connector-name

Presto Clients and GUIs

Airpal

Project
Airpal
Maintained by
Airbnb
Description
Airpal is a web-based, query execution tool which leverages Facebook's PrestoDB to make authoring queries and retrieving results simple for users. Airpal provides the ability to find tables, see metadata, browse sample rows, write and edit queries, then submit queries all in a web interface.

Redash

Project
Redash
Maintained by
Arik Fraimovich
Description
Redash is a take on freeing the data within our company in a way that will better fit our culture and usage patterns. It has Presto support as well as other backends, and offers a query editor with syntax highlighting and completion, and creating visualizations and dashboards from query results.

Quix

Project
Quix
Maintained by
Wix
Description
Quix is a multi-user, easy-to-use notebook manager. By utilizing Presto it provides unified access to multiple data sources and effectively acts as a shared space for your company's BI insights and know-how.

Shib

Project
GitHub
Maintained by
Tagomori Satoshi
Description
Shib is a web-client written in Node.js designed to query Presto and Hive. To run Shib install node.js, alter your config.js, and follow the instructions on the shib project page. Shib can also be used as an proxy server for query engines.

Superset

Project
Apache Superset
Maintained by
Apache Superset
Description
Superset enables users to consume data in many different ways: writing SQL queries, creating new tables, creating a visualization (slice), adding that visualization to one or many dashboards and downloading a CSV. SQL Lab is a a part of Superset and provides rich SQL editor that enables users to both query and visualize data. You can explore and preview tables in Presto, effortlessly compose SQL queries to access data. From there, you can either export a CSV file or immediately visualize your data in the Superset "Explore" view.

yanagishima

Project
GitHub
Maintained by
wyukawa, okazou
Description
yanagishima is a web application for Presto. yanagishima provides the ability to execute query, show query, kill query, bookmark query, search table, share query/query result, format query, download as CSV/TSV file, insert chart, substitute query parameter, and so on.

Presto ODBC

Prestogres

Prestogres

Project
GitHub
Maintained by
Furuhashi Sadayuki
Description
Prestogres is a gateway server that allows clients to use PostgreSQL protocol and thus the PostgreSQL ODBC driver to run queries on Presto.

Presto Libraries

The following client libraries can be used to run queries from several programming languages: C, Go, Java, Node.js, PHP, Python, R, Ruby.

Language: C

PrestoClient C

Project
GitHub
Maintained by
Ivo Herweijer
Description
C client for Presto.

Language: Go

presto-go-client

Project
GitHub
Maintained by
Presto Go Client Team
Description
Go client for Presto.

Language: Java

Presto JDBC Driver

Project
Presto
Maintained by
Presto Team
Description
JDBC driver for Presto.
Example
String sql = "SELECT * FROM sys.node";
String url = "jdbc:presto://localhost:8080/catalog/schema";
try (Connection connection =
        DriverManager.getConnection(url, "test", null)) {
    try (Statement statement = connection.createStatement()) {
        try (ResultSet rs = statement.executeQuery(sql)) {
            while (rs.next()) {
                System.out.println(rs.getString("node_id"));
            }
        }
    }
}

Language: Node.js

presto-client-node

Project
GitHub
Maintained by
Satoshi Tagomori
Description
Node.js client for Presto.

lento

Project
GitHub
Maintained by
Vincent Weevers
Description
Streaming Node.js client for Presto.

Language: PHP

PhpPrestoClient

Project
GitHub
Maintained by
Xtendsys-labs
Description
PHP client for Presto.

Language: Python

presto-python-client

Project
GitHub
Maintained by
Presto Python Client Team
Description
Python client for Presto.

PyHive

Project
GitHub
Maintained by
Dropbox
Description
PyHive is a collection of Python DB-API and SQLAlchemy interfaces for Presto and Hive.

PrestoClient Python

Project
GitHub
Maintained by
Ivo Herweijer
Description
Python client for Presto.

Language: R

RPresto

Project
GitHub
Maintained by
RPresto Team
Description
DBI-based adapter for Presto for R.

Language: Ruby

presto-client-ruby

Project
GitHub
Maintained by
Furuhashi Sadayuki
Description
Ruby client for Presto.

Presto Connectors / Plugins

MySQL-Teradata

Project
MySQL-Teradata Plugin for Presto
Maintained by
HackShare
Description
This project isn't an install-ready plugin for MySQL-Teradata it is a fork of the entire Presto project and it contains a working MySQL-Teradata plugin. This integration was posted to the Google Group by maintainer Dheeban Govindarajan.

Presto Cloud

Presto is also readily available in AWS.

AWS

Amazon Athena

Website
Amazon Athena
Maintainer
Amazon Web Services

Amazon Athena is an interactive query service based on Presto that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.

Amazon Athena uses Presto with full standard SQL support and works with a variety of standard data formats. Athena is out-of-the-box integrated with AWS Glue Data Catalog, allowing you to create a unified metadata repository across various services, crawl data sources to discover schemas and populate your Catalog with new and modified table and partition definitions, and maintain schema versioning.

Amazon EMR

Website
Amazon EMR
Maintainer
Amazon Web Services

Amazon EMR provides a managed Hadoop framework that makes it easy, fast, and cost-effective to process vast amounts of data across dynamically scalable Amazon EC2 instances. With EMR, you can launch a large Presto cluster in minutes. You don't need to worry about node provisioning, cluster setup or tuning.

Using Presto on EMR provides these benefits to customers:

  • Elasticity: With Amazon EMR, you can provision one, hundreds, or thousands of compute instances to process data at any scale. You can easily increase or decrease the number of instances manually or with Auto Scaling, and you only pay for what you use.
  • Simple and predictable pricing: You pay a per-second rate for every second used, with a one-minute minimum charge.

Presto Resources