Airpal

Alternatives To Airpal
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Mindsdb16,4883112 hours ago42March 19, 2019634gpl-3.0Python
MindsDB is a Server for Artificial Intelligence Logic. Enabling developers to ship AI powered projects to production in a fast and scalable way.
Dolt14,963219 hours ago214May 19, 2022297apache-2.0Go
Dolt – Git for Data
Gh Ost11,1274a day ago59July 07, 2022277mitGo
GitHub's Online Schema-migration Tool for MySQL
Cobar3,183
3 months ago50apache-2.0Java
a proxy for sharding databases and tables
Airpal2,758
2 years ago87apache-2.0Java
Web UI for PrestoDB.
Tbls2,3694a day ago31May 28, 202229mitGo
tbls is a CI-Friendly tool for document a database, written in Go.
Lhm1,650
43 years ago15January 16, 201534bsd-3-clauseRuby
Online MySQL schema migrations
Sqldef1,57719 days ago194July 15, 202215otherGo
Idempotent schema management for MySQL, PostgreSQL, and more
Db.py1,2012613 years ago35March 31, 201732bsd-2-clausePython
db.py is an easier way to interact with your databases
Mysqldump Php1,1681446422 days ago18April 03, 202025gpl-3.0PHP
PHP version of mysqldump cli that comes with MySQL
Alternatives To Airpal
Select To Compare


Alternative Project Comparisons
Readme

DEPREACTED - Airpal

Airpal is deprecated, and most functionality and feature work has been moved to SQL Lab within Apache Superset.


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. Once queries are running, users can track query progress and when finished, get the results back through the browser as a CSV (download it or share it with friends). The results of a query can be used to generate a new Hive table for subsequent analysis, and Airpal maintains a searchable history of all queries run within the tool.

Airpal UI

Features

  • Optional Access Control
  • Syntax highlighting
  • Results exported to a CSV for download or a Hive table
  • Query history for self and others
  • Saved queries
  • Table finder to search for appropriate tables
  • Table explorer to visualize schema of table and first 1000 rows

Requirements

  • Java 7 or higher
  • MySQL database
  • Presto 0.77 or higher
  • S3 bucket (to store CSVs)
  • Gradle 2.2 or higher

Steps to launch

  1. Build Airpal

    We'll be using Gradle to build the back-end Java code and a Node.js-based build pipeline (Browserify and Gulp) to build the front-end Javascript code.

    If you have node and npm installed locally, and wish to use them, simply run:

    ./gradlew clean shadowJar -Dairpal.useLocalNode
    

    Otherwise, node and npm will be automatically downloaded for you by running:

    ./gradlew clean shadowJar
    

    Specify Presto version by -Dairpal.prestoVersion:

    ./gradlew -Dairpal.prestoVersion=0.145 clean shadowJar
    
  2. Create a MySQL database for Airpal. We recommend you call it airpal and will assume that for future steps.

  3. Create a reference.yml file to store your configuration options.

    Start by copying over the example configuration, reference.example.yml.

    cp reference.example.yml reference.yml
    

    Then edit it to specify your MySQL credentials, and your S3 credentials if using S3 as a storage layer (Airpal defaults to local file storage, for demonstration purposes).

  4. Migrate your database.

    java -Duser.timezone=UTC \
         -cp build/libs/airpal-*-all.jar com.airbnb.airpal.AirpalApplication db migrate reference.yml
    
  5. Run Airpal.

    java -server \
         -Duser.timezone=UTC \
         -cp build/libs/airpal-*-all.jar com.airbnb.airpal.AirpalApplication server reference.yml
    
  6. Visit Airpal. Assuming you used the default settings in reference.yml you can now open http://localhost:8081 to use Airpal. Note that you might have to change the host, depending on where you deployed it.

Note: To override the configuration specified in reference.yml, you may specify certain settings on the command line in the traditional Dropwizard fashion, like so:

java -Ddw.prestoCoordinator=http://presto-coordinator-url.com \
     -Ddw.s3AccessKey=$ACCESS_KEY \
     -Ddw.s3SecretKey=$SECRET_KEY \
     -Ddw.s3Bucket=airpal \
     -Ddw.dataSourceFactory.url=jdbc:mysql://127.0.0.1:3306/airpal \
     -Ddw.dataSourceFactory.user=airpal \
     -Ddw.dataSourceFactory.password=$YOUR_PASSWORD \
     -Duser.timezone=UTC \
     -cp build/libs/airpal-*-all.jar db migrate reference.yml

Compatibility Chart

Airpal Version Presto Versions Tested
0.1 0.77, 0.87, 0.145

In the Wild

Organizations and projects using airpal can list themselves here.

Contributors

Popular Mysql Projects
Popular Table Projects
Popular Data Storage Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Java
Mysql
Table
Chart
Hive
Presto