mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-11-25 23:22:21 +00:00
84 lines
2.3 KiB
Bash
84 lines
2.3 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
|
||
|
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
|
||
|
|
CREATE ROLE tutorial_user LOGIN PASSWORD 'password';
|
||
|
|
CREATE DATABASE raw;
|
||
|
|
CREATE DATABASE stg;
|
||
|
|
EOSQL
|
||
|
|
|
||
|
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname raw <<-EOSQL
|
||
|
|
-- Grant CONNECT so the user can access the database
|
||
|
|
GRANT CONNECT ON DATABASE raw TO tutorial_user;
|
||
|
|
|
||
|
|
-- Grant USAGE on the schema (required to access tables)
|
||
|
|
GRANT USAGE ON SCHEMA public TO tutorial_user;
|
||
|
|
|
||
|
|
-- Grant SELECT on all existing tables
|
||
|
|
GRANT SELECT ON ALL TABLES IN SCHEMA public TO tutorial_user;
|
||
|
|
|
||
|
|
-- Ensure future tables are also readable
|
||
|
|
ALTER DEFAULT PRIVILEGES IN SCHEMA public
|
||
|
|
GRANT SELECT ON TABLES TO tutorial_user;
|
||
|
|
|
||
|
|
CREATE TABLE IF NOT EXISTS taxi_yellow (
|
||
|
|
VendorID int,
|
||
|
|
tpep_pickup_datetime timestamp,
|
||
|
|
tpep_dropoff_datetime timestamp,
|
||
|
|
passenger_count int,
|
||
|
|
trip_distance float,
|
||
|
|
RatecodeID int,
|
||
|
|
store_and_fwd_flag varchar,
|
||
|
|
PULocationID int,
|
||
|
|
PUZone varchar(16),
|
||
|
|
DOZone varchar(16),
|
||
|
|
DOLocationID int,
|
||
|
|
payment_type int,
|
||
|
|
fare_amount float,
|
||
|
|
extra float,
|
||
|
|
mta_tax float,
|
||
|
|
tip_amount float,
|
||
|
|
tolls_amount float,
|
||
|
|
improvement_surcharge float,
|
||
|
|
total_amount float,
|
||
|
|
congestion_surcharge float,
|
||
|
|
Airport_fee float,
|
||
|
|
cbd_congestion_fee float
|
||
|
|
);
|
||
|
|
EOSQL
|
||
|
|
|
||
|
|
|
||
|
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname stg <<-EOSQL
|
||
|
|
-- Grant CONNECT so the user can access the database
|
||
|
|
GRANT CONNECT ON DATABASE stg TO tutorial_user;
|
||
|
|
|
||
|
|
-- Grant USAGE on the schema (required to access tables)
|
||
|
|
GRANT USAGE ON SCHEMA public TO tutorial_user;
|
||
|
|
|
||
|
|
-- Grant SELECT on all existing tables
|
||
|
|
GRANT SELECT ON ALL TABLES IN SCHEMA public TO tutorial_user;
|
||
|
|
|
||
|
|
-- Ensure future tables are also readable
|
||
|
|
ALTER DEFAULT PRIVILEGES IN SCHEMA public
|
||
|
|
GRANT SELECT ON TABLES TO tutorial_user;
|
||
|
|
|
||
|
|
CREATE TABLE IF NOT EXISTS dw_taxi_trips (
|
||
|
|
vendor_id INT,
|
||
|
|
pickup_datetime TIMESTAMP,
|
||
|
|
dropoff_datetime TIMESTAMP,
|
||
|
|
passenger_count INT,
|
||
|
|
trip_distance FLOAT,
|
||
|
|
pu_location_id INT,
|
||
|
|
do_location_id INT,
|
||
|
|
payment_type INT,
|
||
|
|
fare_amount FLOAT,
|
||
|
|
tip_amount FLOAT,
|
||
|
|
total_amount FLOAT,
|
||
|
|
congestion_surcharge FLOAT,
|
||
|
|
pickup_hour SMALLINT,
|
||
|
|
pickup_dayofweek SMALLINT,
|
||
|
|
trip_duration_min FLOAT,
|
||
|
|
avg_speed_mph FLOAT,
|
||
|
|
trip_category VARCHAR(16)
|
||
|
|
);
|
||
|
|
EOSQL
|