Tenzij Dataset
is cached
met behulp van betrouwbare opslag (standaard Spark cache
geeft u slechts zwakke garanties) database kan meerdere keren worden geopend, waarbij elke keer de huidige status van de database wordt weergegeven. Sinds
het zien van verschillende tellingen is een verwacht gedrag.
Bovendien, als de JDBC-bron wordt gebruikt in een gedistribueerde modus (met partitioneringskolom of predicates
), dan zal elke executeur-thread zijn eigen transactie gebruiken. Als gevolg hiervan is de status van de Dataset
is mogelijk niet volledig consistent.
Gebruik geen JDBC. U kunt bijvoorbeeld
COPY
gegevens naar een bestandssysteem en laad het van daaruit.- Gebruik de replicatie-oplossing van uw keuze om een replica te maken die speciaal is bedoeld voor analyses en stel de replicatie in en pauzeer terwijl u de gegevens analyseert.