Partitionering ( eng. Partitioning ) - uppdelningen av lagrade databasobjekt (som tabeller , index , materialiserade vyer ) i separata delar med separata fysiska lagringsparametrar. Används för att förbättra hanterbarhet, prestanda och tillgänglighet för stora databaser.
Möjliga kriterier för partitionering av data som används vid partitionering - efter fördefinierade värdeintervall, med värdelistor, med hjälp av hashfunktionsvärden ; i vissa fall används andra alternativ. Sammansatta ( sammansatta ) separationskriterier förstås som successivt tillämpade kriterier av olika typer.
Till skillnad från sharding , där varje segment hanteras av en separat instans av DBMS, och koordinationsmedel mellan dem används (vilket gör att du kan distribuera databasen över flera datornoder), med partitionering utförs åtkomst till alla sektioner från en enskild instans av DBMS (eller symmetriskt från valfri instans av den klustrade DBMS, till exempel Oracle RAC ).
Partitionering är implementerad i många relationella DBMS , såsom IBM DB2 , Informix , Oracle Database , Teradata Database , Microsoft SQL Server , PostgreSQL , MySQL , Adaptive Server Enterprise .
I olika DBMS är implementeringsmöjligheterna något olika. I synnerhet stöds följande metoder i Oracle Database:
Det finns också tre typer av partitionerade index i Oracle Database:
Partitionering i Informix kallas fragmentering ( framentation ), och låter dig också bryta tabeller och index i separata fragment enligt olika scheman:
MySQL sedan version 5.1 stöder följande typer av partitionering [1] :
Databas | |
---|---|
Begrepp |
|
Objekt |
|
Nycklar | |
SQL |
|
Komponenter |