Programska oprema za podatkovno skladišče je v zadnjih nekaj letih eksponentno rasla in naj bi v prihodnosti doživela nadpovprečno rast. Podatkovno skladišče je skladišče vseh transakcijskih podatkov organizacije ali podjetja. Primarni namen podatkovnega skladišča je analizirati transakcije in izvajati zapletena poročila.
Vsak programski izdelek za podatkovno skladišče ima tri osnovne funkcije: ekstrakcijo podatkov, ustvarjanje strukture baze podatkov in ustvarjanje prilagojenih poizvedb. V industriji informacijske tehnologije so strokovnjaki za podatkovna skladišča znani kot strokovnjaki za poslovno inteligenco. Običajno imajo izkušnje iz matematike, statistike ali analize računalniških sistemov. Dodatno usposabljanje je pogosto potrebno za relacijske baze podatkov, sistemsko arhitekturo in osnove programiranja baz podatkov.
Ena najpomembnejših funkcij katere koli programske opreme za podatkovno skladišče je zmožnost pravilnega pridobivanja in strukturiranja podatkov iz različnih virov. To se pogosto imenuje orodje za ekstrakcijo, pretvorbo in nalaganje (ETL). Podatkovna skladišča morajo biti napolnjena s podatki iz transakcijskega sistema na način, ki ohranja celovitost in medsebojne odnose podatkov, hkrati pa omogoča osebju, da prilagodi podatke, ki se pridobivajo. To je bistveni del arhitekture sistema.
Pomembno je omeniti, da se večina programov za shranjevanje podatkov uporablja za ustvarjanje, podporo in vzdrževanje več nizov podatkov. V mnogih situacijah so nekatere tabele podvojene v vseh kockah, medtem ko obstajajo drugi nabori podatkov, ki morajo ostati ločeni in ločeni. Na primer, podatkovna kocka s podatki o nakupih bo imela veliko skupnih podatkovnih točk s kocko plačil prodajalca. Vendar pa bo v vsaki kocki tudi vrsta posebnih informacij, ki veljajo samo za to določeno kocko.
Arhitekt podatkov je odgovoren za identifikacijo skupnih podatkov, potrditev njihove pravilne in omogočanje, da so te informacije na voljo v več kockah, ne da bi to vplivalo na celovitost vsake kocke. Poleg tega je odgovoren za upravljanje postopka nalaganja podatkov, ki je potreben za osvežitev podatkovnih kock. To je lahko avtomatiziran ali ročni postopek, odvisno od kompleksnosti kock in načina zagotavljanja podatkov.
Vsi programi za podatkovno skladišče so opremljeni z vrsto standardnih poročil in poizvedb. Ta poročila temeljijo na običajnih poslovnih potrebah in so ponavadi precej splošna. Na primer, poročilo desetih najboljših strank glede na obseg prodaje za tekoče leto je običajna zahteva za poročilo in bi bilo standardno v večini programov.
Vendar pa mnoga podjetja ugotavljajo, da potrebujejo izdelavo poročil po meri za izpolnjevanje posebnih potreb. Na primer, isto poročilo o prodaji bo morda moralo vsebovati imena prodajnih zastopnikov in razvrstiti podatke znotraj določenih okrožij ali ozemelj. Zmožnost hitrega ustvarjanja poročila po meri in njegove prilagoditve obstoječim poslovnim potrebam je bistvenega pomena za uspeh te vrste programske opreme.