Bases de datos

Vistes materialitzades d'Oracle per optimitzar un Datawarehouse

Com les càrregues d'un Data warehouse es realitzen de manera periòdica, i a més és habitual la creació de taules agregades per millorar l'eficiència i temps de resposta dels nostres informes, un recurs d'optimització física que pot aportar grans millores és la utilització de vistes materialitzades.

La vista materialitzada no és més que una vista, definida amb una sentència SQL, de la qual a més d'emmagatzemar la seva definició, s'emmagatzemen les dades que retorna, realitzant una càrrega inicial i després cada cert temps un refresc dels mateixos.

Així, si tenim un Datawarehouse que s'actualitza diàriament, podríem utilitzar vistes materialitzades per anar actualitzant taules intermèdies que alimentin els nostres esquemes de DWH, o directament per implementar taules agregades que es refrescaran a partir de les nostres taules basi. 

La creació d'aquest tipus de vistes no tan complexa com pot semblar, el més important és tenir clar cada quant temps volem actualitzar la informació de les vistes, i quin mètode de refresc utilitzar.

 

Construcció de scripts amb ajuda del diccionari

És bastant habitual si es treballa amb bases de dades que sovint s'hagi de realitzar alguna tasca de creació o alteració d'estructures, anàlisis, recompilació, etc. sobre objectes de la base de dades. Per això se sol crear un script amb nombroses sentències DDL, en les quals la majoria de les vegades l'únic que canvia és el nom de l'objecte a tractar.
En aquests casos pot estalviar-nos molt treball la utilització del diccionari de la base de dades per construir aquestes sentències dinámicament.

Posarem com a exemple la creació d'un nou camp per emmagatzemar la data de creació dels registres en totes les taules d'un esquema d'una base de dades ORACLE. Per això utilitzaríem la següent sentència:

Com crear un nou esquema a Oracle pas a pas

Per poder realitzar tots els passos és necessari iniciar la sessió en la base de dades amb un usuari amb permisos d'administració, el més senzill és utilitzar directament l'usuari SYSTEM

  • Creació d'un tablespace per a dades, i un altre per a índexos. Aquests tablespaces són la ubicació on s'emmagatzemaran els objectes de l'esquema que crearem.

Tablespace per a dades, amb mida inicial de 1024 Mb, i autoextensible

CREATE TABLESPACE "APPDAT"

LOGGING DATAFILE '/export/home/oracle/oradata/datafiles/APPDAT.dbf' SIZE 1024 M

EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO

Tablespace per a índexos, amb mida inicial de 512 Mb, i autoextensible

CREATE TABLESPACE "APPIDX"

LOGGING DATAFILE '/export/home/oracle/oradata/datafiles/APPIDX.dbf' SIZE 512 M

Material sobre bases de dades 'lliures', Màster de la UOC

En la Universitat Oberta de Catalunya es pot cursar el Màster de 'Programari Lliure' sobre sofware de Lliure Distribució. Per estar d'acord amb la filosofia lligada al desenvolupament d'aquest tipus de sofware la UOC ha decidit anar publicant els materials docents de les assignatures que es van cursant en aquest Màster.
Una d'aquestes publicacions són els apunts de l'assignatura Bases de Dades, on s'expliquen els conceptes més importants sobre bases de dades, evolució històrica, el model Relacional de Bases de Dades, el llenguatge de consulta SQL i disseny de models de bases de dades. Després es pot aplicar aquesta teoria sobre MySQL i PostgreSQL, dues dels sistemes gestors de base de dades de lliure distribució més coneguts, dels quals s'aporten característiques, detallis funcionament i nocions d'administració.
Aquest és el temari que abasten aquestes anotacions, extret de l'índex del mateix document. Seguint l'enllaç del títol de cada mòdul es pot descarregar en format pdf:

Cerca amb el motor de Google

Google
 
      
Contingut sindicat