$ scp census_data.csv admin@my_postgres_server:/tmp/census_data.csv
$ ssh admin@my_postgres_server
$ psql
# CREATE TABLE census_data ... ;
# COPY census_data FROM '/tmp/census_data.csv' (DELIMITER ',');
# CREATE INDEX idx_census_zipcode ON census_data(zipcode);
To do the actual search: conn = psycopg2.connect("dbname=census_data user=postgres")
cur = conn.cursor()
cur.execute("SELECT count(id) FROM census_data WHERE zipcode='%s';", (zipcode, ))
return cur.fetchone()
What advantage does http/json have over this?(Yes, I realize I'm missing GROUP BY's.)
[edit: I don't mean to be negative about government transparency AT ALL. I'm only criticizing the particular technical choice here - for small structured data sets, a bunch of csv's in a zip file is the clear winner. Pandas/excel/etc >> json over http for ad-hoc work, and postgres >> json over http for interactive queries (or ad-hoc work).]