Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 22 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
psql_command=psql -q
today:=$(shell date "+%Y%m%d")
gias_filename:=edubasealldata${today}.csv
fixed_filename=edubasealldata${today}-fixed.csv
gias_schools_file:=edubasealldata${today}.csv
gias_links_file:=links_edubasealldata${today}.csv
fixed_school_filename=edubasealldata${today}-fixed.csv
fixed_links_filename=links_edubasealldata${today}-fixed.csv
database_name=gias
data_dir=tmp

Expand All @@ -19,10 +21,18 @@ refresh: drop_database \
create_views \
refresh_views

download_gias_data:
download_gias_data: clear_tmp_csvs download_schools_data download_school_links_data

clear_tmp_csvs:
rm -f tmp/*.csv
wget https://ea-edubase-api-prod.azurewebsites.net/edubase/downloads/public/${gias_filename} --directory-prefix=${data_dir}
iconv -f ISO8859-1 -t UTF-8 tmp/${gias_filename} > tmp/${fixed_filename}

download_schools_data:
wget https://ea-edubase-api-prod.azurewebsites.net/edubase/downloads/public/${gias_schools_file} --directory-prefix=${data_dir}
iconv -f ISO8859-1 -t UTF-8 tmp/${gias_schools_file} > tmp/${fixed_school_filename}

download_school_links_data:
wget https://ea-edubase-api-prod.azurewebsites.net/edubase/downloads/public/${gias_links_file} --directory-prefix=${data_dir}
iconv -f ISO8859-1 -t UTF-8 tmp/${gias_links_file} > tmp/${fixed_links_filename}

drop_database:
dropdb --if-exists ${database_name}
Expand All @@ -39,6 +49,7 @@ create_holding_tables:
${psql_command} ${database_name} < ddl/tables/create_deprivation_pupil_premium_raw.sql
${psql_command} ${database_name} < ddl/tables/geo/create_electoral_regions_raw.sql
${psql_command} ${database_name} < ddl/tables/geo/create_local_authority_districts_raw.sql
${psql_command} ${database_name} < ddl/tables/create_school_links_raw.sql

create_types:
${psql_command} ${database_name} < ddl/types/establishment.sql
Expand All @@ -47,18 +58,21 @@ create_types:
${psql_command} ${database_name} < ddl/types/phase.sql
${psql_command} ${database_name} < ddl/types/rural_urban_classification.sql
${psql_command} ${database_name} < ddl/types/government_office_regions.sql
${psql_command} ${database_name} < ddl/types/link_types.sql

create_data_tables:
${psql_command} ${database_name} < ddl/tables/create_schools.sql
${psql_command} ${database_name} < ddl/tables/create_deprivation_pupil_premium.sql
${psql_command} ${database_name} < ddl/tables/geo/create_regions.sql
${psql_command} ${database_name} < ddl/tables/geo/create_local_authorities.sql
${psql_command} ${database_name} < ddl/tables/create_school_links.sql

create_views:
${psql_command} ${database_name} < ddl/views/open_schools.sql

populate_holding_tables:
${psql_command} ${database_name} --command "\copy schools_raw from 'tmp/${fixed_filename}' with csv header"
${psql_command} ${database_name} --command "\copy schools_raw from 'tmp/${fixed_school_filename}' with csv header"
${psql_command} ${database_name} --command "\copy school_links_raw from 'tmp/${fixed_links_filename}' with csv header"
${psql_command} ${database_name} < dml/import_email_addresses_raw.sql
${psql_command} ${database_name} < dml/import_deprivation_pupil_premium_raw.sql
${psql_command} ${database_name} < dml/geo/import_electoral_regions.sql
Expand All @@ -67,6 +81,7 @@ populate_holding_tables:
drop_holding_tables:
${psql_command} ${database_name} < ddl/tables/drop_schools_raw.sql
${psql_command} ${database_name} < ddl/tables/drop_email_addresses_raw.sql
${psql_command} ${database_name} < ddl/tables/drop_school_links_raw.sql
${psql_command} ${database_name} < ddl/tables/drop_deprivation_pupil_premium_raw.sql
${psql_command} ${database_name} < ddl/tables/geo/drop_electoral_regions_raw.sql
${psql_command} ${database_name} < ddl/tables/geo/drop_local_authority_districts_raw.sql
Expand All @@ -76,6 +91,7 @@ populate_data_tables:
${psql_command} ${database_name} < dml/import_deprivation_pupil_premium.sql
${psql_command} ${database_name} < dml/geo/import_regions.sql
${psql_command} ${database_name} < dml/geo/import_districts.sql
${psql_command} ${database_name} < dml/import_school_links.sql

refresh_views:
${psql_command} ${database_name} < ddl/refresh/refresh_open_schools.sql
8 changes: 8 additions & 0 deletions ddl/tables/create_school_links.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
drop table if exists school_links;

create table school_links (
urn1 integer references schools(urn),
urn2 integer references schools(urn),
type link_type,
date date
);
7 changes: 7 additions & 0 deletions ddl/tables/create_school_links_raw.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CREATE TABLE "school_links_raw" (
"URN" VARCHAR NOT NULL,
"LinkURN" VARCHAR NOT NULL,
"LinkName" VARCHAR,
"LinkType" VARCHAR,
"LinkEstablishedDate" VARCHAR
);
1 change: 1 addition & 0 deletions ddl/tables/drop_school_links_raw.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DROP TABLE schools_links_raw;
21 changes: 21 additions & 0 deletions ddl/types/link_types.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
drop type if exists link_type;

create type link_type as enum (
'Closure',
'Expansion',
'Merged - change in age range',
'Merged - expansion in school capacity and changer in age range',
'Merged - expansion of school capacity',
'Other',
'Predecessor',
'Predecessor - Split School',
'Predecessor - amalgamated',
'Predecessor - merged',
'Result of Amalgamation',
'Sixth Form Centre Link',
'Sixth Form Centre School',
'Successor',
'Successor - Split School',
'Successor - amalgamated',
'Successor - merged'
)
Loading