sql >> Database teknologi >  >> RDS >> Sqlserver

SQL Server - Sammenlægning af store tabeller uden at låse dataene

Skift din frontend til at bruge NOLOCK eller READ UNCOMMITTED, når du foretager valgene .

Du kan ikke NOLOCK MERGE, INSERT eller UPDATE, da posterne skal være låst for at kunne udføre opdateringen. Du kan dog IKKE LÅSE SELECTS.

Bemærk, at du skal bruge dette med forsigtighed. Hvis beskidte læsninger er okay, så gå videre. Men hvis læsningerne kræver de opdaterede data, skal du gå en anden vej og finde ud af præcis, hvorfor sammenlægning af 3M-poster forårsager et problem.

Jeg vil være villig til at vædde på, at det meste af tiden går med at læse data fra disken under flettekommandoen og/eller arbejde omkring situationer med lav hukommelse. Du kan være bedre stillet ved blot at fylde mere ram ind i din databaseserver.

En ideel mængde ville være at have nok ram til at trække hele databasen ind i hukommelsen efter behov. For eksempel, hvis du har en 4 GB database, så sørg for at du har 8 GB RAM.. i en x64-server selvfølgelig.



  1. oracle eksekver med det samme og eksekverer ikke uden fejl

  2. Er MySql Views dynamiske og effektive?

  3. Hvordan giver man en adgangskode til PostgreSQL'er oprettetb ikke-interaktivt?

  4. Få første ugedag fra ugenummer