2024-06-28 17:40:41 +02:00
|
|
|
-- Update DeltaLake service due to connection schema changes to enable DeltaLake ingestion from Storage
|
|
|
|
UPDATE dbservice_entity
|
|
|
|
SET json = JSONB_SET(
|
|
|
|
JSONB_SET(
|
|
|
|
json,
|
|
|
|
'{connection,config,configSource}',
|
|
|
|
JSONB_BUILD_OBJECT('connection', json->'connection'->'config'->'metastoreConnection')
|
|
|
|
),
|
|
|
|
'{connection,config,configSource,appName}',
|
|
|
|
json->'connection'->'config'->'appName'
|
|
|
|
) #- '{connection,config,metastoreConnection}' #- '{connection,config,appName}'
|
|
|
|
WHERE serviceType = 'DeltaLake';
|
2024-07-05 06:35:32 -07:00
|
|
|
|
|
|
|
|
|
|
|
-- create API service entity
|
|
|
|
CREATE TABLE IF NOT EXISTS api_service_entity (
|
|
|
|
id VARCHAR(36) GENERATED ALWAYS AS (json ->> 'id') STORED NOT NULL,
|
|
|
|
nameHash VARCHAR(256) NOT NULL,
|
|
|
|
name VARCHAR(256) GENERATED ALWAYS AS (json ->> 'name') STORED NOT NULL,
|
|
|
|
serviceType VARCHAR(256) GENERATED ALWAYS AS (json ->> 'serviceType') STORED NOT NULL,
|
|
|
|
json JSONB NOT NULL,
|
|
|
|
updatedAt BIGINT GENERATED ALWAYS AS ((json ->> 'updatedAt')::bigint) STORED NOT NULL,
|
|
|
|
updatedBy VARCHAR(256) GENERATED ALWAYS AS (json ->> 'updatedBy') STORED NOT NULL,
|
|
|
|
deleted BOOLEAN GENERATED ALWAYS AS ((json ->> 'deleted')::boolean) STORED,
|
|
|
|
PRIMARY KEY (id),
|
|
|
|
UNIQUE (nameHash)
|
|
|
|
);
|
|
|
|
|
|
|
|
-- create API collection entity
|
|
|
|
CREATE TABLE IF NOT EXISTS api_collection_entity (
|
|
|
|
id VARCHAR(36) GENERATED ALWAYS AS (json ->> 'id') STORED NOT NULL,
|
|
|
|
name VARCHAR(256) GENERATED ALWAYS AS (json ->> 'name') STORED NOT NULL,
|
|
|
|
fqnHash VARCHAR(256) NOT NULL,
|
|
|
|
json JSONB NOT NULL,
|
|
|
|
updatedAt BIGINT GENERATED ALWAYS AS ((json ->> 'updatedAt')::bigint) STORED NOT NULL,
|
|
|
|
updatedBy VARCHAR(256) GENERATED ALWAYS AS (json ->> 'updatedBy') STORED NOT NULL,
|
|
|
|
deleted BOOLEAN GENERATED ALWAYS AS ((json ->> 'deleted')::boolean) STORED,
|
|
|
|
PRIMARY KEY (id),
|
|
|
|
UNIQUE (fqnHash)
|
|
|
|
);
|
|
|
|
|
|
|
|
-- create API Endpoint entity
|
|
|
|
CREATE TABLE IF NOT EXISTS api_endpoint_entity (
|
|
|
|
id VARCHAR(36) GENERATED ALWAYS AS (json ->> 'id') STORED NOT NULL,
|
|
|
|
name VARCHAR(256) GENERATED ALWAYS AS (json ->> 'name') STORED NOT NULL,
|
|
|
|
fqnHash VARCHAR(256) NOT NULL,
|
|
|
|
json JSONB NOT NULL,
|
|
|
|
updatedAt BIGINT GENERATED ALWAYS AS ((json ->> 'updatedAt')::bigint) STORED NOT NULL,
|
|
|
|
updatedBy VARCHAR(256) GENERATED ALWAYS AS (json ->> 'updatedBy') STORED NOT NULL,
|
|
|
|
deleted BOOLEAN GENERATED ALWAYS AS ((json ->> 'deleted')::boolean) STORED,
|
|
|
|
PRIMARY KEY (id),
|
|
|
|
UNIQUE (fqnHash)
|
|
|
|
);
|