Zkouška 4.2.2020

Speedding at 2020-02-04 11:18:03
  1. Schéma Herec(HerecID, Jméno, Adresa), Film(FilmID, Titul, Režisér), Hraje_v(HerecID, FilmID). Napište SQL92 dotaz: Najdi herce, kteří hráli ve všech filmech režiséra Formana (3 body)

  2. Uvažujte schéma z 1), napište objektové rozšíření (3 body)

  3. Pro předchozí schéma napište dotaz: Pro každého herce získej počet filmů režírovaných Formanem, ve kterých měl daný herec roli (2 body)

  4. Dokument s termy A, B, C. Frekvence jsou TFA = 3, TFB = 2, TFC = 1. Máme 10000 dokumentů s frekvencemi DFA = 50, DFB = 1300, DFC = 250. Spočítejte vektor pro D pomocí TF*IDF (2 body)

  5. Vektorový model a váhu termu danou výrazem qk = (0,5 + (0,5 * TFk) / max TF) * IDFk. Jak bude vypadat výraz v případě, že dotaz bude pouze množina klíčových slov? (1 bod)

  6. Tabulky R a S, pR = 2000, br = 20, Ps = 5000, bS = 5, M = 402, nejvýše 5 n-tic z S je spojitelných z každou n-ticí v R.
    a) Počet stránek pro spojení pomocí nested loops (2 body)
    b) Počet stránek pro spojení pomocí nested loops, index je klastrovaný a má 2 úrovně (3 body)
    c) Počet stránek pro spojení pomocí nested loops, index má 2 úrovně (3 body)

  7. Databáze Agent(A_ID, A_Jméno), Dům(Adresa, Vlastník_Jméno, A_ID), Vybavenost(ADRESA, RYS). Dále uvažujte dotaz SELECT Vlastník_Jméno, A_Jméno FROM AGENT A, DŮM D, VYBAVENOST V WHERE D.ADRESA = V.ADRESA AND A.A_ID = D.A_ID AND V.RYS = '5+1' AND D.A_ID = '007'. Vybavenost má 10k záznamů o 1000 domech, b = 10, klastrovaný 2úrovňový index na atributu ADRESA. Agent má 200 agentů, b = 10, 1úrovňový index na atributu A_ID, relace setříděna podle atributu JMÉNO. Dům má 1000 domů, b = 4, klastrovaný 2úrovňový index na atributu ADRESA.
    a) Zkonstruujte strom dotazu využívající operace relační algebry, který odpovídá danému výrazu v SQL (1 bod)
    b) Navhrněte podle vašeho názoru nejlepší plán vyhodnocení dotazu a odpovídající strom dotazu. Navrhněte algoritmy a spočítejte cenu (počet IO operací) daného plánu (3 body)