sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvorfor tæller resultaterne forskelligt på fortløbende læsninger?

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.

  • COPY data 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.



  1. SQL Server Skift TempDB-filplacering

  2. Stort databasestyringssystem:Design og arkitekt

  3. Er der nogen metoder, der hjælper med at løse almindelige SQLite-problemer?

  4. Hvad betyder koden efter CREATE FUNCTION er en streng?