Afinamiento de una base de datos GRANDE

25/04/2006 - 20:25 por Jorge Gonzalez | Informe spam
Estoy trabajando con una base de datos de unos 9 GB con tablas que crecen a
un ritmo de unos 250,000 a 300,000 registros al mes. En una base de datos
financiera. Mi objetivo es afinar la base de datos para que esta tenga un
mejor desempeño sobre todo en los proceso de ingreso de datos que es donde
se tarda más. Los procesos de consultas no son muy importantes debido a que
la mayoría de las consultas son realizadas a tablas sumarizadas.

El diseño de aplicación no es algo que esté a mi alcance manipular porque es
una aplicación hecha por terceros. Para este afinamiento tengo planeado
hacer lo siguiente:

- Particionar la base de datos para llevarme las tablas más manipuladas
transaccionalmente ( facturación, y AcientoDiario ) a un disco duro propio.
Otras tablas altamente accedidas también las pienso colocar en un disco duro
propio ( CuentasXCobrar e Inventario ) . Creo que esto tendrá un efecto
positivo ya que el servidor de datos no tiene sistema RAID nivel 5 de
Stripped sets para mejorar la velocidad de acceso al disco duro.

- Además quiero eliminar una serie de índices que estas tablas tienen en
ellas. Estos índices a primera vista no tienen sentido y no se me ocurre
como la aplicación pueda estar usándolos, sin embargo no deja de causarme
temor eliminar estos índices ( por muy inadecuados que parezcan). Deseo
eliminar los índices para promover el desempeño en la actualización de
datos.

Quisiera saber si alguien a tenido una experiencia con estos dos métodos de
afinamiento y conocer si ha tenido buenos resultados. Además me gustaría
escuchar alguna amable sugerencia sobre otros métodos de afinamiento que
pueda utilizar para mejorar el desempeño de la aplicación ( sólo recuerden
que no cuento con la capacidad de modificar los queries ni el diseño de la
aplicación )

saludos y gracias de antemano.

Jorge González

Preguntas similare

Leer las respuestas

#1 Isaias
25/04/2006 - 20:35 | Informe spam
Hola Jorge

Para SQL Server 7.0 y 2000, en el Query Analyzer tienes un Index Tuning
Wizard, que te ayudara para la creacion de indices.

Para SQL Server 2005, cuentas ya con las herramientas suficientes para dar
TUNING a tu base de datos.
Saludos
IIslas


"Jorge Gonzalez" escribió:

Estoy trabajando con una base de datos de unos 9 GB con tablas que crecen a
un ritmo de unos 250,000 a 300,000 registros al mes. En una base de datos
financiera. Mi objetivo es afinar la base de datos para que esta tenga un
mejor desempeño sobre todo en los proceso de ingreso de datos que es donde
se tarda más. Los procesos de consultas no son muy importantes debido a que
la mayoría de las consultas son realizadas a tablas sumarizadas.

El diseño de aplicación no es algo que esté a mi alcance manipular porque es
una aplicación hecha por terceros. Para este afinamiento tengo planeado
hacer lo siguiente:

- Particionar la base de datos para llevarme las tablas más manipuladas
transaccionalmente ( facturación, y AcientoDiario ) a un disco duro propio.
Otras tablas altamente accedidas también las pienso colocar en un disco duro
propio ( CuentasXCobrar e Inventario ) . Creo que esto tendrá un efecto
positivo ya que el servidor de datos no tiene sistema RAID nivel 5 de
Stripped sets para mejorar la velocidad de acceso al disco duro.

- Además quiero eliminar una serie de índices que estas tablas tienen en
ellas. Estos índices a primera vista no tienen sentido y no se me ocurre
como la aplicación pueda estar usándolos, sin embargo no deja de causarme
temor eliminar estos índices ( por muy inadecuados que parezcan). Deseo
eliminar los índices para promover el desempeño en la actualización de
datos.

Quisiera saber si alguien a tenido una experiencia con estos dos métodos de
afinamiento y conocer si ha tenido buenos resultados. Además me gustaría
escuchar alguna amable sugerencia sobre otros métodos de afinamiento que
pueda utilizar para mejorar el desempeño de la aplicación ( sólo recuerden
que no cuento con la capacidad de modificar los queries ni el diseño de la
aplicación )

saludos y gracias de antemano.

Jorge González



Respuesta Responder a este mensaje
#2 Alejandro Mesa
25/04/2006 - 20:39 | Informe spam
Jorge,

Aca te paso un articulo sobre como identificar los indices que no estan
siendo usados en tu db.

How to Identify Non-Active SQL Server Indexes
http://www.sql-server-performance.c...nglish.asp


AMB


"Jorge Gonzalez" wrote:

Estoy trabajando con una base de datos de unos 9 GB con tablas que crecen a
un ritmo de unos 250,000 a 300,000 registros al mes. En una base de datos
financiera. Mi objetivo es afinar la base de datos para que esta tenga un
mejor desempeño sobre todo en los proceso de ingreso de datos que es donde
se tarda más. Los procesos de consultas no son muy importantes debido a que
la mayoría de las consultas son realizadas a tablas sumarizadas.

El diseño de aplicación no es algo que esté a mi alcance manipular porque es
una aplicación hecha por terceros. Para este afinamiento tengo planeado
hacer lo siguiente:

- Particionar la base de datos para llevarme las tablas más manipuladas
transaccionalmente ( facturación, y AcientoDiario ) a un disco duro propio.
Otras tablas altamente accedidas también las pienso colocar en un disco duro
propio ( CuentasXCobrar e Inventario ) . Creo que esto tendrá un efecto
positivo ya que el servidor de datos no tiene sistema RAID nivel 5 de
Stripped sets para mejorar la velocidad de acceso al disco duro.

- Además quiero eliminar una serie de índices que estas tablas tienen en
ellas. Estos índices a primera vista no tienen sentido y no se me ocurre
como la aplicación pueda estar usándolos, sin embargo no deja de causarme
temor eliminar estos índices ( por muy inadecuados que parezcan). Deseo
eliminar los índices para promover el desempeño en la actualización de
datos.

Quisiera saber si alguien a tenido una experiencia con estos dos métodos de
afinamiento y conocer si ha tenido buenos resultados. Además me gustaría
escuchar alguna amable sugerencia sobre otros métodos de afinamiento que
pueda utilizar para mejorar el desempeño de la aplicación ( sólo recuerden
que no cuento con la capacidad de modificar los queries ni el diseño de la
aplicación )

saludos y gracias de antemano.

Jorge González



Respuesta Responder a este mensaje
#3 Piolin Net
26/04/2006 - 12:51 | Informe spam
Alo!

Al hilo de todo esto he encontrado en el analizador SQL en el menu
Herramientas una opcion: 'Asistente para optimización de índices'

Ya he escogido el servidor y la BDs y en la siguientes pantalla me indica
que escoja un archivo para carga de trabajo y una tabla de traza de sql

No se muy bien a que se esta refiiendo en este paso.
Alguna ayudita. Algun sitio donde obtener informacion sobre este asistente?

Gracias

"Isaias" escribió:

Hola Jorge

Para SQL Server 7.0 y 2000, en el Query Analyzer tienes un Index Tuning
Wizard, que te ayudara para la creacion de indices.

Para SQL Server 2005, cuentas ya con las herramientas suficientes para dar
TUNING a tu base de datos.
Saludos
IIslas


"Jorge Gonzalez" escribió:

> Estoy trabajando con una base de datos de unos 9 GB con tablas que crecen a
> un ritmo de unos 250,000 a 300,000 registros al mes. En una base de datos
> financiera. Mi objetivo es afinar la base de datos para que esta tenga un
> mejor desempeño sobre todo en los proceso de ingreso de datos que es donde
> se tarda más. Los procesos de consultas no son muy importantes debido a que
> la mayoría de las consultas son realizadas a tablas sumarizadas.
>
> El diseño de aplicación no es algo que esté a mi alcance manipular porque es
> una aplicación hecha por terceros. Para este afinamiento tengo planeado
> hacer lo siguiente:
>
> - Particionar la base de datos para llevarme las tablas más manipuladas
> transaccionalmente ( facturación, y AcientoDiario ) a un disco duro propio.
> Otras tablas altamente accedidas también las pienso colocar en un disco duro
> propio ( CuentasXCobrar e Inventario ) . Creo que esto tendrá un efecto
> positivo ya que el servidor de datos no tiene sistema RAID nivel 5 de
> Stripped sets para mejorar la velocidad de acceso al disco duro.
>
> - Además quiero eliminar una serie de índices que estas tablas tienen en
> ellas. Estos índices a primera vista no tienen sentido y no se me ocurre
> como la aplicación pueda estar usándolos, sin embargo no deja de causarme
> temor eliminar estos índices ( por muy inadecuados que parezcan). Deseo
> eliminar los índices para promover el desempeño en la actualización de
> datos.
>
> Quisiera saber si alguien a tenido una experiencia con estos dos métodos de
> afinamiento y conocer si ha tenido buenos resultados. Además me gustaría
> escuchar alguna amable sugerencia sobre otros métodos de afinamiento que
> pueda utilizar para mejorar el desempeño de la aplicación ( sólo recuerden
> que no cuento con la capacidad de modificar los queries ni el diseño de la
> aplicación )
>
> saludos y gracias de antemano.
>
> Jorge González
>
>
>
Respuesta Responder a este mensaje
#4 Salvador Ramos
26/04/2006 - 13:25 | Informe spam
Si, claro,

Se refiere a un archivo por ejemplo con scripts de consultas select, insert,
update,... o de un archivo de trazas.
Lo que hace este asistente es aconsejarte índices para esas consultas que
hay en dicho archivo.

Un saludo
Salvador Ramos
Murcia - España

[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL Server y .NET)


"Piolin Net" escribió en el mensaje
news:
Alo!

Al hilo de todo esto he encontrado en el analizador SQL en el menu
Herramientas una opcion: 'Asistente para optimización de índices'

Ya he escogido el servidor y la BDs y en la siguientes pantalla me indica
que escoja un archivo para carga de trabajo y una tabla de traza de sql

No se muy bien a que se esta refiiendo en este paso.
Alguna ayudita. Algun sitio donde obtener informacion sobre este
asistente?

Gracias

"Isaias" escribió:

Hola Jorge

Para SQL Server 7.0 y 2000, en el Query Analyzer tienes un Index Tuning
Wizard, que te ayudara para la creacion de indices.

Para SQL Server 2005, cuentas ya con las herramientas suficientes para
dar
TUNING a tu base de datos.
Saludos
IIslas


"Jorge Gonzalez" escribió:

> Estoy trabajando con una base de datos de unos 9 GB con tablas que
> crecen a
> un ritmo de unos 250,000 a 300,000 registros al mes. En una base de
> datos
> financiera. Mi objetivo es afinar la base de datos para que esta tenga
> un
> mejor desempeño sobre todo en los proceso de ingreso de datos que es
> donde
> se tarda más. Los procesos de consultas no son muy importantes debido a
> que
> la mayoría de las consultas son realizadas a tablas sumarizadas.
>
> El diseño de aplicación no es algo que esté a mi alcance manipular
> porque es
> una aplicación hecha por terceros. Para este afinamiento tengo planeado
> hacer lo siguiente:
>
> - Particionar la base de datos para llevarme las tablas más manipuladas
> transaccionalmente ( facturación, y AcientoDiario ) a un disco duro
> propio.
> Otras tablas altamente accedidas también las pienso colocar en un disco
> duro
> propio ( CuentasXCobrar e Inventario ) . Creo que esto tendrá un
> efecto
> positivo ya que el servidor de datos no tiene sistema RAID nivel 5 de
> Stripped sets para mejorar la velocidad de acceso al disco duro.
>
> - Además quiero eliminar una serie de índices que estas tablas tienen
> en
> ellas. Estos índices a primera vista no tienen sentido y no se me
> ocurre
> como la aplicación pueda estar usándolos, sin embargo no deja de
> causarme
> temor eliminar estos índices ( por muy inadecuados que parezcan). Deseo
> eliminar los índices para promover el desempeño en la actualización de
> datos.
>
> Quisiera saber si alguien a tenido una experiencia con estos dos
> métodos de
> afinamiento y conocer si ha tenido buenos resultados. Además me
> gustaría
> escuchar alguna amable sugerencia sobre otros métodos de afinamiento
> que
> pueda utilizar para mejorar el desempeño de la aplicación ( sólo
> recuerden
> que no cuento con la capacidad de modificar los queries ni el diseño de
> la
> aplicación )
>
> saludos y gracias de antemano.
>
> Jorge González
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida