Wyszukiwanie w ostatnio dodanych danych

0

Cześć!

Tworze aplikację, która w ogromnym uproszczeniu będzie się składać z 2 najważniejszych aplikacji:

  1. Wyszukiwarka
  2. Producer danych

Producer co jakiś czas produkuje dane.Wyszukiwarka powinna przeszukać je według podanych parametrów (które są pogrupowane w "set'y" których może być tysiące). Problem w tym że tylko najnowsze dane powinny zostać przeszukane. Aczkolwiek stare nie powinny zniknąć. Do głowy przychodzą mi rozwiązania:

  1. Oznaczenie nowych wpisów w bazie jakąś flagą a następnie wyszukiwanie, a po zakończeniu oznaczanie danych jako przeprocesowane - odpada, bo szukanie będzie trwać za długo (może być tysiące różnych kombinacji parametrów) + dochodzi problem że w trakcie szukania dojdą nowe dane

  2. Oznaczenie nowych wpisów w bazie jakąś flagą a następnie wyszukiwanie w wielu wątkach, a po zakończeniu oznaczanie danych jako przeprocesowane - tak jak wcześniej szukanie może trwać za długo + problem z nowymi danymi

  3. Wrzucenie nowych danych na kolejkę, szukanie w każdym pojedynczym wpisie - odpada bo będzie to trwało wieki

  4. Wrzucenie nowych na kolejkę, zebranie ich przez jednego recivera, i wyszukiwanie na grupie.Nowe dane tworzenie nowego reciviera jeśli poprzedni nie zakończył pracy - to jak na razie jest według mnie najlepsze rozwiązanie, aczkolwiek widzę problem w sensownej i odpornej implementacji.

Macie pomysł jak coś takiego ugryźć?

3

nie wiem o co ci chodzi, bo jak dla mnie szukanie po najnowszych wpisach to po prostu ograniczenie względem daty utworzenia wpisu i jakiegoś wewnętrznego przyjęcia, że nowe wpisy to np te mające max 24h.

1

Gdyby tak było nie było by problemu.
Nowy wpis to dane które pojawiły się w jednej "sesji" chodzenia producera. Z poziomu aplikacji nie wiem czy są to dane sprzed 20h czy 2 min.
Ale w sumie Twój post nasunął mi odpowiedz.Nadać każdej sesji producera jakieś uid, a następnie wrzucać to do kolejki. Aplikacja na podstawie uid tej sesji ogarnie sobie wszystkie dane i nie będzie problemu :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1