Ponad 4 mld rekordów wyborców i zmian adresu w USA — pipeline ETL dla firmy zajmującej się analizą tożsamości

Wysokowydajny pipeline ETL dla danych o wyborcach i zmianach adresu w USA

Schemat pipeline’u ETL dla danych wyborców

Klient to amerykańska firma zajmująca się analizą tożsamości, która agreguje duże ilości danych publicznych na potrzeby zastosowań biznesowych. Jej platforma przetwarzała już ogromne zbiory danych, jednak kilka wartościowych źródeł danych o wyborcach i zmianach adresu nie było częścią głównego pipeline’u.

Celem klienta było włączenie tych zbiorów danych do głównego pipeline’u.

Oczekiwania klienta:

  • Zintegrować dane o wyborcach i zmianach adresu z 5 zewnętrznych źródeł z istniejącym pipeline’em
  • Przetworzyć i ustandaryzować miliardy rekordów o niespójnych formatach
  • Wyeliminować zduplikowane i sprzeczne rekordy pochodzące z różnych źródeł
  • Zbudować niezawodny backend wyszukiwania zdolny do obsługi ogromnych wolumenów danych

Dlaczego ten projekt był wymagający

Ogromny wolumen danych

Projekt wymagał przetworzenia ponad 4 miliardów rekordów zebranych z wielu zewnętrznych baz danych. W tamtym czasie dostępna infrastruktura miała ścisłe ograniczenia dotyczące pamięci, przestrzeni dyskowej i mocy obliczeniowej, przez co operacje na dużą skalę były powolne, podatne na awarie i kosztowne.

Rozproszone źródła

Dane pochodziły z pięciu źródeł, z których każde miało własną strukturę, nazewnictwo pól, logikę aktualizacji i problemy z jakością danych. Te same osoby występowały w wielu zbiorach danych, często ze sprzecznymi lub częściowo pokrywającymi się atrybutami.

Niedojrzałe narzędzia

Projekt powstał w czasie, gdy narzędzia Big Data i frameworki do przetwarzania rozproszonego były jeszcze na wczesnym etapie rozwoju. Wiele procesów, które obecnie są zautomatyzowane, wymagało wtedy indywidualnych rozwiązań inżynieryjnych, ręcznej optymalizacji i starannej orkiestracji, aby działały stabilnie.

Ograniczenia infrastruktury

Sprzęt był kosztowny i miał ograniczone możliwości. Skalowanie poprzez zwykłe dodawanie kolejnych zasobów nie było możliwe, dlatego system należało zaprojektować tak, aby maksymalnie wykorzystywał ograniczoną przestrzeń dyskową, pamięć i moc obliczeniową bez utraty niezawodności.

Masz podobne problemy w swoim projekcie?

Skontaktuj się z nami, aby omówić, jak możemy pomóc Ci zintegrować duże publiczne zbiory danych ze stabilnym pipeline’em wyszukiwania i wzbogacania danych.

Co dostarczyliśmy

Przepływ ETL dla 5 źródeł danych

Rozwiązanie zaprojektowano jako wieloetapowy pipeline danych oddzielający pozyskiwanie, przetwarzanie i wyszukiwanie. Dane przepływały ze źródeł zewnętrznych przez kontrolowaną warstwę ETL, gdzie były standaryzowane i walidowane, a następnie indeksowane w scentralizowanym backendzie wyszukiwania.

Każdy etap został odizolowany, aby ograniczyć skutki awarii i umożliwić częściowe ponowne przetwarzanie danych w razie potrzeby.

Pozyskiwanie i standaryzacja danych z różnych źródeł

Dane były pozyskiwane z pięciu niezależnych źródeł danych o wyborcach i zmianach adresu, z których każde korzystało z innych formatów, schematów i logiki aktualizacji. Podczas procesu ingestion rekordy były parsowane.

Imiona i nazwiska, adresy oraz podstawowe atrybuty tożsamości zostały ustandaryzowane przed dalszym przetwarzaniem, aby zapewnić spójność pomiędzy źródłami.

Deduplikacja rekordów z 5 źródeł

Przed indeksowaniem system wykorzystywał entity resolution do wykrywania nakładających się rekordów reprezentujących tę samą osobę w różnych zbiorach danych.

Sprzeczne i redundantne wpisy były rozwiązywane, aby zapobiec sztucznemu zwiększaniu liczby danych oraz niespójnym wynikom wyszukiwania. Do warstwy wyszukiwania opartej na SOLR trafiały wyłącznie oczyszczone i zweryfikowane rekordy.

Budowa niezawodnego ETL przy ścisłych ograniczeniach

System powstał przy ścisłych ograniczeniach infrastruktury. Sprzęt był kosztowny, pamięć ograniczona, a narzędzia do rozproszonego przetwarzania danych wciąż się rozwijały.

Ponieważ skalowanie poziome nie było prostym rozwiązaniem, architektura opierała się na przetwarzaniu wsadowym, starannym zarządzaniu zasobami i przewidywalnych obciążeniach, stawiając stabilność i integralność danych ponad agresywną optymalizację wydajności.

Stos technologiczny projektu

WPF WCF .NET SQL Server AWS Hadoop SOLR

Rezultaty projektu

Wcześniej odizolowane zbiory danych o wyborcach i zmianach adresu zostały pomyślnie zintegrowane z istniejącym pipeline’em danych i mogły być wykorzystywane na dużą skalę. Klient otrzymał ustandaryzowaną, przeszukiwalną warstwę danych wspierającą wzbogacanie danych tożsamości w ramach swojej platformy.

Najważniejsze rezultaty:

  • Zintegrowano pięć zewnętrznych źródeł danych o wyborcach i zmianach adresu z głównym pipeline’em
  • Stworzono ujednolicony zbiór danych odpowiedni do wyszukiwania i wzbogacania danych tożsamości na dużą skalę
  • Wyeliminowano zduplikowane i sprzeczne rekordy z nakładających się źródeł
  • Dostarczono stabilny backend wyszukiwania oparty na SOLR dla kolejnych systemów
  • Umożliwiono długoterminowe ponowne wykorzystanie ustandaryzowanych danych bez konieczności ich ponownego przetwarzania
Ustandaryzowana i zdeduplikowana baza danych wyborców i zmian adresu w USA

Skontaktuj się z nami

support@nannostech.com
+48889712077