Installation and Compilation
The following installation instructions are intended for developers who want to use Aperture Tiles to build their own custom applications. The complete installation process requires several third-party tools and access to the Aperture Tiles source code.
For developers who want to quickly install a pre-configured example Aperture Tiles application with minimal modification, a set of packaged distributions are available as an alternative.
Aperture Tiles is compatible with Linux and OS X.
Compatibility for Windows is available through Cygwin or the DOS command prompt. Note however, that this platform is not compatible with Hadoop/HBase.
To use Aperture Tiles with Apache Spark in standalone mode in Windows
- Download and install a pre-built version of Apache Spark with the following properties:
- Spark release: 1.3.0
- Package type: Pre-built for Hadoop 2.4
Aperture Tiles requires the following third-party tools:
Java (JDK v1.7+)
|Cluster Computing Framework||
Specify the version of Hadoop with which Spark will be working (if applicable).
Spark may cause class path issues if you compile from source code. We recommend using a pre-built Spark package.
The Node.js Windows installer has a known issue where it fails to install the following directory. To work around this issue, create the directory manually.
|Web Server||Apache Tomcat or Jetty||The Tile Server and Tile Client, built using the Restlet web framework, require a servlet-compatible web server.|
If you intend to work with datasets that cannot fit in the memory of a single machine or if you wish to avoid wait times, we recommend you also install the following tools to enable Aperture Tiles to work with particularly large datasets.
|Cluster Computing Framework||A Hadoop distribution:||Some Hadoop distributions automatically install Apache Spark. Upgrade to v1.3 if the installation is older.|
The source code repository for Aperture Tiles is available on GitHub.
To work with the most recent stable release of the Aperture Tiles source code
- Clone the Aperture Tiles repository to an aperture-tiles/ directory in your Git project folder:
git clone https://github.com/unchartedsoftware/aperture-tiles.git
- Check out the master branch:
git checkout master
Building the Project
Once you have cloned the Aperture Tiles repository, you can build the project.
Specifying Your Hadoop/HBase Version
NOTE: If you plan to run Apache Spark only in standalone mode on single machine, you can skip this step.
Prior to building the project, you must specify which version of Hadoop and/or HBase you have installed (if applicable):
- Review the Deployment Variants section of the build.gradle file in aperture-tiles/ to check for valid settings for your version.
- If your version is not included, build a new case for it. See the comments in the file for more details.
Compiling the Aperture Tiles Projects
Aperture Tiles builds with Gradle.
To install Gradle and build Aperture Tiles
- Execute the following command in your root Aperture Tiles directory:
gradlew install -PbuildType=<buildType>
Sub-Project Description buildType A case in the build.gradle file that specifies which versions of Hadoop/HBase and Spark you are using (e.g., cdh5.1.2).
If you do not specify a buildType, the default value (cdh5.4.7) in aperture-tiles/gradle.properties is used.
This will compile all the project components and install .jar files for each project into a local Gradle repository on your build machine.
Aperture Tiles is made up of the following sub-projects:
|math-utilities||Basic, underlying Java utilities (for angles, linear algebra and statistics) to aid in processing data.|
|geometric-utilities||Advanced math utilities for processing geometry and geographic problems.|
|binning-utilities||Basic substrate of tiling, bin data structures, bin processing and basic bin storage classes.|
|factory-utilities||Factory system to allow construction and configuration of generic objects.|
|tile-generation||Spark-based tools to generate tile pyramids from raw data.|
|tile-rendering||Library that handles turning tile data into useful output formats, generally graphical.|
|tile-service||Web service to serve tiles from tile pyramids to web clients.|
|spark-tile-utilities||Optional services for allowing the tile server to communicate directly with Spark.|
|annotation-service||Optional services for adding annotations to Aperture Tiles visualizations.|
|tile-client||Simple web client to display tiles from tile pyramids.|
|tile-packaging||Packaged assembly of the tile generation service for the Quick Start example on this site.|
|gradle||Gradle build system support.|
|docs||Source files for the documentation on this website.|
The packaged distributions of Aperture Tiles require only a subset of the prerequisites for complete installations.
To install the prerequisites for the packaged distributions
- Install Apache Spark.
- If you want to understand how Aperture Tiles works with particularly large datasets, install your preferred flavor of Hadoop:
Download the Distributions
The Aperture Tiles packaged distributions enable you to create a sample Aperture Tiles application that explores a Julia set fractal visualization.
To download the packaged distributions
- Download and save the following files:
- Extract the contents of each file to your local machine.
- See the Quick Start topic for information on configuring each packaged distribution.
For a guide on quickly configuring and deploying an example Aperture application, see the Quick Start topic.