Dokumentowe bazy danych 1000-I1DokBazDan
1. Wstęp do dokumentowej bazy danych RavenDB.
2. Modelowanie danych oraz operacje CRUD.
3. Omówienie transakcyjności (ACID) oraz przedstawienie sposobu implementacji (WAL - Write Ahead Journal, MVCC - Multiversion concurrency control).
4. Zapytania w języku RQL oraz ich obsługa przez automatyczne indeksy. Koncepcja BASE (Basically Available, Soft state, Eventual consistency).
5. Tworzenie indeksów statycznych przy użyciu LINQ (C#) lub JavaScript. Wykonywanie obliczeń podczas indeksowania oraz wyszukiwanie pełnotekstowe.
6. Agregacja danych i obsługa zapytań w oparciu o indeksy map-reduce.
7. Zastosowanie dokumentów powiązanych - ładowanie danych, zapytania oraz indeksowanie.
8. Vector Search.
9. Skalowalność, wysoka dostępność (HA - High Availability) oraz Database-as-a-Service (DBaaS) na przykładzie RavenDB Cloud.
Całkowity nakład pracy studenta
Efekty uczenia się - wiedza
Efekty uczenia się - umiejętności
Koordynatorzy przedmiotu
Wymagania wstępne
Kryteria oceniania
Zaliczenie przedmiotu odbywa się na podstawie projektu semestralnego realizowanego w technologii .NET (ASP.NET Core, Console lub Swagger API). Ocena końcowa zależy od stopnia zaawansowania implementacji i wykorzystanych mechanizmów bazy danych.
Kryteria oceniania:
● Ocena Dostateczna (3.0):
○ Aplikacja realizująca pełny CRUD (Create, Read, Update, Delete).
○ Wykorzystanie minimum 3 kolekcji dokumentów.
○ Implementacja zapytań dynamicznych obsługiwanych przez auto-indeksy.
○ Implementacja min. 1-2 indeksów statycznych z polami wyliczanymi (C# lub JS) i zapytania z ich wykorzystaniem.
○ Obsługa stronicowania wyników (Paging).
● Ocena Dobra (4.0):
○ Wszystkie wymagania na ocenę 3.0 oraz:
○ Wykorzystanie funkcjonalności Full Text Search (wyszukiwanie pełnotekstowe).
○ Zastosowanie dokumentów powiązanych (mechanizmy Include() i/lub LoadDocument() w indeksie).
○ Implementacja i wykorzystanie indeksu typu Map-Reduce (agregacja).
○ Sortowanie wyników zapytania po wybranych polach.
● Ocena Bardzo Dobra (5.0):
○ Wszystkie wymagania na ocenę 4.0 oraz:
○ Zastosowanie Vector Search (wyszukiwanie wektorowe).
○ Modyfikacja dokumentów przy użyciu funkcjonalności PatchByQuery(.
○ Zademonstrowanie działania aplikacji w oparciu o klaster składający się z 3 węzłów (symulacja HA).
Literatura
1. Inside Ravendb 4.0, Oren Eini
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: