# Spatio-temporal Index

### Spatio-temporal index

This tutorial describes how to access the spatio-temporal indexes built in ST-Hadoop. In this tutorial, we show how to index spatio-temporal data and retrieve basic information about the index and how to perform simple queries on it. Notice that this tutorial does not directly show how to build your own MapReduce programs. Rather, it shows low-level interaction with the ST-Hadoop which can be indirectly used in MapReduce programs.

### Index Layout

The first step of interacting with the index is to understand how ST-Hadoop organize data on the HDFS (i.e., Hadoop Distributed File System). For an efficient retrieval of spatio-temporal objects, ST-Hadoop introduces a temporal hierarchy for spatial indexes. This index is organized in multiple levels; each corresponds to specific time resolution. In each level, the whole dataset is replicated and spatiotemporally partitioned according to the resolution of that level.  Three resolution levels are supported in ST-Hadoop for simplicity we will describe how to build a spatio-temporal index in a specific resolution. A single resolution level can spatiotemporally organize the data into space indexing structure of [Days, Weeks, Month, Years] or data indexing structure that dynamically index data according to its size and distribution.

### Index creation:

Let's say we want to index spatio-temporal data using a space indexing technique of months. The following command line shows how to build the index.

./hadoop jar st-hadoop-uber.jar stmanager /inputdataset /outputIndex time:month

shape:edu.umn.cs.STHadoop.STPoint sindex:rtree

 Parameters and Command Description stmanager A main command line used to invoke the Spatio-temporal indexes Inputdataset The HDFS directory where the dataset exists. outputIndex The HDFS directory where the dataset will be indexed. time Represent the spatio-temporal resolution layer. could be either of these values. [day, week, month, year] shape The shape format of should be extended from STPoint that support spatio-temporal data. sindex The spatial partitioning techniques could be any spatial partitioning technique supported by SpatialHadoop, such as rtree, grid, str quadtree, ...etc.

.

## Contact

We appreciate communicating your feedback, comments, and problems reporting through the email