sql >> Databasteknik >  >> RDS >> Database

Databasreorganiseringar – varför de är viktiga

Databasreorganiseringar:  Varför de är viktiga och skillnaden mellan on-line och off-line

Databasomorganiseringar utförs för att spara datautrymme och förbättra databasens effektivitet och prestanda. Den här artikeln förklarar varför. Nästa artikel visar hur du omorganiserar flera tabeller och databaser i Eclipse.

Data i stora RDBMS-tabeller blir så småningom fragmenterade. Storleken på tabeller och index ökar när poster distribueras över fler datasidor. Fler sidläsningar och rader i icke-sammanfogad ordning under körning av frågor långsamma frågesvar. För att återta det slösa utrymmet, förbättra databasens drifttid och snabbare dataåtkomst (frågesvar), överväg en strategi för att omorganisera dina databasobjekt.

Databasreorganiseringar består av två typer för dessa tabell-, index- och tabellutrymmesobjekt:on-line (på plats) och off-line (klassisk).

Online-databas omorganiseringar fungerar stegvis genom att flytta rader i den befintliga tabellen för att återupprätta klustring, återta ledigt utrymme och eliminera översvämningsrader. Objekt är otillgängliga endast under en kort tid nära slutet, inte under omladdnings- och återuppbyggnadsfaserna, som kan bli utdragna för stora objekt. De tillåter applikationer att ansluta till databasen, men gör ofta deras prestanda långsammare och kan skapa låsväntningar vid den tidpunkten.

Offlinedatabas reorgs är snabbare, men kan ta databasen offline (om databasreorg-verktyget används). Med denna metod exporteras data från databasen till en dumpfil (avlastning). Databasobjekten som säkerhetskopieras baserat på utdraget, vanligtvis omordnade (sorterade). De returneras sedan till samma tabellutrymme (last), där index återställs implicit (ombyggs).

Prestandamedvetna DBA:er använder IRI FACT (Fast Extract) för urladdningen, vilket skapar en portabel platt fil som kan sorteras (med IRI CoSort) på den primära indexnyckeln i den omorganiserade tabellen. Med detta tillvägagångssätt kan andra transformations- och rapporteringsoperationer inträffa och databasen förblir on-line. Försorterade, direkta sökvägsladdningar kringgår också sorteringen (overhead) för databasladdaren. Alla dessa operationer är automatiserade i IRI Workbenchs offline-reorganiseringsguide.

Att hålla en "skugg"-kopia av data i filsystemet för varje tabell bör inte vara onödigt betungande eftersom när den platta filen väl har sorterats och laddats om kan den raderas. Samtidigt ger omorganiseringsdata externiserad och tillgänglig för CoSort också möjligheten för annan användning av datan, inklusive arkivering, rapportering, skydd och migrering till andra databaser, BI-verktyg och applikationsmål.

Förbehållet är naturligtvis att andra systemanvändare kan läsa och uppdatera tabellutrymmet under avlastningen, så alla uppdateringar under denna tid kan missa omladdningen och skapa inkonsekvenser i målet. Det rekommenderas därför att offline-omorganiseringar utförs när uppdateringar inte sker.

IRI erbjuder en offline-reorganiseringslösning som beskrivs och visas här.


  1. Hur man installerar och konfigurerar phpMyAdmin på CentOS 6

  2. Tabellexempel och andra metoder för att få slumpmässiga tuplar

  3. Hur man undviker MySQL 'Deadlock hittas när man försöker få lås; försök starta om transaktionen'

  4. Hur man genererar ett skript från ett diagram i MySQL Workbench