Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Particionar Tabla cuando haya un mes nuevo

Estas en el tema de Particionar Tabla cuando haya un mes nuevo en el foro de SQL Server en Foros del Web. Hola buenas soy nuevo en esto y quería pedir ayuda sobre el tema. Os comento. Quiero particionar una tabla la cual tiene una columna de ...
  #1 (permalink)  
Antiguo 15/11/2012, 03:03
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 9 meses
Puntos: 0
Particionar Tabla cuando haya un mes nuevo

Hola buenas soy nuevo en esto y quería pedir ayuda sobre el tema.

Os comento.

Quiero particionar una tabla la cual tiene una columna de fecha, cada vez que haya un mes nuevo me cree otra "tabla", o sea, por cada mes me cree otra "tabla", tengo muchos registros y me gustaría hacer esto para mejorar el rendimiento.

Gracias y un saludo!
  #2 (permalink)  
Antiguo 15/11/2012, 09:19
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Particionar Tabla cuando haya un mes nuevo

que??? crear tablas por cada mes??? y eso para que??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 16/11/2012, 01:30
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Particionar Tabla cuando haya un mes nuevo

cada mes que pase me particione la tabla, creando otra igual con los datos de ese mes, para mayor rendimiento, no se si me explico...
  #4 (permalink)  
Antiguo 16/11/2012, 08:37
 
Fecha de Ingreso: noviembre-2011
Mensajes: 48
Antigüedad: 13 años
Puntos: 5
Respuesta: Particionar Tabla cuando haya un mes nuevo

Se me ocurre que hagas un JOB que ejecute el script de creacion cada dia primero de mes, pero como dice Libras, como para que? cuantos son muchos registros?
  #5 (permalink)  
Antiguo 16/11/2012, 09:01
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Particionar Tabla cuando haya un mes nuevo

ya has analizado la opcion de usar filegroups??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #6 (permalink)  
Antiguo 16/11/2012, 12:26
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: Particionar Tabla cuando haya un mes nuevo

¿Cuantos registros MÁXIMOS por mes tendrias?
__________________
MCTS Isaias Islas
  #7 (permalink)  
Antiguo 18/11/2012, 17:54
 
Fecha de Ingreso: abril-2012
Ubicación: Capital Federal
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 15
Respuesta: Particionar Tabla cuando haya un mes nuevo

En el que caso que serian 500.000 registros mensuales mejoraría el rendimiento hacer las particiones?

Gracias
  #8 (permalink)  
Antiguo 20/11/2012, 06:27
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: Particionar Tabla cuando haya un mes nuevo

Cita:
Iniciado por damimg Ver Mensaje
En el que caso que serian 500.000 registros mensuales mejoraría el rendimiento hacer las particiones?

Gracias
Hola.
Los veo pocos...
Saludos
  #9 (permalink)  
Antiguo 25/11/2012, 12:50
 
Fecha de Ingreso: abril-2012
Ubicación: Capital Federal
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 15
Respuesta: Particionar Tabla cuando haya un mes nuevo

Hoila ejbsoft, entonces a partir de que cantidad de registros sería necesaria la partición?

Gracias
  #10 (permalink)  
Antiguo 26/11/2012, 12:56
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: Particionar Tabla cuando haya un mes nuevo

daming, creo que no depende del numero de registros, creo que dependera de la estructura de tu tabla, las capacidades de tu motor, tu hardware y las consultas que hagas a dichas tablas.

Aca en MX, tengo un cliente con un sistema SAP y una de sus tablas tiene casi 70 millones de registros, aun no han particionado.
__________________
MCTS Isaias Islas
  #11 (permalink)  
Antiguo 03/12/2012, 07:54
 
Fecha de Ingreso: febrero-2009
Mensajes: 8
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Particionar Tabla cuando haya un mes nuevo

así cree las particiones para cada mes.

Cita:
--Create date partition function with increment by month.

DECLARE @DatePartitionFunction nvarchar(max) = 'CREATE PARTITION FUNCTION FuncionParticion (date) AS RANGE LEFT FOR VALUES (';
DECLARE @i date = '2013-01-31';
DECLARE @o int = 0
WHILE @o <= 11
BEGIN

SET @DatePartitionFunction += 'N''' + CAST(DATEADD(month, @o, @i) as nvarchar(10)) + ''',';
SET @o = (@o+1);

END
SET @DatePartitionFunction += 'N''' + CAST(DATEADD(month, @o, @i) as nvarchar(10))+ ''')';

EXEC sp_executesql @DatePartitionFunction;
GO

CREATE PARTITION SCHEME EsquemaParticion AS PARTITION FuncionParticion ALL TO ( GrupoArchivos );
con una tabla con 5 millones de datos tiene una eficiencia del 10% aprox.

PD: El esquema de particion estan todas las particiones en el mismo grupo de archivos ( pueden cambiarse a otros discos duros para mejorar mas aun el rendimiento).

¿¿Alguna duda??

Etiquetas: columna, particionar, registro, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:19.