Google PDE: Data-ingestie, Integratie en Migratie — Studiegids
Onderdeel van de Google Professional Data Engineer — Studiegids. Oefen met geverifieerde antwoorden in het Google-examencentrum, of doe getimede oefentests op ExamRoll.io.
Overzicht
Data-ingestie, -integratie en -migratie in Google Cloud omvatten herhaalbare patronen, beheerde services en operationele controles die diverse bronsystemen omzetten in betrouwbare, bevraagbare datasets. Effectieve ontwerpen scheiden transport van transformatie, ontkoppelen producenten en consumenten, en geven de voorkeur aan idempotente, gecheckpointte pipelines met duidelijke lineage en verificatie. Dit gedeelte behandelt ingestiepatronen, Google Cloud-services voor dataverplaatsing en CDC, schema- en datakwaliteitscontroles, connectiviteit en hybride integratie, en cutover-strategieën, waarbij ontwerpafwegingen en faalscenario’s doorlopend worden benadrukt.
Ingestiepatronen en Workloads
- Batch-ingestie: Periodieke pulls of het plaatsen van bestanden op gedefinieerde intervallen. Goed voor voorspelbare kosten en backfills. Faalscenario: grote, onregelmatige batches veroorzaken resourcepieken, lange inhaalperiodes en gemiste SLA’s. Mitigatie: geef batchvensters de juiste grootte, shard op tijd of sleutel, en gebruik parallellisatie.
- Bulklading: Eenmalige of grootschalige ladingen (bijv. initiële historische backfill). Geef de voorkeur aan kolomgeoriënteerde of zelfbeschrijvende formaten (Parquet, Avro) en laad direct naar analytische opslag (BigQuery) of via staging in Cloud Storage. Afweging: query’s op externe tabellen vermijden laadstappen, maar verplaatsen de kosten naar het scannen tijdens de query.
- Incrementele lading: Periodieke delta-ladingen via timestamps of high-water marks. Vereist robuuste ontdubbeling en idempotente upserts. Faalscenario: klokverschil of te laat arriverende records. Gebruik server-side commit-timestamps en watermarking.
- Change data capture (CDC): Continue replicatie van inserts, updates en deletes uit operationele databases. Ideaal voor near-real-time analytics en migraties met lage downtime. Afwegingen:
- Volgorde: De meeste CDC-tools behouden de volgorde binnen transacties en doorgaans binnen een shard, maar garanderen geen globale cross-shard volgorde. Gebruik commit-timestamps van transacties en primaire sleutels om de sequentie te reconstrueren.
- Leveringssemantiek: At-least-once is gebruikelijk; bouw idempotente sinks of ontdubbel met unieke change-ID’s.
- Snapshot + CDC: Begin met een consistente snapshot en pas vervolgens wijzigingen toe vanaf een precieze logsequentie om pariteit te bereiken zonder downtime.
Relationele, SaaS-, on-premise en bestandsbronnen:
- Relationele bronnen: Gebruik native CDC of timestamp-kolommen. Voor bulk, exporteer naar Avro/Parquet en stage in Cloud Storage.
- SaaS-bronnen: Geef de voorkeur aan vendor-API’s met incrementele tokens; integreer via beheerde connectors (bijv. in Data Fusion). Beperk de snelheid voor rate limits en ga om met schema-drift.
- On-premise bronnen: Kies uit agent-gebaseerde overdracht, VPN/Interconnect + Private Google Access, of offline seeding met Transfer Appliance.
- Bestandsingestie: Bundel veel kleine bestanden (bijv. met tar) om RPC-overhead te verminderen. Gebruik
undefined
of geparallelliseerde clients; voeg samen of transformeer naar grotere, kolomgeoriënteerde bestanden voor analytics.
Google Cloud Services voor Ingestie, Integratie en Migratie
- Datastream (serverless CDC): Legt wijzigingen vast van MySQL, PostgreSQL en Oracle naar Cloud Storage, BigQuery (via templates) of Pub/Sub. Het behoudt transactiegrenzen en commit-metadata; globale volgorde is niet gegarandeerd. Pas downstream sortering toe op sleutel en commit-timestamp. Verwacht at-least-once levering; ontwerp idempotente consumers (bijv. BigQuery MERGE met change-ID’s).
- Database Migration Service (DMS): Voor databasemigraties met minimale downtime met behulp van native replicatie. DMS maakt een consistente snapshot en repliceert vervolgens continu wijzigingen met GTID/LSN/SCN. Het is specifiek gebouwd voor lift-and-shift, niet voor willekeurige transformaties. Voor analytics, vul DMS indien nodig aan met Dataflow of Data Fusion.
- Cloud Data Fusion: Een beheerde integratieservice met connectors naar relationele, SaaS-, bestands- en berichtensystemen. Bouw pipelines met transformatiestappen (joins, aggregaties, formaatconversies, aangepaste Wrangler-recepten) en leg lineage vast over bronnen en velden. Operationeel plant het taken, voert het retries uit en zendt het metrics uit. Gebruik Data Fusion voor no/low-code ELT/ETL en om connectorbeheer te centraliseren.
- Storage Transfer Service (STS): Beheerde, geplande overdrachten van AWS S3, Azure Blob, on-premise (met agents), SFTP en URL-lijsten naar Cloud Storage. Ondersteunt manifesten, incrementele synchronisatie, bandbreedtebeheer en integriteit via checksums. Faalscenario’s omvatten inefficiëntie bij kleine bestanden en API-throttling; mitigeer met batching en aanpasbare concurrency.
- Transfer Appliance: Offline, versleuteld apparaat voor initiële seeding op multi-terabyte tot petabyte-schaal wanneer netwerkbandbreedte beperkt is of data te gevoelig is voor langdurige overdracht. Chain-of-custody en versleuteling zijn ingebouwd. Volg na de seeding op met STS of CDC voor de delta’s.
- Cloud Pub/Sub + Dataflow: Pub/Sub ontkoppelt producenten en consumenten voor streaming- of micro-batchpatronen. Dataflow biedt automatisch geschaalde, stateful stream/batch-verwerking met checkpointing en watermarking. Gebruik de BigQuery Storage Write API voor streaming met lage latentie en exactly-once-garanties per standaardstream; vertrouw anders op de ontdubbelingssemantiek van insertId.
Voor Hadoop-naar-Dataproc-migraties, minimaliseer Persistent Disk door data op te slaan in Cloud Storage met de GCS-connector en gebruik kortstondige (ephemeral) of automatisch schalende clusters. Dit vermijdt hoge kosten voor block storage terwijl de HDFS-compatibele semantiek voor verwerking behouden blijft.
Schema, Validatie en Datakwaliteit aan de Grens
- Schema-mapping en typeconversie: Standaardiseer vroegtijdig naar sterk getypeerde schema’s. Avro of Parquet behouden het schema en evolueren op een zuivere manier. Geef in BigQuery de voorkeur aan gepartitioneerde en geclusterde tabellen om scankosten te verlagen. Voorbeeld: maak een gepartitioneerde tabel voor dagelijkse analyse
undefined
- Verwerking van onjuist geformatteerde records: Stuur afgekeurde records naar een dead-letter queue (Pub/Sub) of een quarantainebucket in Cloud Storage. Gebruik side outputs in Dataflow of error collectors in Data Fusion. Log parseerfouten met voorbeelden van payloads en schemaversies voor triage.
- Validatie: Voer grenscontroles uit vóór persistentie:
- Structureel: schemaconformiteit, verplichte velden, datatypes, enum-domeinen.
- Referentieel: bestaan van foreign keys via gecachte dimensie-lookups.
- Redelijkheid: bereiken voor timestamps, geofences, niet-negatieve bedragen.
- Uniciteit: botsingen van primary keys of samengestelde sleutels.
- Idempotent laden: Gebruik deterministische sleutels en upsert-operaties. Implementeer in BigQuery MERGE met een natuurlijke of surrogaat-wijzigingssleutel. Voorbeeld:
undefined
- Watermarking en vertraging: Configureer in streaming pipelines event-time watermarks en toegestane vertraging (allowed lateness) om een balans te vinden tussen volledigheid en latency. Te late data wordt naar corrigerende paden geleid of activeert backfills.
- Reconciliatie: Volg het aantal rijen en checksums per partitie/venster van bron tot bestemming (sink). Leg CDC-logposities (LSN/SCN) en commit-timestamps vast; sla deze op in een controletabel om continuïteit aan te tonen en hiaten te identificeren.
Connectiviteit, Betrouwbaarheid en Operations
Netwerkconnectiviteit en private toegang:
- Hybride: Gebruik Cloud VPN of Dedicated/Partner Interconnect voor private connectiviteit. Activeer Private Google Access of Private Service Connect voor private toegang tot Google API’s zoals Cloud Storage.
- Beveiliging: Gebruik service accounts voor workload-identiteit, least-privilege IAM, VPC Service Controls ter preventie van data-exfiltratie, en CMEK waar vereist.
- Doorvoer: Schaal parallellisme aan de clientzijde, maar uiteindelijk bepaalt de bandbreedte de doorvoer. Voor massale overdrachten, geef de voorkeur aan Transfer Appliance voor de initiële bulk, gevolgd door STS of CDC voor incrementele updates.
Checkpoints en tegendruk (backpressure): Dataflow beheert checkpoints en autoscaling; ontwerp sinks die pieken kunnen opvangen (bufferen naar Cloud Storage, batch-writes naar BigQuery). Voor Pub/Sub, stem flow control en ack-deadlines af om stormen van opnieuw bezorgde berichten te voorkomen.
Volgorde en consistentie met CDC:
- Datastream behoudt de volgorde binnen transacties en zendt commit-metadata uit; consumers reconstrueren de volgorde per sleutel met behulp van commit-timestamps. Verwacht at-least-once; bouw idempotentie in.
- DMS waarborgt databaseconsistentie tijdens de overgang van snapshot naar replicatie met behulp van native logs. Gebruik read replica’s of dual-write-strategieën voor een gefaseerde overgang.
Bestandsstrategie voor analytics: Voor toegang door grote, meerdere engines, sla canonieke data op in Cloud Storage en, waar kosteneffectief, stel permanente externe tabellen beschikbaar voor ad-hoc-query’s. Voor productie-analytics, laad data in gepartitioneerde BigQuery-tabellen om de scankosten per query te minimaliseren.
Optimalisatie voor kleine bestanden: Bundel kleine bestanden (bijv. ~1.000 per tar) vóór de overdracht en pak ze vervolgens uit in de cloud. Gebruik parallelle gsutil en lifecycle-regels om staging-artefacten te tier’en en te laten verlopen.
Operationele valkuilen en oplossingen:
- Schema-drift vanuit SaaS: activeer schema-evolutie in Data Fusion en dwing compatibiliteit af. Alarmeer bij ‘breaking changes’.
- Tijdzones en encoding: normaliseer naar UTC en UTF-8 bij binnenkomst (ingress).
- Hiaten in CDC: monitor de retentie van bronlogs; alarmeer wanneer de replica-lag de retentielimieten nadert.
- Quota’s: BigQuery streaming insert, API rate limits; verwerk in batches wanneer limieten worden benaderd.
Cutover, Backfill en Verificatie
- Cutover-planning:
- Big bang: korte freeze, enkele switch. Laagste operationele complexiteit; hoogste risico als een rollback nodig is.
- Gefaseerd of blue/green: dual-run met gespiegelde writes, progressieve traffic-shifting en shadow reads. Hogere kosten; veiligere rollback.
- Backfill:
- Voer een initiële bulk load uit (Transfer Appliance of STS) met Avro/Parquet om het schema te behouden. Partitioneer en cluster tijdens het laden om herbewerking te voorkomen.
- Start CDC op een bekende logpositie gelijktijdig met de snapshot om delta’s tijdens de bulkoverdracht vast te leggen. Breng de data in overeenstemming (reconcile) bij een gezamenlijke watermark voordat de omgeving voor productie wordt opengesteld.
- Rollback:
- Houd de legacy-omgeving read-only tijdens de verificatie. Voor dual-write-scenario’s, plaats writes achter een feature flag om snel te kunnen terugdraaien. Bewaar een consistent checkpoint om CDC-wijzigingen opnieuw af te spelen of terug te draaien indien nodig.
- Migratieverificatie:
- Structureel: aantal rijen en checksums per partitie komen overeen; schema en constraints zijn equivalent.
- Temporeel: geen gaten vanaf de snapshot-grens tot de cutover; CDC-posities zijn continu.
- Business-pariteit: vergelijk aggregaties en KPI’s over bepaalde periodes (windows); voer acceptatiequery’s uit.
- Performance: valideer de doorvoersnelheid van ingestion, query-latency en kosten ten opzichte van de budgetten.
Praktijkscenario
Northstar Retail moet een wereldwijde mix van on-prem Oracle- en MySQL-transactiesystemen, SaaS CRM-events en dagelijkse CSV-drops consolideren in Google Cloud om near-real-time analytics en machine learning mogelijk te maken. Ze moeten ook een legacy Hadoop-cluster migreren zonder hoge kosten voor block storage en een cutover met zero-to-low downtime realiseren.
- Breng veilige hybride connectiviteit tot stand
- Gebruik Partner Interconnect voor de primaire bandbreedte en Cloud VPN als fallback. Schakel Private Google Access in zodat on-prem workloads privé toegang hebben tot Cloud Storage en Pub/Sub. Rationale: Private paden minimaliseren de blootstelling van egress-verkeer en de latency, en Private Google Access vermijdt de noodzaak voor publieke IP-adressen terwijl het voldoet aan het beveiligingsbeleid.
- Seed historische data efficiënt
- Voor 800 TB aan historische HDFS-data, kopieer deze naar Cloud Storage met Transfer Appliance (initiële bulk). Voer na het seeden dagelijks Storage Transfer Service uit vanaf de on-prem NFS-export om wijzigingen op te pikken tot aan de cutover. Rationale: Transfer Appliance voorkomt langdurige netwerkverzadiging; STS biedt een geplande, incrementele synchronisatie met checksums. Opslag in Cloud Storage met de GCS connector maakt verwerking met Dataproc mogelijk zonder 50 TB Persistent Disk per node.
- Migreer operationele databases met CDC
- Gebruik DMS om MySQL en PostgreSQL te migreren met minimale downtime. Gebruik voor Oracle-naar-analytics CDC Datastream naar een Cloud Storage landing zone, en vervolgens een door Google geleverd Dataflow-template om de data in BigQuery te laden. Rationale: DMS maakt gebruik van native replicatie voor een betrouwbare snapshot + continue synchronisatie; Datastream biedt serverless CDC met commit-metadata, terwijl het Dataflow-template geordende, idempotente writes naar BigQuery garandeert.
- Ingesteer SaaS- en bestandsgebaseerde feeds
- Bouw Cloud Data Fusion-pipelines met SaaS-connectoren voor CRM-events met incrementele tokens, en een bestandspipeline om dagelijkse CSV’s van een SFTP-server van een leverancier via STS te ingesteren. Normaliseer naar Avro in een gecureerde Cloud Storage-bucket en laad vervolgens gepartitioneerde BigQuery-tabellen. Rationale: Data Fusion centraliseert connectoren, transformatie en lineage. Standaardisatie op Avro behoudt het schema en vergemakkelijkt de evolutie; gepartitioneerde BigQuery-tabellen verlagen de querykosten.
- Stream real-time events
- Publiceer web- en winkel-events naar Pub/Sub. Verwerk met Dataflow voor parsing, validatie, verrijking en watermarking; schrijf naar BigQuery via de Storage Write API en archiveer de ruwe Avro-data naar Cloud Storage. Rationale: Pub/Sub ontkoppelt producers en consumers; Dataflow biedt autoscaling, stateful processing, checkpoints en verwerking van late data; dual-write garandeert zowel low-latency analytics als duurzame retentie van ruwe data.
- Dwing datakwaliteit- en schemacontroles af bij de invoer
- Implementeer een schema registry en validatie in Dataflow/Data Fusion. Stuur onjuist geformatteerde records naar een GCS-quarantainebucket en een Pub/Sub dead-letter topic. Pas domeincontroles toe (bijv. valutacodes, UTC-timestamps) en dedupliceer met behulp van samengestelde sleutels (composite keys). Rationale: Vroege afwijzing en quarantaine voorkomen dat slechte data zich verspreidt; idempotentie en deduplicatie beschermen tegen de effecten van at-least-once delivery van CDC- en streamingbronnen.
- Optimaliseer opslag en toegang voor analytics
- Laad gecureerde datasets in gepartitioneerde en geclusterde BigQuery-tabellen. Stel ruwe archieven beschikbaar als permanente externe tabellen voor incidentele verkenning. Voor OLTP-workloads die transactioneel blijven, behoud Cloud SQL met read replica’s. Rationale: Partitionering en clustering minimaliseren de scankosten; externe tabellen voorkomen onnodige laadacties voor incidentele toegang; Cloud SQL behoudt ACID-semantiek voor transactionele apps.
- Plan de cutover, backfill en rollback
- Voer een snapshot + CDC uit voor elke RDBMS; bereik een reconciliatiepunt waar het aantal rijen en de checksums overeenkomen. Draai blue/green met dual-writes gedurende 48 uur, waarbij reads geleidelijk naar BigQuery worden verschoven. Houd een feature flag aan om writes terug te draaien als er discrepanties worden gedetecteerd. Rationale: Blue/green vermindert het risico; verificatie bij een bekende watermark garandeert volledigheid; flags maken een snelle rollback mogelijk.
- Verificatie en observability
- Bouw controletabellen die de bron-LSN/SCN, commit-timestamps, het aantal rijen en checksums per partitie vastleggen. Monitor de Datastream-lag, de DMS-replicatiestatus, Dataflow-watermarks, de Pub/Sub-backlog, de STS-jobstatus en de BigQuery streaming insert-metrics. Rationale: End-to-end lineage en kwantitatieve controles bieden auditeerbaar bewijs van correctheid en tijdige alarmering bij gaten of vertraging (lag).
Door de landing-, curation- en serving-lagen te scheiden; door Cloud Storage te gebruiken als duurzame, goedkope staging en archivering; door gebruik te maken van DMS/Datastream voor CDC met idempotente consumers; en door schema en kwaliteit bij de invoer (ingress) af te dwingen, bereikt Northstar Retail een veilige, schaalbare ingestion en een verifieerbare migratie met een laag risico en voorspelbare kosten.
← Spark · Alle domeinen · Workflow-orkestratie en Pipeline-automatisering →
Oefen deze vragen → · Getimede oefening op ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Slaag voor je examen →