Schematy baz danych opisują tabele baz danych i relacje między nimi. Korzystając ze schematów baz danych, użytkownik może zaplanować wielkość bazy danych.
Informacje zawarte w schemacie bazy danych historycznych pomagają zrozumieć odwzorowanie między zaimportowanym modelem miar biznesowych, a tabelami tej bazy danych. Panele kontrolne korzystają z bazy danych historycznych podczas przeprowadzania analizy wielowymiarowej i generowania raportów.
Historyczna baza danych jest początkowo zapełniana danymi daty i godziny z zakresu od roku 1995 do roku 2009. Jeśli przewidywane jest zapisywanie wartości dat i godzin (np. godzin uruchomienia lub zatrzymania procesu albo innych danych pomiarów), które będą spoza tego zakresu dat, należy użyć następującego skryptu SQL, aby dodać dodatkowe daty do tabeli DIM_TIME w bazie danych historycznych:
insert into <nazwa schematu WBI użytkownika>.dim_time( surrogate_key, year, month, day)
with WBITIME (skey, ldate) as
(select surrogate_key+1 as skey,
COALESCE(
DATE(SUBSTR(DIGITS(YEAR),7,4) || '-' ||
SUBSTR(DIGITS(MONTH),4,2) || '-' ||
SUBSTR(DIGITS(DAY), 4,2)) + 1 DAYS,
DATE('YYYY-MM-DD pierwszego dnia, od którego zacząć,
jeśli tabela DIM_TIME jest pusta.')
)as ldate
from sysibm.sysdummy1, <nazwa schematu WBI użytkownika>.dim_time
where
DATE(
SUBSTR(DIGITS(YEAR) ,7,4) || '-' ||
SUBSTR(DIGITS(MONTH),4,2) || '-' ||
SUBSTR(DIGITS(DAY) ,4,2)
) =
(
SELECT
MAX(
DATE(SUBSTR(DIGITS(YEAR),7,4) || '-' ||
SUBSTR(DIGITS(MONTH),4,2) || '-' ||
SUBSTR(DIGITS(DAY), 4,2)))
FROM <nazwa schematu WBI użytkownika>.DIM_TIME
)
UNION ALL
SELECT parent.skey+1, ldate + 1 DAYS
from WBITIME parent
where YEAR(ldate + 1 days) < where YEAR(ldate + 1 days) <
<YYYY czterocyfrowy rok, w którym dane NIE mają się kończyć>
)
select a.skey, year(a.ldate), month(a.ldate), day(a.ldate)
from WBITIME a
WHERE
a.ldate >= DATE('YYYY-MM-DD: Początek zakresu,
który należy wstawić.')
AND a.ldate <= DATE('YYYY-MM-DD: Koniec zakresu,
który należy wstawić.')