tiempo respuesta rendimiento optimizar memoria mejorar datos consultas con aumentar mysql sql-server database oracle postgresql
eBook: SQL Server de alto rendimiento

mysql - respuesta - optimizar myisam



¿Qué recursos existen para la optimización del rendimiento de la base de datos? (27)

http://explain.depesz.com/

Vale la pena leer el capítulo completo de Consejos de rendimiento en la documentación de PostgreSQL.

¿Qué buenos recursos existen para comprender el ajuste de la base de datos en los principales motores y avanzar en su conocimiento en esa área?

La idea de esta pregunta es recopilar la carga de recursos que existe invariablemente, de modo que las personas puedan tener una tienda de conocimiento "integral" de los recursos buenos y aprobados por pares.

SQL general

PostgreSQL ( wiki ) ( PGsearch )

MySQL

Oráculo

MS SQL Server

Sybase SQL Anywhere

JDBC



A veces es necesario saber cómo solucionar el problema una vez que se identifica. Esto mostrará formas de reemplazar un cursor de mal rendimiento con una operación basada en un conjunto: http://wiki.lessthandot.com/index.php/Cursors_and_How_to_Avoid_Them

Era específico de SQL Server, pero muchas de las técnicas también se pueden trasladar a otros dbs.



Comenzaría por entender cómo funciona la base de datos en un nivel fundamental. Cómo se almacenan los datos en el disco, qué hace la creación de un índice, cómo funciona la optimización de los planes de consulta, cómo se almacenan los planes en la memoria caché, cuándo caducan los planes almacenados en la memoria caché.

Si puede guardar todo eso en la memoria, la mayoría de los consejos sobre la afinación parecen obvios.

Aquí hay un gran libro para MSSQL

SQL Server Internals


El propio Tom Kyte de Oracle tiene un repositorio fantástico para cada tipo de problema de rendimiento imaginable en http://asktom.oracle.com . Generalmente se toma el tiempo para recrear problemas específicos y da explicaciones muy detalladas.



Me sentí muy feliz cuando vi esta manera de ver rápidamente lo que sucedió con una declaración SQL que está ajustando bajo Oracle. Cambie la primera instrucción SQL a continuación a su instrucción SELECT y mantenga esa sugerencia allí.

SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL; SELECT * FROM TABLE(dbms_xplan.display_cursor( NULL, NULL, ''RUNSTATS_LAST'')) ; PLAN_TABLE_OUTPUT ----------------------------------------------------- SQL_ID 5z36y0tq909a8, child number 0 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ * FROM DUAL Plan hash value: 272002086 --------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | Reads | --------------------------------------------------------------------------------------------- | 1 | TABLE ACCESS FULL| DUAL | 1 | 1 | 1 |00:00:00.02 | 3 | 2 | --------------------------------------------------------------------------------------------- 12 rows selected.

Dónde:

  • E-Rows es filas estimadas.
  • A-Rows es filas reales.
  • A-Time es el tiempo real.
  • Buffers es buffers reales.

Cuando el plan estimado varía de la ejecución real por órdenes de magnitud, usted sabe que tiene problemas.


Para Microsoft SQL, recomendaría los libros de Kalen Delaney (et al) llamados "Inside SQL Server". Ofrecen una buena visión de los aspectos internos de SQL Server, lo que permite a los lectores aprender por qué las declaraciones particulares pueden ser más rápidas que otras.

Dentro de SQL Server 7.0
Dentro de SQL Server 2000
Dentro de Microsoft SQL Server 2005
Internas de Microsoft SQL Server 2008

También hay un libro dedicado al ajuste de rendimiento de las consultas de SQL Server 2008: Ajuste de rendimiento de SQL Server Destilado

También me gustan los blogs de Paul Randal y Kimberly Tripp en SQLSkills.com. Están llenos de consejos sólidos de SQL:

Blog de paul
El blog de kimberly





Para el ajuste de rendimiento de SQL Server, Itzik Ben-Gan es una leyenda.

Puede encontrar sus muchos libros detallados aquí, todos con su estilo usual de medición empírica para probar su caso: http://tsql.solidq.com/books/index.htm

Si está buscando la solución más rápida para un problema de t-sql, agregue la palabra ''itzik'' a su término de búsqueda de Google.

Itzik Ben-Gan ha sido mencionado más de 600 veces aquí en , pero no podía creer que no encontré ni una sola mención de él aquí en esta pregunta de ajuste de rendimiento.

Como recurso adicional, también puede encontrar algunos videos de Itzik hablando sobre temas relacionados con el rendimiento aquí en youtube .


Para las personas que trabajan con Oracle, recomiendo este enlace .............

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/toc.htm

A partir de mis experiencias con el desarrollo de bases de datos Oracle, he descubierto que desarrollar un conocimiento de cómo usar SQL, cómo funciona y saber qué está disponible (funciones proporcionadas, cláusulas que no sabía que existían o mejoradas desde la última versión) significa Paso mucho menos tiempo teniendo que ajustar sql.




Si está buscando referencias de ajuste de rendimiento específicas de SQL Server, hay una carga total de recursos de calidad disponibles en línea, que van desde documentos técnicos sobre implementación de tecnologías específicas como particiones, hasta excelentes blogs que detallan instrucciones paso a paso sobre cómo ajustar el rendimiento a plataforma de servidor sql.

A continuación, se muestra el enchufe descarado: puede comenzar su investigación revisando el área de ajuste de rendimiento de mi blog personal, o si tiene algún problema o problema específico de SQL Server, no dude en enviarme un correo electrónico.

Recursos de SQL Server



Sitios de oráculo

  1. Guía de ajuste de rendimiento de 2 días http://docs.oracle.com/cd/E11882_01/server.112/e10822/toc.htm
  2. Guía de ajuste de rendimiento http://docs.oracle.com/cd/E36909_01/server.1111/e16638/toc.htm

Libros de oráculo

  1. Oracle Core: Internos Esenciales para DBAs y Desarrolladores por Jonathan Lewis
  2. Arquitectura experta de la base de datos Oracle: soluciones y técnicas de programación de Oracle Database 9i, 10g y 11g por Thomas Kyte
  3. Sintonización de SQL por Dan Tow
  4. Oracle Database 11g Release 2 Performance Tuning Tips & Techniques (Oracle Press) por Richard Niemiec


Yo agregaría que además de tener su base de datos sintonizada teóricamente, debería perfilar su aplicación usando un generador de perfiles que rastree las llamadas SQL.

A pesar de sus mejores intenciones, algunas malas llamadas entrarán sigilosamente en su aplicación y con frecuencia causarán el 90% de sus problemas relacionados con el rendimiento.



Optimización rápida de PostgreSQL (optimización de consultas)

La lectura corta, explica muchas cosas bien y ''funciona'' un ejemplo real que es bueno para aquellos de nosotros que aprendemos mejor de esa manera.

Después de ver el enlace wiki a PostgreSQL, pensé que editaría esta publicación con enlaces para documentos mysql / oracle , no realmente una guía de optimización específicamente, pero ambos son buenos recursos, especialmente el de mysql. Para la optimización y cualquier otra característica de ajuste.





  • Libro: Solución de problemas de rendimiento de Oracle (Antognini Christian)