Medmindre Dataset er cached ved hjælp af pålidelig lagring (standard Spark cache vil kun give dig svage garantier) databasen kan tilgås flere gange, hver gang viser den aktuelle status for databasen. Siden
at se forskellige tæller er en forventet adfærd.
Desuden, hvis JDBC-kilden bruges i en distribueret tilstand (med partitioneringskolonne eller predicates ), så vil hver eksekveretråd bruge sin egen transaktion. Som et resultat af tilstanden for Dataset muligvis ikke helt konsistent.
Brug ikke JDBC. Du kan f.eks.
COPYdata til et filsystem og indlæs det derfra.- Brug en replikeringsløsning efter eget valg til at oprette en replika dedikeret til analyser og indstil og sæt replikeringen på pause, mens du bruger analysere dataene.