Skip to content

cs207-2016/cs207project

Repository files navigation

CS207 Team 3 Final Project

Build Status

Website URL

Team 3:
Yamini Bansal
Ariel Herbert-Voss
Sophie Hilgard
Ryan Lapcevic
Anthony Soroka

This project is organized into two python libraries, a systemd service, and a flask-based website. Each of these occupies its own directory in the src/ directory.

The centerpiece of this project is the Postgres and Flask-backed website, which enables users to upload and query time series based on similarity as determined by a kernel function.

The website depends on our `timeseries` library for manipulating time series and a systemd service running a red-black tree-based database for determining proximity between time series. This database depends on our `rbtree` library for its red-black tree, and communicates with clients over a unix socket.

To install this project on a fresh Amazon EC2 instance running the default Ubuntu 16.04 image, execute the following command from the project's root directory:

	sudo ./init.sh

This will install the project's dependencies, install the systemd service, initialize its Postgres database, and initialize the Apache webserver serving the website.

The project is organized as follows:

src/ dbserver/: A red-black tree-based database for querying proximity between time series. This is implemented as a pip-installable library, which is used by a simple systemd service to serve queries over a socket.
timeseries/: A library for storing and manipulating time series.
rbtree/: An implementation of a red-black tree as a library.
website/: The project website, implemented using flask.

To build the `dbserver`, `timeseries`, or `rbtree` packages independently, run `make sdist` from the root directory of the project. The pip-installable python packages will be stored in the `dist` directory.

To run our unit tests, run `make test` from the root of the project.

JSON files must be of the following format:


{
  'time_points' : [<time points>],
  'data_points' : [<data points>]
}

Time series identifiers are managed internally and need not be included in the uploaded file.

About

Time Series Library for CS207 - 2016

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published