Commit 1f60a19dac20535a949a88aed6753a6d1e85232d

Authored by viktorbasanets
1 parent 65908b00

Was added script to create new dbs for EntityView model

... ... @@ -638,3 +638,45 @@ CREATE TABLE IF NOT EXISTS thingsboard.rule_node (
638 638 additional_info text,
639 639 PRIMARY KEY (id)
640 640 );
  641 +
  642 +CREATE TABLE IF NOT EXISTS thingsboard.entity_views (
  643 + id timeuuid,
  644 + entity_id timeuuid,
  645 + tenant_id timeuuid,
  646 + customer_id timeuuid,
  647 + name text,
  648 + keys text,
  649 + ts_begin bigint,
  650 + ts_end bigint,
  651 + search_text text,
  652 + additional_info text,
  653 + PRIMARY KEY (id, entity_id, tenant_id, customer_id)
  654 +);
  655 +
  656 +CREATE MATERIALIZED VIEW IF NOT EXISTS thingsboard.entity_views_by_tenant_and_name AS
  657 + SELECT *
  658 + from thingsboard.entity_views
  659 + WHERE entity_id IS NOT NULL AND tenant_id IS NOT NULL AND customer_id IS NOT NULL AND keys IS NOT NULL AND ts_begin IS NOT NULL AND ts_end IS NOT NULL AND name IS NOT NULL AND id IS NOT NULL
  660 + PRIMARY KEY (tenant_id, name, id, entity_id, customer_id)
  661 + WITH CLUSTERING ORDER BY (name ASC, id DESC, entity_id DESC, customer_id DESC);
  662 +
  663 +CREATE MATERIALIZED VIEW IF NOT EXISTS thingsboard.entity_views_by_tenant_and_entity AS
  664 + SELECT *
  665 + from thingsboard.entity_views
  666 + WHERE entity_id IS NOT NULL AND tenant_id IS NOT NULL AND customer_id IS NOT NULL AND keys IS NOT NULL AND ts_begin IS NOT NULL AND ts_end IS NOT NULL AND name IS NOT NULL AND id IS NOT NULL
  667 + PRIMARY KEY (tenant_id, entity_id, id, customer_id, name)
  668 + WITH CLUSTERING ORDER BY (entity_id ASC, customer_id ASC, id DESC, name DESC);
  669 +
  670 +CREATE MATERIALIZED VIEW IF NOT EXISTS thingsboard.entity_views_by_tenant_and_customer AS
  671 + SELECT *
  672 + from thingsboard.entity_views
  673 + WHERE entity_id IS NOT NULL AND tenant_id IS NOT NULL AND customer_id IS NOT NULL AND keys IS NOT NULL AND ts_begin IS NOT NULL AND ts_end IS NOT NULL AND name IS NOT NULL AND id IS NOT NULL
  674 + PRIMARY KEY (tenant_id, customer_id, id, entity_id, name)
  675 + WITH CLUSTERING ORDER BY (customer_id ASC, id DESC, entity_id DESC, name DESC);
  676 +
  677 +CREATE MATERIALIZED VIEW IF NOT EXISTS thingsboard.entity_views_by_tenant_and_customer_and_entity AS
  678 + SELECT *
  679 + from thingsboard.entity_views
  680 + WHERE entity_id IS NOT NULL AND tenant_id IS NOT NULL AND customer_id IS NOT NULL AND keys IS NOT NULL AND ts_begin IS NOT NULL AND ts_end IS NOT NULL AND name IS NOT NULL AND id IS NOT NULL
  681 + PRIMARY KEY (tenant_id, customer_id, entity_id, id, name)
  682 + WITH CLUSTERING ORDER BY (customer_id ASC, entity_id DESC, id DESC, name DESC);
... ...
... ... @@ -251,3 +251,16 @@ CREATE TABLE IF NOT EXISTS rule_node (
251 251 debug_mode boolean,
252 252 search_text varchar(255)
253 253 );
  254 +
  255 +CREATE TABLE IF NOT EXISTS entity_views (
  256 + id varchar(31) NOT NULL CONSTRAINT entity_view_pkey PRIMARY KEY,
  257 + additional_info varchar,
  258 + customer_id varchar(31),
  259 + keys varchar(255),
  260 + ts_begin varchar(255),
  261 + ts_end varchar(255),
  262 + name varchar(255),
  263 + search_text varchar(255),
  264 + entity_id varchar(31),
  265 + tenant_id varchar(31)
  266 +);
... ...