| Termin | Definicja |
|---|---|
| higiena bazy kontaktów | Higiena bazy kontaktów to zbiór praktyk regularnego czyszczenia i weryfikacji jakości listy odbiorców. Zakres higieny bazy kontaktówHigiena bazy kontaktów oznacza utrzymywanie listy adresów e-mail, numerów telefonów i innych identyfikatorów w stanie umożliwiającym poprawne wykorzystanie ich przez aplikację. W praktyce obejmuje wykrywanie pustych pól, błędnych formatów, powtórzonych rekordów, nieaktualnych danych oraz wpisów, których źródło lub znaczenie nie jest już znane. Baza może być przechowywana w arkuszu kalkulacyjnym, pliku CSV, systemie CRM, programie pocztowym albo lokalnej aplikacji korzystającej z SQLite, PostgreSQL lub innego silnika. Niezależnie od miejsca przechowywania podstawą jest jednoznaczne określenie, czym jest pojedynczy rekord i które pola są wymagane. Warto rozdzielić dane kontaktowe od informacji opisujących historię komunikacji. Adres e-mail, numer telefonu i nazwa firmy mogą stanowić dane identyfikacyjne kontaktu, natomiast data ostatniej wiadomości, status dostarczenia czy wynik rozmowy są atrybutami zmiennymi w czasie. Takie rozdzielenie ogranicza ryzyko przypadkowego nadpisania danych podczas importu. Przy projektowaniu tabeli należy ustalić typy pól, kodowanie znaków, format dat oraz sposób oznaczania wartości nieznanych. W plikach CSV szczególne znaczenie mają separator kolumn, cudzysłowy otaczające wartości zawierające przecinki oraz kodowanie UTF-8, ponieważ błędny import może rozbić jeden rekord na kilka kolumn lub uszkodzić polskie znaki. Weryfikacja formatów i spójności rekordówPierwszym etapem czyszczenia jest walidacja składni. Dla adresu e-mail można sprawdzić obecność pojedynczego znaku „@”, części lokalnej oraz domeny, ale sama zgodność z prostym wyrażeniem regularnym nie potwierdza istnienia skrzynki. Domena może mieć poprawny zapis, a mimo to nie posiadać rekordu DNS typu MX lub nie przyjmować poczty. Z kolei obecność rekordu MX nie gwarantuje, że konkretny adres istnieje. Dlatego walidację syntaktyczną należy traktować jako filtr oczywistych błędów, a nie jako dowód dostarczalności. Dane trzeba również normalizować przed porównywaniem. Usunięcie przypadkowych spacji z początku i końca pola, ujednolicenie zapisu domeny do małych liter oraz rozpoznanie pustych wartości zapisanych jako „brak”, „n/a” lub pojedynczy myślnik pomaga uniknąć fałszywych różnic. Nie należy jednak automatycznie zmieniać całej części lokalnej adresu e-mail, ponieważ jej interpretacja zależy od systemu pocztowego. Podobnie numer telefonu powinien być przechowywany według ustalonego formatu, na przykład z kodem kraju, ale transformacja musi uwzględniać numery wewnętrzne i inne lokalne reguły. Każda masowa zmiana powinna być wykonywana na kopii lub po utworzeniu punktu przywracania. Duplikaty, statusy dostarczenia i historia zmianDuplikat nie zawsze oznacza identyczny wiersz. Ten sam kontakt może wystąpić pod różnymi nazwami, z inną wielkością liter w domenie albo z numerem zapisanym raz ze spacjami, a raz bez nich. Do wykrywania powtórzeń stosuje się klucze porównawcze utworzone po normalizacji, na przykład oczyszczony adres e-mail lub znormalizowany numer telefonu. Jeżeli jeden kontakt ma kilka adresów, nie wolno łączyć rekordów wyłącznie na podstawie podobnego imienia i nazwiska, ponieważ może to doprowadzić do połączenia różnych osób lub firm. Scalanie powinno zachować wartości niepuste, źródło każdego pola i identyfikator rekordu nadrzędnego. Przydatne jest prowadzenie jawnego statusu kontaktu, takiego jak aktywny, niezweryfikowany, tymczasowo niedostępny lub trwale odrzucony. Status powinien wynikać z konkretnego zdarzenia, na przykład odpowiedzi serwera SMTP, ręcznej weryfikacji albo kolejnego potwierdzonego kontaktu. Kody SMTP z grupy 4xx zwykle wskazują błąd tymczasowy, natomiast kody z grupy 5xx oznaczają błąd trwały, choć dokładna interpretacja zależy od odpowiedzi serwera. Program nie powinien usuwać rekordu po pojedynczym błędzie chwilowym. Bezpieczniejszy model zapisuje datę ostatniej próby, kod odpowiedzi, liczbę kolejnych niepowodzeń i źródło informacji. Dziennik zmian ułatwia ustalenie, kto lub jaki import zmodyfikował rekord. Bezpieczne utrzymanie bazy na komputerzeRegularne porządki warto wykonywać jako powtarzalny proces: eksport lub kopia robocza, walidacja struktury, normalizacja, wykrycie duplikatów, przegląd statusów, zapis raportu oraz dopiero potem zatwierdzenie zmian. Przed importem należy sprawdzić liczbę kolumn, nagłówki, kodowanie i typowe wartości. W przypadku bazy SQL pomocne są ograniczenia UNIQUE dla pól, które rzeczywiście powinny być unikalne, oraz ograniczenia NOT NULL dla wartości wymaganych. Reguły te działają na poziomie silnika bazy i chronią przed częścią błędów niezależnie od programu używanego do wprowadzania danych. Na komputerze użytkownika problemy z higieną bazy mogą wynikać także z uszkodzonego pliku, błędnej synchronizacji, nieaktualnego programu lub importu wykonanego z niewłaściwym separatorem. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC oraz podzespołów, a w ramach diagnostyki można sprawdzić stan nośnika, poprawność działania systemu plików, dostępność kopii zapasowej i zachowanie aplikacji używanej do obsługi kontaktów. Przy pracy z lokalnym plikiem bazy nie należy otwierać go jednocześnie w kilku programach, jeśli aplikacja nie obsługuje bezpiecznej współbieżności. Po zakończeniu czyszczenia trzeba wykonać kontrolny import lub zapytanie testowe i potwierdzić, że liczba rekordów, pola oraz relacje między tabelami pozostały zgodne z założeniami. |