* Define initial warehouse schema * Add session id as the primary key to the session accumulating fact table * Insert a row to use instead of nulls in the time and date dimensions * Add missing attributes and a partial index * Rename files * Refactor: move fact table to a separate migration * Add domain types for the warehouse * Add session connection transaction fact table * Change columns to match ingress data types * Add views for host dimension ingress * Create source and target views for the host and user dimensions * Generate random ID for dimension table primary key * Formatting changes * Add current dimension id to target views * Implement upsert function for host dimension * Use domain types for upsert function parameters * Fix indentation * Add wh_public_id domain type * Fix value of type columns when the other columns are null * Implement upsert function for user dimension * Add warehouse domain types for timestamps and text fields * Move fact table migrations to a higher number * Add functions for getting the current date and current time IDs * Rename backend to endpoint in column names * Rename fact tables The fact tables are actually accumulating fact tables not transactional fact tables. * Add default value to connection_authorized_time column * Update session fact table * Add session_max_seconds, session_connection_limit, and default_port to wh_host_dimension * Move session table above connection table * Add after insert trigger to session table for warehouse ingress * Add fk from connection warehouse table to session warehouse table * Implement insert trigger for session connections * Update warehouse for a user having multiple auth accounts * Rename warehouse columns to be consistent with operational tables * Add connection specific columns to the connection fact table * Update session calculations in warehouse * Rename functions and formatting changes * Rename session columns to match names of session states * Implement warehouse triggers for session and connection state changes * Run 'make migrations' * Use a static start and end date for the warehouse date dimension * Document warehouse functions * Remove outdated TODO comments * Add TODO comments for additional dimensions and fact table columns
21 lines
596 B
PL/PgSQL
21 lines
596 B
PL/PgSQL
begin;
|
|
|
|
drop trigger wh_insert_session_connection_state on session_connection_state;
|
|
drop function wh_insert_session_connection_state;
|
|
|
|
drop trigger wh_insert_session_state on session_state;
|
|
drop function wh_insert_session_state;
|
|
|
|
drop trigger wh_update_session_connection on session_connection;
|
|
drop function wh_update_session_connection;
|
|
|
|
drop trigger wh_insert_session_connection on session_connection;
|
|
drop function wh_insert_session_connection;
|
|
|
|
drop trigger wh_insert_session on session;
|
|
drop function wh_insert_session;
|
|
|
|
drop function wh_rollup_connections;
|
|
|
|
commit;
|