Estimado Danne te comparto el query: SELECT t.name AS TableName, --i.name AS field, fg.name, p.partition_number, r.value AS BoundaryValue , rows From Sys.Tables AS t Join Sys.Indexes AS i On t.object_id = i.object_id Join sys.partitions AS p On i.object_id = p.object_id And i.index_id = p.index_id INNER JOIN sys.allocation_units au ON au.container_id = p.hobt_id INNER JOIN sys.filegroups fg ON fg.data_space_id = au.data_space_id Join sys.partition_schemes AS s On i.data_space_id = s.data_space_id Join sys.partition_functions AS f ON s.function_id = f.function_id Left Join sys.partition_range_values AS r On f.function_id = r.function_id and r.boundary_id = p.partition_number Where ---t.name = 'Producto1' and i.type
Hola amigo te pregunto, se puede alterar esquemas y funciones de particionamiento ya existentes en la base de datos? osea para la función de particinamiento se le puede agregar otros rangos? y para el caso del esquema se le puede agregar otros filegroups? espero tu respuesta :)
Hola Esteban, se puede agregar, si son filegroups nuevos puedes agregarlo para el esquema, tener en cuenta que si vas a modificar y/o agregar nuevos rangos tienes que verificar y asegurarte a que filegroups le pertenecería cada rango
SELECT t.name AS TableName, --i.name AS field, fg.name, p.partition_number, r.value AS BoundaryValue , rows From Sys.Tables AS t Join Sys.Indexes AS i On t.object_id = i.object_id Join sys.partitions AS p On i.object_id = p.object_id And i.index_id = p.index_id INNER JOIN sys.allocation_units au ON au.container_id = p.hobt_id INNER JOIN sys.filegroups fg ON fg.data_space_id = au.data_space_id Join sys.partition_schemes AS s On i.data_space_id = s.data_space_id Join sys.partition_functions AS f ON s.function_id = f.function_id Left Join sys.partition_range_values AS r On f.function_id = r.function_id and r.boundary_id = p.partition_number Where ---t.name = 'Producto1' and i.type
pero que hay de una tabla donde su llave primaria esta como foranea en otra tabla? todos los tutoriales sobre particiones solo explican lo mismo como copia unos de otros ademas ni siquiera muestran consultas
Estimado buenas tardes, no hay problema, se puede realizar la partición, ya que los datos se van a direccionar a diferentes filegroups y cada uno de estos filegroups es recomendable es que estén diferentes unidades discos de manera independiente, para que la información se lea y devuelva más rápido.
Socio eres excelente para explicar, muchas gracias
Muchas gracias por tus comentarios
Amigo, dejaste los querys del ejercicio colgados en alguna parte?
Estimado Danne te comparto el query:
SELECT
t.name AS TableName,
--i.name AS field,
fg.name,
p.partition_number,
r.value AS BoundaryValue ,
rows
From Sys.Tables AS t
Join Sys.Indexes AS i On t.object_id = i.object_id
Join sys.partitions AS p On i.object_id = p.object_id And i.index_id = p.index_id
INNER JOIN sys.allocation_units au ON au.container_id = p.hobt_id
INNER JOIN sys.filegroups fg ON fg.data_space_id = au.data_space_id
Join sys.partition_schemes AS s On i.data_space_id = s.data_space_id
Join sys.partition_functions AS f ON s.function_id = f.function_id
Left Join sys.partition_range_values AS r On f.function_id = r.function_id and
r.boundary_id = p.partition_number
Where
---t.name = 'Producto1' and
i.type
@@Walter_Requejo Gracias Walter
@@DanneRamirez de nada estoy para ayudar, me ayudarías mucho en suscribirte y darle like si te gusto mi video.
Me gustaria tener el query para saber las filas por particion
Hola amigo te pregunto, se puede alterar esquemas y funciones de particionamiento ya existentes en la base de datos? osea para la función de particinamiento se le puede agregar otros rangos? y para el caso del esquema se le puede agregar otros filegroups? espero tu respuesta :)
Hola Esteban, se puede agregar, si son filegroups nuevos puedes agregarlo para el esquema, tener en cuenta que si vas a modificar y/o agregar nuevos rangos tienes que verificar y asegurarte a que filegroups le pertenecería cada rango
Gracias me fue muy útil.
Estimado Jose, muchas gracias por tu comentario
Hola, podrías colocar el código completo de la consulta donde muestra las tablas particionadas. Gracias.
SELECT
t.name AS TableName,
--i.name AS field,
fg.name,
p.partition_number,
r.value AS BoundaryValue ,
rows
From Sys.Tables AS t
Join Sys.Indexes AS i On t.object_id = i.object_id
Join sys.partitions AS p On i.object_id = p.object_id And i.index_id = p.index_id
INNER JOIN sys.allocation_units au ON au.container_id = p.hobt_id
INNER JOIN sys.filegroups fg ON fg.data_space_id = au.data_space_id
Join sys.partition_schemes AS s On i.data_space_id = s.data_space_id
Join sys.partition_functions AS f ON s.function_id = f.function_id
Left Join sys.partition_range_values AS r On f.function_id = r.function_id and
r.boundary_id = p.partition_number
Where
---t.name = 'Producto1' and
i.type
Estimado Jose disculpa la demora, ya te compartí el query
@Juan Ramirez Estimado Juan las tablas particionadas solo se realiza en la Edición Enterprise Edition
Estimado Jose me confirmas si pudiste utilizar le código.
Las tablas particionadas se realiza con la Edición Enterprise
Hola, ¿qué versión de SQL Server estás utilizando? ¿puedo hacer el particionamiento en una SQL Express?
Hola José las tablas particionadas se realizan en SQL Server Enterprise
pero que hay de una tabla donde su llave primaria esta como foranea en otra tabla? todos los tutoriales sobre particiones solo explican lo mismo como copia unos de otros ademas ni siquiera muestran consultas
Que pasa si particionas una tabla que tiene relación con otras tablas
Estimado buenas tardes, no hay problema, se puede realizar la partición, ya que los datos se van a direccionar a diferentes filegroups y cada uno de estos filegroups es recomendable es que estén diferentes unidades discos de manera independiente, para que la información se lea y devuelva más rápido.
Estaré realizando un video para que lo puedas validar.
Gracias
ka?