De ningún modo.
Uno de los escenarios más comunes para la partición es usar un campo de fecha, que no tiene ninguna relación con su PK.
Por ejemplo, si tiene una tabla Orders
con el campo OrderDate
, lo más probable es que particione según el mes y el año de OrderDate
.
Cuando los registros caducan y ya no son relevantes, puede mover esas particiones a una tabla de archivo o base de datos para que ya no se procesen.
La partición funcionará con casi cualquier campo, pero para que funcione BIEN, los campos en los que particiones deben usarse en la mayoría de tus consultas, si no en todas. Si no incluye sus claves de partición, obtendrá esencialmente un escaneo de tablas costoso que atraviesa varias tablas (particiones).
EDITAR
Para la parte 2, creo que la respuesta es no también. La clave de partición se usa para determinar en qué partición colocar la fila, pero no creo que se mantenga un índice. Sin embargo, puede haber estadísticas en el back end.
Partition columns for a unique index must be a subset of the index key.
Además de la respuesta de JNK, probablemente debería leer este artículo que trata sobre la alineación de particiones de tabla y particiones de índice.
Hay muchos tipos de escenarios en los que el esquema de particionamiento sigue exactamente la primera columna de la clave primaria, por ejemplo, en un escenario de depósito de datos donde la fecha de la instantánea de una tabla de hechos suele ser la columna de partición, así como la primera columna de la clave primaria.
Pero igualmente, en entornos OLTP donde la PK es una IDENTIDAD u otra clave sustituta, tiene poco sentido usar esto para la partición, ya que la partición en números arbitrarios normalmente no es terriblemente útil. En los sistemas OLTP, también tiende a dividir más por fecha (probablemente no en el PK), pero potencialmente también regionalmente o por algún tipo de división organizacional (tal vez en el PK si no está utilizando un sustituto).
Pero no es un requisito.
fuente
Tiene que ser parte de una clave candidata, si no parte de la clave primaria en sí. La idea es que su partición debe alinearse con la clave principal.
Entonces la respuesta es sí, se prefiere ser parte de la PK. Si no es otra clave, que es lo suficientemente buena como para ser una PK.
fuente
OrderDate
. ¿Tienes algo para respaldar tus reclamos?