FOSS4G Follow-up: Philly Parking Tickets Now on GitHub!


#1

During FOSS4G NA 2018 in St. Louis, MapD showed a custom demo in our booth using the MapD backend rendering engine in MapD Enterprise Edition. Using 8 million parking tickets from the City of Philadelphia, we demonstrated that MapD can render data so quickly, in real-time, that animation-like effects are possible!

Because of the great reception from those who visited the booth, we are open-sourcing the code for this demo on GitHub, so that the community can create their own animations. Here are some selected highlights to keep in mind when doing this yourself.

Credentials

If you’ve ever done any database-driven websites in the past, you’ll be familiar with the idea that you need to have a database to store the data (in this case, MapD), and that you will need to connect to it. The code example has two places where you’ll need to enter your own credentials:

Loading the data

With your credentials taken care of, if you want to replicate this demo exactly, you need to download the Philly Parking Tickets dataset. Here is the CREATE TABLE statement:

CREATE TABLE parking_violations (
zip_code INTEGER,
anon_ticket_number INTEGER,
issue_datetime TIMESTAMP,
state TEXT ENCODING DICT(32),
anon_plate_id INTEGER,
division SMALLINT,
the_geom_webmercator TIME,
violation_desc TEXT ENCODING DICT(32),
fine SMALLINT,
issuing_agency TEXT ENCODING DICT(32),
lat FLOAT,
lon FLOAT,
gps TEXT ENCODING DICT(32),
location TEXT ENCODING DICT(32),
mapd_geo GEOGRAPHY(POINT, 4326) ENCODING GEOINT(32))

JavaScript code

While I wish I could take credit for this code, MapD frontend engineer Chris Henrick wrote it! Which means that I don’t have a lot I can explain about the JavaScript portion of this code except to say that Chris wrote this to be a barebones example. The dependencies file is specified in the repo and is best installed using yarn package manager.

Running the demo in development mode is achieved by first installing all of the package dependencies (yarn install or npm install). After installing the packages, npm start will have webpack start a development server where you can see the hot-reloading code on http://localhost:8080. So once you fire up webpack, feel free to play around with the code in the repo and see the changes reflected in your browser automatically.

Your Turn: What will you develop???

While this demo was meant to be simple, hopefully it demonstrates to the broader community that MapD is a multi-purpose platform for rapid, large-scale analytics. Whether you use MapD Core (open-source) as a fast SQL computing engine, MapD Cloud for a quick and effortless way to get started or Enterprise Edition to enable the full suite of MapD products, we hope you’ll agree that MapD is an indispensable part of the modern analytics workflow.

And with that…we want to see what you are doing! Please feel free to post your examples using this code or similar, so that we can all learn from each other. There’s nothing better for inspiration than seeing what our clients and peers in the community are doing, to give us further ideas of what to build. :slight_smile: