Usuario:Alexdapena/Partición (base de datos)

Unha partición consiste na división dunha base de datos ou dos seus elementos en partes loxicamente independentes co obxectivo de facilitar o seu mantemento, optimizar o rendemento ou incrementar a dispoñibilidade.


Nos Sistemas Xestores de Bases de Datos Distribuídos emprégase habitualmente o particionamento de bases de datos. Cada base de datos se divide en varios segmentos lóxicos, e cada un deles se localiza nun nodo do sistema, de xeito que os usuarios de cada nodo poden levar a cabo transaccións locais no seu nodo (incrementando o rendemento, a dispoñibilidade e a seguridade), e transaccións remotas no resto dos nodos.

O particionamento da base de datos pode levarse a cabo segmentando a base de datos en pequenas bases de datos separadas (cada unha delas coas súas propias táboas, índices e rexistro de transaccións) ou segmentando unicamente determinados obxectos de bases de datos (táboas).

O particionamento pode ser de dous tipos: horizontal ou vertical.

Partición horizontal consiste en distribuír as diferentes filas en diferentes táboas. Por exemplo, unha táboa de clientes con códigos postais podería particionarse en dúas táboas: ClientesEste (que contería os clientes con códigos postais menores que 50000) e ClientesOeste (que contería os clientes con códigos postais maiores ou iguais a 50000). A táboa inicial con todos os clientes podería recrearse creando unha vista que amose a unión de ambas táboas.

Partición vertical consiste en distribuír as diferentes columnas en diferentes táboas. Todas as táboas creadas compartirán a lo menos unha columna común (a chave primaria da táboa principal), e a táboa inicial podería recrearse facendo un JOIN de todas as táboas. [[Categoría:Bases de datos]]