#programowanie #programista15k W wielu ofertach pracy na programistę wymagany jest ElasticSearch. Jaki jest jego najczęstszy use case? Po synchrinizacji danych, do ich wyświetlenia uzywa się elastrichsearch zamiast pytać bazy danych czy coś innego?
@r3solver: Ja najczęściej widziałem implementacje w których tylko dane do wyszukiwania tekstowego były w ES (+ jakieś ID). User szuka w wyszukiwarce interesującego go produktu (wyszukiwarka oczywiście stoi na ES), po kliknięciu w ten produkt dane już normalnie ładują się z bazy. Ewentualnie ELK stack gdzie w ES były trzymane logi.
@r3solver: Do budowy wyszukiwarek, gdzie użytkownik może wpisać wiele kryteriów. Przy czym ES to strasznie wielka krowa napisana w Javie, która wciągnie każdą ilość RAMu i która potrzebuje niezliczonej liczby komputerów aby ten search działał względnie szybko, a i tak będzie okazjonalnie lagować i nic nie poradzisz. Lepszy jest sonic, meilisearch lub toshi.
@Krolik: czy są one w stanie zastąpić elasticsearcha? wspierają rozproszone przetwarzanie danych? agregacje np. do facet? czy można konfigurować analizatory tak jak w elasticsearchu? tzn. przetwarzanie morfologiczne, word delimiter, synonimy i inne takie?
@ly000: mają większość funkcji, ale oczywiście nie wszystkie, bo nie ma dwóch identycznych produktów. Mają też pewne funkcje, których nie ma ES - np. near realtime search czy search-as-you-type. Co do rozproszonego przetwarzania danych - to po co Ci ono, jeśli na jednym serwerze za $5 robią to do czego potrzebujesz klaster ES?
@r3solver: po prostu narzędzie do klepania crudów, coś jak młotek dla robotnika fizola
W zwykłej bazie SQL trzymasz po dane jak w magazynie, a w elasticu wysyłasz tylko część danych które ci są potrzebne do bardzo szybkiego wyszukiwania i filtrowania, ponieważ przeważnie wyszukiwanie przez skomplikowane zapytania w SQL, mnostwo joinów itd jest wolniejsze. Elastic ma specjalne struktury dzięki którym zapisuje dane w specjalny sposób na dysku co pozwala na bardzo
@r3solver: Elastic świetnie się sprawdzi jeśli trzeba przetrzymywać dokumenty z dużą ilością tekstu i chcesz je przeszukiwać po frazach/ słowach kluczowych. Elasticsearch to silnik wyszukiwania pełnotekstowego i głównie do tego służy. U mnie we firmie to główna baza danych. Niestety trzymane są tam też rzeczy, które powinny być raczej w SQL'u ale z jakiegoś powodu nie są (relacyjne db też mamy).
Pracownicy Tymbarka z------------y na produkcji za minimalną, bo ostatnio sprzedaż spadła i nie było na podwyżki i premie świąteczne gdy widzą, że ich pracodawca rzuca milionami na zbiórkę #latwogang #antykapitalizm
Wykop tak linczuje "prezes" fundacji za to że się "zrobiła" a widać że babka serio się angażuje w pomoc tym dzieciakom. Nawet jeżeli zarabia 15k na tym to kto byłby w stanie psychicznie pracować w takim miejscu? #latwogang
Jaki jest jego najczęstszy use case? Po synchrinizacji danych, do ich wyświetlenia uzywa się elastrichsearch zamiast pytać bazy danych czy coś innego?
Jak dobrze skonfigurujesz i dobierzesz zasoby to nie laguje.
@r3solver Są trzy główne use case szukanie, logi i szeroko pojęty monitoring i SIEM.
@Krolik: czy są one w stanie zastąpić elasticsearcha? wspierają rozproszone przetwarzanie danych? agregacje np. do facet? czy można konfigurować analizatory tak jak w elasticsearchu? tzn. przetwarzanie morfologiczne, word delimiter, synonimy i inne takie?
@Krolik: mówisz o suggesterze? każdy lepszy sklep internetowy ma taki suggester oparty właśnie najczęściej na elastcisearchu.
W zwykłej bazie SQL trzymasz po dane jak w magazynie, a w elasticu wysyłasz tylko część danych które ci są potrzebne do bardzo szybkiego wyszukiwania i filtrowania, ponieważ przeważnie wyszukiwanie przez skomplikowane zapytania w SQL, mnostwo joinów itd jest wolniejsze. Elastic ma specjalne struktury dzięki którym zapisuje dane w specjalny sposób na dysku co pozwala na bardzo
U mnie we firmie to główna baza danych. Niestety trzymane są tam też rzeczy, które powinny być raczej w SQL'u ale z jakiegoś powodu nie są (relacyjne db też mamy).