sql >> Database teknologi >  >> RDS >> Oracle

Oracle - Materialized View stadig tilgængelig under fuldstændig opdatering. Hvordan virker det?

Der er to forskellige måder, hvorpå en fuldstændig opdatering kan ske - en atomisk opdatering eller en ikke-atomisk opdatering. En atomisk opdatering udsteder simpelthen en DELETE for at slette alle rækkerne i den materialiserede visning og udfører derefter en INSERT for at indsætte de nye data. Dette er alt sammen inden for en enkelt transaktion, så Oracles standard multi-version læsekonsistensarkitektur lader Oracle vise andre sessioner de gamle data, indtil opdateringen er fuldført. I en ikke-atomisk opdatering udfører Oracle en TRUNCATE på den materialiserede visning og derefter en direkte sti-INSERT for at indsætte de nye data. Dette er væsentligt mere effektivt, men da TRUNCATE er DDL, betyder det, at de gamle data ikke er synlige for andre sessioner under opdateringen.




  1. Implementer flere Oracle-beregningsinstanser ved hjælp af en instanspulje og terraform

  2. Begrænsning defineret UDSKYLDIG Umiddelbart er stadig UDSAT?

  3. Emuler MySQL LIMIT-klausul i Microsoft SQL Server 2000

  4. Oracle In-Memory omkostninger