04 wyszukiwarki

This commit is contained in:
Jakub Pokrywka 2021-04-06 16:33:06 +02:00
parent bf8026c449
commit 02fcc671c2

89
cw/04_wyszukiwarki.ipynb Normal file
View File

@ -0,0 +1,89 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Silniki wyszukiwarek\n",
"\n",
"Obecnie najbardziej popularne są dwa silniki wyszukiwarek: Solr ( https://solr.apache.org/ ) i Elasticsearch ( https://www.elastic.co/ ). \n",
"\n",
"Na tych ćwiczeniach omówimy silnik Solr.\n",
"\n",
"Jeżeli chcą Państwo wejść w temat wyszukiwarek głębiej niż na zajęciach, polecam dobrą, darmową książkę: https://www.manning.com/books/relevant-search#toc . Opiera się on na Elastisearch, ale nie stanowi to większego problemu."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Zadanie na zajęcia\n",
"\n",
"Na zajęciach proszę zrobić tutorial https://solr.apache.org/guide/8_8/solr-tutorial.html\n",
"\n",
"Proszę szczególnie zwrócić uwagę na schema i na to, w jaki sposób tworzy się nowe pola z istniejących.\n",
"\n",
"\n",
"W razie problemów z limitami ilości otwartych plików na proces:\n",
"\n",
"https://www.akitogo.com/blog/raising-limits-on-ubuntu-1604-and-1804-for-solr-7\n",
"\n",
"\n",
"W razię wątpliwości proszę zadawać pytania na zajęciach."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Zadanie domowe (maksymalnie 160 punktów)\n",
"\n",
"Proszę stworzyć wyszukiwarkę dla wybranej kolekcji dokumentów (innej niż przykładowe w solr).\n",
"\n",
"**Warunki konieczne do zaliczenia zadania**:\n",
" - użycie gotowego silnika wuszukiwarki (np. Solr lub Elastisearch)\n",
" - zaindeksowanie conajmniej 40 tys. dokumentów\n",
" - zaimplementowanie frontendu w postaci aplikacji webowej. Użytkownik nie ma korzystać z panelu admina. Aplikacja webowa może być napisana w dowolnym języku/frameworku.\n",
" - dokumenty powinny stanowić sensowną, rzeczywistą kolekcję. Proszę nie losować dokumentów, powielać, itp.\n",
" \n",
"**Punktacja**:\n",
" - wersja podstawowa: 60 punktów\n",
" - interesujący (np. niedostępny w Googleu) zbiór dokumentów: +20 punktów\n",
" - zaawansowane przetwarzanie językowe tekstu: +20 punktów\n",
" - zaznaczanie słów kluczowych (highlighting): +10 punktów\n",
" - zaawansowane opcje sortowania: +10 punktów\n",
" - zaawansowane opcje filtrowania: +10 punktów\n",
" - zindeksowanie > 0,5 mln dokumentów: +20 punktów, > 5 mln - +40 punktów\n",
" - wizualizacja (wykres, mapa): +20 punktów\n",
" - użycie ciekawej funkcji niewymienionej wyżej: +20 punktów\n",
" - maksimum do zdobycia z tego zadania: 160 punktów\n",
" \n",
"**Zaliczenie**:\n",
" - termin zaliczenia to 20.04 (na zajęciach)\n",
" - proszę zaznaczyć w MS TEAMS, że Państwo zrobili zadanie w assigments\n",
" - zdawanie zadania będzie na zajęciach. Proszę przygotować prezentację do 5 minut"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}