Zakres katalogu wymagał równoległego pozyskiwania i strategii przechowywania milionów ofert bez wykonywania osobnego odczytu lub zapisu dla każdej pozycji.
02 / Moje podejście
Moje podejście
Równoległe parsery łączyły zarządzanie kontami i proxy, ograniczanie częstotliwości oraz ponowienia podczas skanowania kategorii. Zorganizowałem normalizację i pracę z Elasticsearch wokół zapisów oraz odczytów wsadowych, utrzymując ten model wraz ze wzrostem danych. Wyniki służyły analizie zmian i trendów.
Przepływ systemu
Zbierz
Znormalizuj
Indeksuj wsadowo
Analizuj zmiany
Co to oznacza w praktyce
Architektura i decyzje
01
Historyczny zakres kategorii
Projekt skanował kategorie katalogu Amazon, celowo wyłączając książki. Historyczny zakres danych był rzędu milionów ofert. Taka skala łączyła pozyskiwanie, normalizację i przechowywanie w jeden problem: dane kategorii musiały utworzyć spójny zbiór do analizy wsadowej.
02
Pozyskiwanie przy ograniczeniach zewnętrznych
Parsery musiały uwzględniać blokady, wiele kont, proxy i nieudane żądania. Przetwarzanie równoległe, ograniczanie częstotliwości oraz ponowienia były częścią architektury pozyskiwania. Normalizacja zapewniała indeksowaniu i analizie spójną reprezentację mimo różnic w danych źródłowych.
03
Wsadowy zapis i odczyt
Elasticsearch obsługiwał zarówno zapis, jak i odczyt wsadowy. Grupowanie było ważne po obu stronach: zebrane rekordy indeksowano razem, a analiza pobierała ich partie, ograniczając udział pojedynczych żądań w obciążeniu. Ta decyzja kształtowała przepływ danych równie mocno jak wybór silnika wyszukiwania.
04
Analiza trendów i zamknięty etap produktu
Celem zbierania było wykrywanie zmian i trendów w danych produktowych. Usługa działała około pięciu miesięcy, zanim priorytety przesunęły się na inne prace. Zarchiwizowany projekt obejmuje cały łańcuch inżynierski: równoległe pozyskiwanie, normalizację, wsadowy dostęp do danych i analizę dużego historycznego zbioru.
03 / Rezultat
Rezultat
Usługa działała około pięciu miesięcy w historycznej skali rzędu milionów ofert. Wspierała analizę trendów w kategoriach, po czym zespół zmienił priorytety, a projekt trafił do archiwum.