{"version":3,"sources":["webpack:///./components/Example.less","webpack:///./routes/BasiDiDati.js","webpack:///./components/Example.js"],"names":["module","exports","r","String","raw","title","href","props","class","style","example","children"],"mappings":"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","file":"route-BasiDiDati.chunk.f63cb.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"red\":\"red__2y1B_\",\"orange\":\"orange__dD2kx\",\"yellow\":\"yellow__OEpwl\",\"lime\":\"lime__CVe41\",\"cyan\":\"cyan__26ZAg\",\"blue\":\"blue__LO7Xm\",\"magenta\":\"magenta__1Akee\",\"example\":\"example__2PzAa\"};","import {BLatex, ILatex, Panel, PLatex, Section, TablePanel, Timer} from \"bluelib\";\nimport Example from \"../components/Example\";\n\nconst r = String.raw;\n\nexport default function (props) {\n return (\n
\n Uno scritto con tre domande:\n
\n\n In gruppo, progettare un database secondo queste specifiche.\n
\n\n Va consegnato via mail almeno 10 giorni prima dello scritto.\n
\n\n Link\n
\n\n Espressione formata da una o più condizioni moltiplicate tra loro.\n
\n\n Condizioni che soddisfano i seguenti requisiti:\n
\n{r`BETWEEN`}
{r`OR`}
(solo in alcuni DBMS)\n È possibile costruire indici sulle colonne di una tabella per velocizzare le query che\n riguardano quelle colonne.\n
\n\n In particolare, ogni tabella può avere un indice clustered e infiniti indici\n unclustered.\n
\n\n Generalmente, l'indice clustered è costruito sulla colonna della primary key, ma non\n è sempre quello il caso.\n
\n\n Gli indici vanno tenuti aggiornati, e ciò ha un costo di manutenzione:\n
\nDELETE
: UPDATE
: \n È possibile usare gli indici nelle query solo per gli argomenti di ricerca attraverso\n indice.\n
\n\n La percentuale di tuple di una tabella che soddisfano una condizione.\n
\nCondizione | \nFattore di selettività | \n
---|---|
col = $costante | \n |
col != $costante | \n |
col1 != col2 | \n |
IN | \n |
col > $costante | \n |
{r`col < $costante`} | \n |
col BETWEEN $lower AND $upper | \n |
cond1 OR cond2 | \n
\n Quante unità di lavoro costa accedere a una specifica relazione:\n
\n\n Per accedere attraverso un indice a una specifica tupla della relazione, si spenderà:\n
\n\n Se le tuple a cui si vuole accedere sono più di una, allora, il costo dipenderà da se l'indice è\n clustered o non-clustered.\n
\n\n Per gli indici clustered, visto che basta caricare in memoria i blocchi in sequenza, il\n costo sarà:\n
\n\n Per gli indici unclustered, per i quali potremmo dover caricare e rimuovere lo stesso\n blocco dalla memoria più volte, il costo sarà:\n
\n\n Se si stanno effettuando query su più indici unclustered, il costo sarà:\n
\n\n Quante unità di lavoro costa effettuare un join tra due relazioni.\n
\n\n Varia in base al metodo di join utilizzato.\n
\n\n Utilizzando il metodo del nested loop:\n
\n\n La scelta della colonna su cui iterare è quindi importante!\n
\n