From 02fcc671c29b5090484a29336a770a5a1ac26956 Mon Sep 17 00:00:00 2001 From: Jakub Pokrywka Date: Tue, 6 Apr 2021 16:33:06 +0200 Subject: [PATCH] 04 wyszukiwarki --- cw/04_wyszukiwarki.ipynb | 89 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 cw/04_wyszukiwarki.ipynb diff --git a/cw/04_wyszukiwarki.ipynb b/cw/04_wyszukiwarki.ipynb new file mode 100644 index 0000000..fff9485 --- /dev/null +++ b/cw/04_wyszukiwarki.ipynb @@ -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 Google’u) 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 +}