Quali risorse esistono per l'ottimizzazione delle prestazioni del database? [chiuso]


214

Quali buone risorse esistono per comprendere l'ottimizzazione del database sui principali motori e far avanzare le tue conoscenze in quell'area?

L'idea di questa domanda è quella di raccogliere il carico di risorse che invariabilmente esistono, in modo che le persone possano avere un "one stop" knowledge shop delle buone risorse approvate dai pari.


SQL generale

PostgreSQL ( wiki ) ( PGsearch )

MySQL

Oracolo

MS SQL Server

Sybase SQL Anywhere

JDBC

Risposte:


31

Il Tom Kyte di Oracle ha un repository fantastico su ogni tipo di problema di prestazioni che si possa immaginare su http://asktom.oracle.com . Di solito si prende il tempo per ricreare problemi specifici e dà spiegazioni molto dettagliate.






5

Ottimizzazione PostgreSQL rapida (ottimizzazione delle query)

Breve lettura, spiega molte cose e 'funziona' un vero esempio che è bello per quelli di noi che imparano meglio in quel modo.

Dopo aver visto il link wiki a PostgreSQL, ho pensato di modificare questo post con i link per i documenti mysql / oracle , non proprio una guida all'ottimizzazione specifica ma entrambe sono buone risorse, specialmente quella mysql. Per l'ottimizzazione e qualsiasi altra funzionalità di ottimizzazione.




3

Vorrei aggiungere che oltre ad avere il tuo database teoricamente ottimizzato, dovresti profilare la tua applicazione usando un profiler che tiene traccia delle chiamate SQL.

Nonostante le tue migliori intenzioni, alcune cattive chiamate entreranno di soppiatto nella tua applicazione e spesso causeranno il 90% dei problemi relativi alle prestazioni.


3
  • Libro: risoluzione dei problemi relativi alle prestazioni Oracle (Antognini Christian)

2

Se stai cercando riferimenti di ottimizzazione delle prestazioni specifici di SQL Server, esiste un carico assoluto di risorse di qualità disponibili online, che vanno dai white paper sull'implementazione di tecnologie specifiche come il partizionamento, ai blog eccellenti che descrivono dettagliatamente le istruzioni passo passo su come ottimizzare le prestazioni di un piattaforma server sql.

La spina spudorata segue: Puoi iniziare la tua ricerca rivedendo l'area di ottimizzazione delle prestazioni del mio blog personale o per eventuali requisiti / problemi specifici di SQL Server sentiti libero di licenziarmi un'e-mail.

Risorse di SQL Server










1

Sono stato abbastanza felice quando ho visto questo modo di vedere rapidamente cosa è successo con un'istruzione SQL che stai sintonizzando in Oracle. Cambia la prima istruzione SQL di seguito nell'istruzione SELECT e mantieni quel suggerimento.

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.

Dove:

  • Le righe elettroniche sono righe stimate.
  • A-Rows sono righe effettive.
  • A-Time è l'ora reale.
  • Buffer è buffer effettivi.

Laddove il piano stimato varia dall'esecuzione effettiva per ordini di grandezza, sai di avere problemi.


0

Per le persone che lavorano con Oracle, consiglio questo link .............

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

Dalle mie esperienze con lo sviluppo di database Oracle, ho scoperto che sviluppare una conoscenza di come usare SQL, come funziona e sapere cosa è disponibile (funzioni fornite, clausole che non sapevi esistessero o migliorate dall'ultima versione) significa Passo molto meno tempo a mettere a punto sql.


0

Comincerei capendo come funziona il database a un livello fondamentale. Come vengono archiviati i dati sul disco, cosa fa la creazione di un indice, come funziona l'ottimizzazione del piano di query, come vengono memorizzati nella cache i piani, quando scadono i piani memorizzati nella cache.

Se riesci a dedicare tutto ciò alla memoria, la maggior parte dei consigli sulla messa a punto sembra ovvia.

Ecco un ottimo libro per MSSQL

Interni di SQL Server




0

Per Microsoft SQL, consiglierei i libri di Kalen Delaney (et al) chiamati "Inside SQL Server". Offrono una buona visione degli interni di SQL Server, consentendo così ai lettori di informarsi sul perché determinate dichiarazioni potrebbero essere più veloci di altre.

All'interno di SQL Server 7.0
All'interno di SQL Server 2000
All'interno di Microsoft SQL Server 2005
Interni di Microsoft SQL Server 2008

C'è anche un libro dedicato all'ottimizzazione delle prestazioni delle query di SQL Server 2008: Ottimizzazione delle prestazioni di SQL Server distillata

Mi piacciono anche i blog di Paul Randal e Kimberly Tripp su SQLSkills.com. Sono pieni di solidi consigli SQL:

Blog di Paul Blog di
Kimberly


0

Per l'ottimizzazione delle prestazioni di SQL Server, Itzik Ben-Gan è una leggenda.

Puoi trovare i suoi numerosi libri dettagliati qui, tutti con il suo solito stile di misurazione empirica per dimostrare il suo caso: http://tsql.solidq.com/books/index.htm

Se stai cercando la soluzione più rapida a un problema t-sql aggiungi la parola "itzik" al termine di ricerca di Google.

Itzik Ben-Gan è stato menzionato più di 600 volte qui su StackOverflow , ma non ci potevo credere di non trovare una sola menzione di lui qui su questa domanda di ottimizzazione delle prestazioni.

Come risorsa aggiuntiva, puoi anche trovare alcuni video di Itzik che parlano di cose relative alle prestazioni qui su YouTube .


0

Siti Oracle

  1. Guida all'ottimizzazione delle prestazioni di 2 giorni http://docs.oracle.com/cd/E11882_01/server.112/e10822/toc.htm
  2. Guida all'ottimizzazione delle prestazioni http://docs.oracle.com/cd/E36909_01/server.1111/e16638/toc.htm

Libri Oracle

  1. Oracle Core: Essentials interni per DBA e sviluppatori di Jonathan Lewis
  2. Architettura Oracle Database Expert: Oracle Database 9i, 10g e 11g Tecniche e soluzioni di programmazione di Thomas Kyte
  3. Ottimizzazione SQL di Dan Tow
  4. Oracle Database 11g Release 2 Suggerimenti e tecniche di ottimizzazione delle prestazioni (Oracle Press) di Richard Niemiec
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.