Costruirò una pipeline di dati ETL che pulisce e arricchisce lungo il percorso
Data engineer Python: web scraping, pipeline ETL e arricchimento dei dati
Livello 2
Ha soddisfatto criteri di prestazioni elevate e ha una comprovata esperienza nel soddisfare le aspettative dei clienti.
Informazioni su questo servizio
I dati arrivano da sei fonti diverse e nessuna di esse concorda. Un'API REST, due fogli di calcolo gestiti manualmente da qualcuno, un output di uno scraper e un export da CRM con nomi di colonne diversi tra loro. Qualcuno passa una mattina a settimana a metterli insieme.
Ciò che fa la pipeline
- Estrae dati da siti web, API REST, database e file
- Li pulisce, elimina duplicati e li riformatta secondo uno schema che definisci
- Arricchisce i record con altre fonti: dati aziendali, contatti, geodata
- Li carica in BigQuery, PostgreSQL, MySQL, Sheets o nel tuo CRM
- Funziona secondo un programma, orchestrato in Airflow o n8n
Progettato per non fallire silenziosamente
- Riprova e limita il rate on ogni fonte
- Validazione all’interno della pipeline, così le righe sbagliate vengono catturate prima di arrivare
- Allerta quando una run fallisce o un campo inizia a arrivare vuoto
Ho costruito questa pipeline dietro oltre 1 milione di profili di avvocati negli Stati Uniti, funzionando senza supervisione.
Ti consegno la pipeline funzionante, il codice sorgente e la documentazione di setup scritta per chi la erediterà. Dimmi le tue fonti e la destinazione, e ti farò un preventivo e una stima prima che tu ordini.
Il mio portfolio
FAQ
Traduzione automatica.
Quali fonti puoi collegare?
Siti web e scraper, API REST e GraphQL, PostgreSQL, MySQL, MongoDB, BigQuery, file CSV e Excel, Google Sheets e la maggior parte dei CRM tramite API. Se una fonte ha un'API o una pagina, di solito può essere una fonte. Inviami la lista e ti confermerò prima di fare un preventivo.
Dove può caricare i dati?
BigQuery, PostgreSQL, MySQL, MongoDB, Google Sheets, S3 o file flat. Se la destinazione è un CRM o un'app invece di un magazzino, si tratta di un'integrazione e funziona allo stesso modo. Dimmi cosa legge i dati dopo e scriverò in ciò che si aspetta.
Come viene pianificato e dove viene eseguito?
Airflow quando il workflow ha dipendenze reali tra i passaggi, n8n quando è più semplice e vuoi vederlo, e un semplice cron job quando nessuno dei due vale l'overhead. Si esegue sul tuo server o sul tuo account cloud, quindi non dipende da me dopo la consegna.
Puoi integrare due strumenti che non comunicano tra loro?
Sì, ed è una versione comune di questo lavoro. Preleva da un'API, trasforma in ciò che l'altro si aspetta, invia, gestisce errori e limiti di velocità, poi pianifica. HubSpot, Airtable, Salesforce, Sheets e la maggior parte delle API REST. Zapier o n8n dove si adattano, Python personalizzato dove non ci sono.
Con cosa puoi arricchire i record?
Dimensione dell'azienda, settore, posizione, sito web, tecnologia usata, email aziendali e numeri di telefono, nomi dei decisori e geocoding. Ciò che è disponibile dipende dalla fonte, quindi ti dirò quali campi saranno realisticamente compilati prima di ordinare piuttosto che dopo.
Ottengo il codice?
Sì, tutto, documentato e tuo da modificare. La consegna include il repository, un readme con installazione e configurazione, la definizione del schedule e le impostazioni di connessione con le tue credenziali invece delle mie.
Cosa succede quando una fonte cambia e il pipeline si interrompe?
Ti avvisa, ed è il punto. La validazione avviene all'interno del pipeline piuttosto che dopo, quindi una fonte che inizia a restituire campi vuoti fallisce l'esecuzione invece di caricare silenziosamente null nel tuo magazzino. La versione premium include il monitoraggio e la configurazione degli alert.
Puoi monitorarlo e mantenerlo dopo la consegna?
La versione premium include monitoraggio e alerting al momento della consegna. La manutenzione continua, dove controllo gli alert e riparo i guasti, è un accordo mensile separato. La maggior parte dei clienti prende il codice e lo esegue, motivo per cui la documentazione è scritta per uno sconosciuto piuttosto che per te.
Quanti dati può gestire?
Il più grande lavoro singolo ha processato oltre 100 milioni di file JSON riducendoli in CSV pronti per l'analisi. Il volume è di solito una questione di design piuttosto che un limite: batching, caricamenti incrementali e dove avviene la trasformazione. Dimmi il numero di righe e la frequenza e ti dirò la forma.
Sembra costoso. Esiste una versione più piccola?
Sì. Se hai bisogno di una fonte prelevata in una destinazione su un programma, Basic basta e avanza. Se vuoi i dati una sola volta invece di ripeterli, il mio servizio di scraping costa un decimo e è la risposta giusta. Te lo dirò piuttosto che cercare di venderti di più.
