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

Como particionar una Tabla???

Estas en el tema de Como particionar una Tabla??? en el foro de SQL Server en Foros del Web. Hola Tengo un problema.Necesito particionar unas tablas que cuentan con 3, 9 y 20 millones de registros, y para hacer consultas se tarda un buen ...
  #1 (permalink)  
Antiguo 29/10/2008, 10:26
Avatar de rooyvan  
Fecha de Ingreso: junio-2006
Mensajes: 38
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta Como particionar una Tabla???

Hola
Tengo un problema.Necesito particionar unas tablas que cuentan con 3, 9 y 20 millones de registros, y para hacer consultas se tarda un buen tiempo. Para agilizar esto, necesito dividir las tablas, que cada una de estas tenga 1 million o 2 millones.

Seria que la primer tabla que se divida tenga del registro 1 al 999 9999; y asi sucesivamente con las otras.

Si alguien me podria apoyar con ejemplos o con algo. Es desesperado

Saludos y gracias
  #2 (permalink)  
Antiguo 29/10/2008, 11:49
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Como particionar una Tabla???

Regularmente el campo por el cual se particiona es aquel por el cual se hacen las consultas más frecuentes, al menos las que he hecho han sido por fechas, es decir, tener a la mano la información reciente.

Aquí te pongo un link donde se explica el funcionamiento de las particiones:

http://blogs.techrepublic.com.com/datacenter/?p=143

Hay otro documento de microsoft un poco más completo.. pero ya no lo encuentro :(


Lo encontre :) , aquí esta el de microsoft:
http://msdn.microsoft.com/en-us/library/ms345146.aspx

Última edición por daniel00; 29/10/2008 a las 11:58
  #3 (permalink)  
Antiguo 29/10/2008, 11:55
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Como particionar una Tabla???

Si tuvieras numerados cada registro creo que no seria dificil particionar tu tabla. Usarias un
Cita:
SELECT *
INTO tabla_N
WHERE ID BETWEEN 1 AND 999999
Si no lo tienes podrias agregar una columna identity y usar el codigo anterior, pero esto podria tomar tiempo dependiendo de la cantidad de columnas que tenga tu tabla.
Otra forma podria ser usando un while y un contador, asi recorres por cada PK de tu tabla.
A ver quien da mas ideas?
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #4 (permalink)  
Antiguo 29/10/2008, 12:02
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Como particionar una Tabla???

Por cierto rooyvan, no comentas que versión de SQL Server tienes, los links que puse son para la versión 2005.

Última edición por daniel00; 29/10/2008 a las 12:04 Razón: ortografía
  #5 (permalink)  
Antiguo 29/10/2008, 15:41
Avatar de rooyvan  
Fecha de Ingreso: junio-2006
Mensajes: 38
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Como particionar una Tabla???

Gracias por sus comentarios
Utilizo la version SQL Server 2005 Enterprise

saludos
  #6 (permalink)  
Antiguo 29/10/2008, 19:17
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Como particionar una Tabla???

Ok, si es 2005 Enterprise, busca en donde te comenta daniel00, ya que esta version, te permite precisamente hacer PARTICIONES en tus tablas.
  #7 (permalink)  
Antiguo 29/10/2008, 21:51
Avatar de rooyvan  
Fecha de Ingreso: junio-2006
Mensajes: 38
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Como particionar una Tabla???

Pero no necesito hacerlo via codigo o lo voy a siendo como un tipo wizard???
Lo que pasa que apenas empece a usar el SQL Server 2005 en su tipo enterprise. Siempre habia usado un developer.

Gracias por sus comentarios
  #8 (permalink)  
Antiguo 30/10/2008, 14:11
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Como particionar una Tabla???

Pues yo cuando lo hice, primero lo hice en mi equipo, en la edición developer, y ya al implantarlo en producción use los mismo scripts para la edición enterprise y funciono sin problemas, no es muy complicado. La tabla que particione tiene más o menos la misca catidad de registros que mencionas y lo hace bastante rápido. Aunque la base de datos esta separada en varios discos, sobre todo la de log que es una de las que más se utiliza.


Primero hazlo en un ambiente de desarrollo, antes de hacerlo directamente en producción.

Saludos!
  #9 (permalink)  
Antiguo 30/10/2008, 20:03
Avatar de rooyvan  
Fecha de Ingreso: junio-2006
Mensajes: 38
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Como particionar una Tabla???

Hola daniel00
Me podrias decir como le hiciste en la version de developer, tambien la tengo pero en mi maquina personal.
Me podrias enseñar los scrips que utilizaste!!
Saludos
  #10 (permalink)  
Antiguo 31/10/2008, 09:17
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Como particionar una Tabla???

¿Como crear tablas particionadas en SQL Server 2005?

http://www.dbasupport.com.mx/index2....do_pdf=1&id=18
  #11 (permalink)  
Antiguo 31/10/2008, 10:13
Avatar de usuariobaneado  
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Como particionar una Tabla???

Rooyvan ha de querer que se lo expliquen con peras y manzanas

No es muy dificil, hay que crear una función de partición para la tabla y especificar los rangos. Luego se puede crear un esquema de partición en el que se asignará cada partición a un filegroup diferente, si cada filegroup está en un disco diferente se aprovechará mucho más el efecto de partición ya que se podrán ejecutar operaciones de lectura y escritura más rápido
__________________
Yo quiero ser el pelucón del barrio
  #12 (permalink)  
Antiguo 31/10/2008, 10:38
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Como particionar una Tabla???

rooyvan.

Los scripts que hice fueron basados en los ejemplos de los links que te pase, hechale una leida a los links que han puesto y ya si tienes una duda enconcreto o si algo no te sale pues preguntas.
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

SíEste tema le ha gustado a 1 personas




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