diff --git a/database/create/001-proinfo-oltp.sql b/database/create/001-proinfo-oltp.sql index 35ccfafdb632154eb5d02a345e94e6012336e7f7..1f33fc6dff30f281b9797d1bd453dc86ca5e01ce 100644 --- a/database/create/001-proinfo-oltp.sql +++ b/database/create/001-proinfo-oltp.sql @@ -1,23 +1,23 @@ /* OLTP operational database tables */ CREATE TABLE proinfo_inventory ( - contact_date DATE DEFAULT CURRENT_DATE NOT NULL, - project INTEGER DEFAULT 0 NOT NULL, - inep CHARACTER VARYING(18) NOT NULL, - macaddr CHARACTER VARYING(18) NOT NULL, - os_type TEXT, - os_distro TEXT, - os_kernel TEXT, - processor TEXT, - memory INTEGER, - disk1_model TEXT, - disk1_size INTEGER, - disk1_used INTEGER, - disk2_model TEXT, - disk2_size INTEGER, - disk2_used INTEGER, - extra_hds SMALLINT DEFAULT 0 NOT NULL, - mirror_timestamp TIMESTAMP, - agent_version CHARACTER VARYING(20) NOT NULL + contact_date DATE DEFAULT CURRENT_DATE NOT NULL, + project INTEGER DEFAULT 0 NOT NULL, + inep CHARACTER VARYING(18) NOT NULL, + macaddr CHARACTER VARYING(18) NOT NULL, + os_type TEXT, + os_distro TEXT, + os_kernel TEXT, + processor TEXT, + memory INTEGER, + disk1_model TEXT, + disk1_size INTEGER, + disk1_used INTEGER, + disk2_model TEXT, + disk2_size INTEGER, + disk2_used INTEGER, + extra_hds SMALLINT DEFAULT 0 NOT NULL, + mirror_timestamp TIMESTAMP, + agent_version CHARACTER VARYING(20) NOT NULL DEFAULT '0.0.0' ); CREATE TABLE proinfo_net_usage ( @@ -32,27 +32,27 @@ CREATE TABLE proinfo_net_usage ( ); CREATE TABLE rejected_inventory ( - id INTEGER, - sch_id INTEGER, - cit_id INTEGER, - contact_date DATE NOT NULL, - project INTEGER, - inep CHARACTER VARYING(18) NOT NULL, - macaddr TEXT NOT NULL, - os_type TEXT, - os_distro TEXT, - os_kernel TEXT, - processor TEXT, - memory INTEGER, - disk1_model TEXT, - disk1_size INTEGER, - disk1_used INTEGER, - disk2_model TEXT, - disk2_size INTEGER, - disk2_used INTEGER, - extra_hds SMALLINT, - mirror_timestamp TIMESTAMP, - agent_version CHARACTER VARYING(20) + id INTEGER, + sch_id INTEGER, + cit_id INTEGER, + contact_date DATE NOT NULL, + project INTEGER, + inep CHARACTER VARYING(18) NOT NULL, + macaddr TEXT NOT NULL, + os_type TEXT, + os_distro TEXT, + os_kernel TEXT, + processor TEXT, + memory INTEGER, + disk1_model TEXT, + disk1_size INTEGER, + disk1_used INTEGER, + disk2_model TEXT, + disk2_size INTEGER, + disk2_used INTEGER, + extra_hds SMALLINT, + mirror_timestamp TIMESTAMP, + agent_version CHARACTER VARYING(20) ); CREATE TABLE rejected_net_usage ( diff --git a/database/load/000-sa.sql b/database/load/000-sa.sql index aa6420836436ce09e2d17a9749466d5535b914a1..9a46076f80fc6239a8cb2499e264ff193e9e43ae 100644 --- a/database/load/000-sa.sql +++ b/database/load/000-sa.sql @@ -49,8 +49,8 @@ BEGIN i.disk2_size, i.disk2_used, i.extra_hds, - i.mirror_timestamp, - i.agent_version, + i.mirror_timestamp, + i.agent_version, '0'::boolean as valid FROM proinfo_inventory i @@ -182,7 +182,7 @@ BEGIN disk1_model is NULL OR disk1_size is NULL OR disk1_used is NULL OR - agent_version is NULL OR + agent_version is NULL OR NOT valid_macaddress(macaddr) OR project < 0 OR project > 3 OR inep is NULL); diff --git a/database/load/005-aggregates.sql b/database/load/005-aggregates.sql index 6977fd9eae89887efe95c2951afe346cb91fcc1b..10a0b62ba02cba1dacc0a62ecbb87b822a8d2c91 100644 --- a/database/load/005-aggregates.sql +++ b/database/load/005-aggregates.sql @@ -23,9 +23,8 @@ BEGIN SELECT date_it, f.macaddr, - f.project, - s.inep, - s.name, + t.id_point, + t.name, c.name, c.state, c.region, @@ -35,24 +34,27 @@ BEGIN FROM (SELECT max(dat_id) as max_dat_id, - f.sch_id, - f.cit_id, + f.id_tc, + f.id_city, f.macaddr, - f.project FROM - fact_contact f + fact_communicate f WHERE dat_id <= date_it GROUP BY - f.cit_id, f.sch_id, f.macaddr, f.project) as f + f.id_city, f.id_tc, f.macaddr) as f INNER JOIN - dim_school s + telecenter t ON - f.sch_id = s.id + f.id_tc = t.id INNER JOIN - dim_city c + point_pt ON - f.cit_id = c.id; + t.id_point = pt.id + INNER JOIN + city c + ON + pt.id_city = c.id; -- how many rows were inserted? GET DIAGNOSTICS cur_rows := ROW_COUNT;