Kas PostgreSQLis ON DELETE CASCADE kasutamine välisvõtme deklaratsioonis põhjustab halba kustutamise töökiirust e jõudlust? Ei tekita.Põhjendan vastust. Tegin katsetusi PostgreSQL 15 andmebaasis, millel on järgmine kontseptuaalne struktuur:[Facility]-0..1-----------------0..*-[Health_care_visit]Tabel Facility: 50 000 rida... PostgreSQLON DELETE CASCADEjõudluskustutaminevälisvõtiviitamisterviklikkusoptimeerimine 12.06.2023 13:33 | Erki Eessaar
Kas uuema ühendamise süntaksi korral võib WHERE klauslis olevad lisapiirangud kirjutada FROM klauslis ühendamise tingimusse? Vaatlen näitena andmebaasi, millel on kontseptuaalne struktuur: [Dept]-0..1-----------0..*-[Emp]SIIN on Postgr... tabelite ühendamineJOIN tingimusedWHERE klauselFROM klauselOUTER JOINpäringu optimeerimineloetavus 25.03.2023 12:34 | Erki Eessaar
Millest alustada, kui sooviks õppida (PostgreSQLis) päringute optimeerimist? Minu arvates võiks alustada sellest, et õppida kirjutama mitte-ebaefektiivseid päringuid (lihtsustamata tingimused, üleliigsete tabelite lugemine, samade andmete mitmekordne lugemine jne).... PostgreSQLoptimeeriminetäitmisplaanEXPLAINjõudlusSQL häälestamineressursikulu 23.03.2023 10:37 | Erki Eessaar
Mis võib mõjutada andmebaasis toimuvate lugemis ja muutmisoperatsioonide töökiirust? Millele võiks töökiiruse parandamisel tähelepanu pöörata? Nimetan järgnevalt mõningaid aspekte koos viidetega lõputöödele, mis seda aspekti käsitlevad. Indekseid ei ole piisavalt, indekseid on liiga palju, indeksid on üleliigsed. jõudlusoptimeerimineindeksidandmebaasi disainSQL häälestaminematerialiseeritud vaateddenormaliseerimine 19.03.2023 13:57 | 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? (2) 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.Vähemalt konkreetsete süsteemide ja katseta... tabeli elimineerimise teisendusPostgreSQLOracletöökiirusjõudlusvälisühendamineühendamisoperatsioonpäringutöötlustäitmisplaanPostgreSQLOracleJOINjõudlusoptimeeriminevälisühendaminesisemine ühendamine 03.12.2022 14:03 | Erki Eessaar
Kas Oracles saab defineerida vaadetele kitsendusi? Jah saab. Esiteks saab vaadetele lisada WITH CHECK OPTION (andmemuudatus vaate kaudu peab rahuldama vaate alampäringu tingimusi) ja WITH READ ONLY (vaade on ainult lugemiseks, st kirjutuskaitsega) kitsendused. Neid kitsendusi jõustatakse ... OraclevaadekitsendusOraclevaadekitsendusedWITH CHECK OPTIONWITH READ ONLY 27.11.2022 17:35 | 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. Lihtsama... semantiline teisendusoptimeeriminetabeli elimineerimineOraclePostgreSQLkitsendusedpäringu lihtsustamine 01.06.2022 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 | Erki Eessaar
Miks peaks tabeliga seotud kitsenduse või indeksi nimi sisaldama tabeli nime? Hea praktika on sellistes nimedes tabeli nime kasutada. Üldine põhimõte on, et tabeli nimi aitab tagada kitsenduse/indeksi nime unikaalsust skeemi piires. Miks on nime unikaalsus skeemi piires vajalik? Miks kasutada indeksi nimes tabeli n... indekskitsendusnimetaminekitsendusedindeksidnimetamisreeglidPostgreSQLOracleunikaalsus 01.06.2022 00:00 | Erki Eessaar
Kas päringute tegemine vaadete põhjal võib mõjutada päringute täitmise kiirust võrreldes päringute tegemisega otse baastabelite põhjal? Jah. Vaadete kasutamine mõjutab täitmisplaanide valikut ja võib mõnikord viia ebaotstarbekate plaanide valimiseni. Kašnikova, D., 2015. Vaadete mõju päringute täitmisplaanide koostamisele kahe andmebaasisüsteemi näitel. Magistritöö. TTÜ Informa... vaatedjõudlustäitmisplaanPostgreSQLOracleoptimeerimineturvabarjäär 01.06.2022 00:00 | Erki Eessaar