Töökiiruse tõstmiseks ei kirjuta andmebaasisüsteemid andmemuudatusi kohe kettale, küll aga kirjutavad kohe kettale andmemuudatuse kohta käiva logi. Kuidas see töökiirust tõstab? Logi kirjutamine on ju samuti kõvaketta poole pöördumine. Kirjeldasite, et bloki kettale salvestamisel kustutatakse see muutmälust ära. Seega proovid süsteem salvestamist edasi lükata, kuna blokki võib kohe järgmistes päringutes jälle vaja olla ning oleks hea, kui see oleks muutmälus olemas. Miks mitte blokki kettale kirjutada, kuid jätta see ka muutmällu alles? Logi kirjutamine enne muudatusi sisalduvate plokkide (räpaste plokkide) kettale kirjutamist pakub paindlikust, sest andmebaasisüsteem saab nende plokkide kettale kirjutamist edasi lükata ja valida selleks selleks endale sobivaima aja. Meetodit, kus e... WALjõudluslogiminepuhvermäluACIDkettakirjutaminePostgreSQL 01.06.2022 00:00:00 | Erki Eessaar
Tooge palun mõni andmebaasisüsteemi poolt tehtava semantilise teisenduse näide?! Andmebaasisüsteemi poolne päringu lihtsustamine tähendab, et andmebaasisüsteem asendab kasutaja poolt ette antud päringu lihtsama, kuid alati samasuguse tulemuse andva päringuga (loogiliselt samaväärse päringuga) ja täidab selle uue päringu. Lih... semantiline teisendusoptimeeriminetabeli elimineerimineOraclePostgreSQLkitsendusedpäringu lihtsustamine 01.06.2022 00:00:00 | Erki Eessaar
Juhul kui välisühendamist ei ole lause õige tulemuse saavutamiseks vaja, siis kas OUTER JOIN operatsiooni kasutamine INNER JOIN asemel mõjutab lause täitmisplaani valikut ja seega ka lause täitmise kiirust? Sõltub päringust ja andmebaasisüsteemist.Katsetasin Oracles (12.1) ja PostgreSQL (14) põhjal, mis olid samas serverarvutis. Katsetamisel kasutatud andmebaas ja andmed olid ühesugused.Oletame, et andmebaasis on järgnevale konts... tabeli elimineerimise teisendusPostgreSQLOracletöökiirusjõudlusvälisühendamineühendamisoperatsioonpäringutöötlustäitmisplaanPostgreSQLOracleJOINjõudlusoptimeeriminevälisühendaminesisemine ühendamine 01.06.2022 00:00:00 | Erki Eessaar
Mida kujundab endast elementaarvõtme normaalkuju (EVNK)? Kui ma vaatan C.J Date ja J. Celko töid, siis nad mainivad seda normaalkuju lühidalt, ajaloolise tagasivaate ja esitluse täielikkuse huvides. C.J. Date osundab, et EVNK-le viidatakse kirjanduses vähe.EVNK on kolmanda normaalkuju (3N... elementary key normal formEKNDnormaliseeriminenormalizationBCNK3NKliitvõtiandmete liiasussõltuvused 01.06.2022 00:00:00 | Erki Eessaar
Mis vahe on välisvõtme spetsifikatsioonis ON UPDATE/ON DELETE RESTRICT ja ON UPDATE/ON DELETE NO ACTION vahel? ON DELETE/ON UPDATE RESTRICT tähendab, et viidete terviklikkust... viidete terviklikkuskompenseeriv tegevusvälisvõtivõõrvõtiPostgreSQLOraclevälisvõtiviitamisterviklikkusON DELETEON UPDATERESTRICTNO ACTIONPostgreSQLOracle 01.06.2022 00:00:00 | Erki Eessaar
Kuidas salvestada PostgreSQL andmebaasis tabelite muudatuste ajalugu? Lahendus peaks olema üldine, mitte ühe konkreetse tabeli spetsiifiline. Kas siin artiklis toodud lahendus on mõistlik? https://www.cybertec-postgresql.com/en/tracking-changes-in-postgresql/ Andmebaasi kasutamise (sh andmemuudatuste jälgimist) nimetatakse auditeerimiseks (auditing). Andmebaasisüsteemid pakuvad sageli selleks erinevaid sisseehitatud võimalusi kuid kui neid ei ole või need pole sellised nagu vaja, siis trigerid on... PostgresPostgreSQLauditeerimineajalugutrigerJSONBlogimine 01.06.2022 00:00:00 | Erki Eessaar
Kuidas leida päringuga koondandmed, kus iga olemi kohta on üks rida ning selles reas on massiiv selle olemiga otseselt või kaudselt seotud olemite andmetest? See, kas seda saab üldse SQLiga lahendada ja kuidas seda lahendada sõltub andmebaasisüsteemist.Järgnev näide on tehtud PostgreSQLis. Oletame, et andmebaasi kontseptuaalne struktuur on:[Hotell]-1------0..*-[Ruum]-1-----------0.... koondandmedmassiivPostgreSQLkoondandmedmassiividarray_aggJSON 01.06.2022 00:00:00 | Erki Eessaar
Ma olen informaatika üliõpilane. Ma arvan, et kursuse töö töövihik on suur dokument mida keegi ei kasuta päris elus. Aine projekti tegemine on täielik ajaraisk, sest kogu info mida õppejõud näha tahab tuleb temalt ning kui ise sellest väga õppida ei saa. Milliseid kasulikke teadmisi, lisaks andmebaasidele, see projekt annab? Miks see projekt kasulik on? (Ehk miks õppida süsteemianalüüsi TI ajastul?) Koodi genereerimine ei ole enam probleem – seda teeb tehisintellekt (TI). Uus pudelikael arenduses on: Tellija vajadu... iseseisev tööprojektdokumentdokumentatsioonmudelidprojectdiagrammdiagrammidpuhas koodallsüsteemfunktsionaalne allsüsteemregisterandmebaasioperatsioonandmebaasioperatsioonide lepingud 01.06.2022 00:00:00 | Erki Eessaar
Millised on võimalikud lähenemised andmebaasirakenduste loomisele? Lähtumine objektidest. Andmebaasirakendus on realiseeritud mõnes objektorienteeritud programmeerimiskeeles. Sõnasta funktsionaalsed nõuded (kasutuslugude või kasutusjuhtudena). Koosta rikkalik valdkonnamudel... paks andmebaasjäme andmebaasnutikas andmebaasarukas andmebaaskõhn andmebaaspeenike andmebaasjuhm andmebaasthick databasethickDBsmart databasesmartDBthin databasedumb database 01.06.2022 00:00:00 | Erki Eessaar
Miks peaks eelistama trigerite puhul tingimuse kirjutamist päises olevasse WHEN klauslisse, selle asemel, et kirjutada see kehandis olevasse IF lausesse? Stackoverflow arutelus pakub kasutaja Elad ühe ülesande lahendusena välja va... trigertrigeridpuhas kooddeklaratiivneimperatiivnetrigeridtingimusedjõudlusoptimeeriminepuhas kood 01.06.2022 00:00:00 | Erki Eessaar