Índex de bases de dades: una introducció per a principiants

Índex de bases de dades: una introducció per a principiants

'Índex de base de dades' fa referència a un tipus especial d'estructura de dades que agilitza la recuperació de registres d'una taula de bases de dades. Els índexs de base de dades asseguren que podeu localitzar i accedir a les dades d'una taula de bases de dades de manera eficient sense haver de cercar cada fila cada vegada que es processa una consulta de base de dades.





Un índex de base de dades es pot comparar amb l’índex d’un llibre. Els índexs a les bases de dades us indiquen el registre que esteu cercant a la base de dades, de la mateixa manera que la pàgina d’índex d’un llibre us indica el tema o el capítol desitjat.





Tot i que, tot i que els índexs de bases de dades són essencials per a una cerca i accés de dades ràpids i eficients, ocupen escriptures i espai de memòria addicionals.





Què és un índex?

Els índexs de base de dades són taules de cerca especials que consten de dues columnes. La primera columna és la clau de cerca i la segona és el punter de dades. Les claus són els valors que voleu cercar i recuperar de la taula de la base de dades i el punter o la referència emmagatzema l'adreça del bloc de disc a la base de dades per a la clau de cerca específica. Els camps clau s’ordenen de manera que acceleri l’operació de recuperació de dades per a totes les vostres consultes.

Per què utilitzar la indexació de bases de dades?

Aquí us mostraré els índexs de la base de dades d’una manera simplificada. Suposem que teniu una taula de base de dades dels vuit empleats que treballen en una empresa i voleu cercar la informació de l’última entrada de la taula. Ara, per trobar l'entrada anterior, heu de cercar cada fila de la base de dades.



Tanmateix, suposem que heu ordenat alfabèticament la taula en funció del nom dels empleats. Per tant, aquí les claus d'indexació es basen en la columna del nom. En aquest cas, si cerqueu l’última entrada, Zack , podeu saltar al centre de la taula i decidir si la nostra entrada arriba abans o després de la columna.

Com ja sabeu, vindrà després de la fila central i podreu dividir de nou les files després de la fila central per la meitat i fer una comparació similar. D'aquesta manera, no cal recórrer cada fila per trobar l'última entrada.





Si l’empresa tingués 1.000.000 d’empleats i l’última entrada fos Zack, hauríeu de buscar 50.000 files per trobar el seu nom. Mentre que, amb la indexació alfabètica, podeu fer-ho en uns quants passos. Ara podeu imaginar la rapidesa amb què es pot fer una cerca i accés a les dades amb la indexació de bases de dades.

Relacionat: 13 Ordres SQL més importants que qualsevol programador hauria de conèixer





Diferents mètodes d'organització de fitxers per a índexs de bases de dades

La indexació depèn en gran mesura del mecanisme d'organització de fitxers utilitzat. Normalment, hi ha dos tipus de mètodes d’organització de fitxers que s’utilitzen en la indexació de bases de dades per emmagatzemar dades. Es comenten a continuació:

1. Fitxer d'índex ordenat: Aquest és el mètode tradicional d’emmagatzematge de dades d’índex. En aquest mètode, els valors clau s’ordenen en un ordre concret. Les dades d’un fitxer d’índex ordenat es poden emmagatzemar de dues maneres.

  • Índex escàs: En aquest tipus d'indexació, es crea una entrada d'índex per a cada registre.
  • Índex dens: En la indexació densa, es crea una entrada d'índex per a alguns registres. Per trobar un registre en aquest mètode, primer heu de trobar el valor de clau de cerca més significatiu de les entrades d'índex que siguin inferiors o iguals al valor de la clau de cerca que esteu cercant.

2. Organització del fitxer Hash: En aquest mètode d'organització de fitxers, una funció hash determina la ubicació o el bloc de disc on s'emmagatzema un registre.

Tipus d’indexació de bases de dades

Generalment hi ha tres mètodes d’indexació de bases de dades. Ells són:

  • Indexació agrupada
  • Indexació no agrupada
  • Indexació de diversos nivells

1. Indexació agrupada

A la indexació en clúster, un sol fitxer pot emmagatzemar més de dos registres de dades. El sistema manté les dades reals en la indexació agrupada en lloc dels indicadors. La cerca és rendible amb la indexació en clúster, ja que emmagatzema totes les dades relacionades al mateix lloc.

com ss snaps sense que ho sàpiguen

Un índex de clusterització utilitza fitxers de dades ordenats per definir-se. A més, unir diverses taules de bases de dades és molt comú amb aquest tipus d’indexació.

També és possible crear un índex basat en columnes no primàries que no siguin úniques per a cada clau. En aquestes ocasions, combina diverses columnes per formar els valors clau únics dels índexs agrupats.

Per tant, en resum, els índexs de clusterització són on s’agrupen tipus de dades similars i se’n creen índexs.

Exemple: Suposem que hi ha una empresa que té més de 1.000 empleats en 10 departaments diferents. En aquest cas, l’empresa hauria de crear una indexació de clústers al seu SGBD per indexar els empleats que treballen al mateix departament.

Cada clúster amb empleats que treballen al mateix departament es definirà com un clúster únic i els indicadors de dades en índexs faran referència al clúster com una entitat sencera.

Relacionat: Què són les claus estrangeres a les bases de dades SQL?

2. Indexació no agrupada

La indexació no agrupada fa referència a un tipus d’indexació en què l’ordre de les files d’índex no és el mateix que la forma en què s’emmagatzemen físicament les dades originals. En canvi, un índex no agrupat apunta a l’emmagatzematge de dades de la base de dades.

Exemple: La indexació no agrupada és similar a un llibre que té una pàgina de contingut ordenat. Aquí, el punter o la referència de dades és la pàgina de contingut ordenat ordenada alfabèticament i les dades reals són la informació de les pàgines del llibre. La pàgina de contingut no emmagatzema la informació de les pàgines del llibre en el seu ordre.

3. Indexació multinivell

La indexació de diversos nivells s’utilitza quan el nombre d’índexs és molt elevat i no pot emmagatzemar l’índex principal a la memòria principal. Com ja sabreu, els índexs de bases de dades inclouen claus de cerca i indicadors de dades. Quan augmenta la mida de la base de dades, també augmenta el nombre d'índexs.

Tot i això, per garantir una operació ràpida de cerca, cal guardar registres d’índexs a la memòria. Si s’utilitza un índex d’un sol nivell quan el nombre d’índex és alt, és poc probable que emmagatzemi aquest índex a la memòria a causa de la seva mida i de diversos accessos.

Aquí és on entra en joc la indexació multinivell. Aquesta tècnica divideix l’índex d’un sol nivell en diversos blocs més petits. Després de descompondre’s, el bloc de nivell exterior es torna tan petit que es pot emmagatzemar fàcilment a la memòria principal.

Relacionat: Com connectar-se a una base de dades MySQL amb Java

Què és la fragmentació de l'índex SQL?

Quan qualsevol ordre de les pàgines d'índex no coincideix amb l'ordre físic del fitxer de dades provoca la fragmentació de l'índex SQL. Inicialment, tots els índexs SQL resideixen sense fragmentació, però a mesura que utilitzeu la base de dades (Insereix / Suprimeix / Alteritza les dades) repetidament, pot causar fragmentació.

A part de la fragmentació de la base de dades, la vostra base de dades també pot afrontar altres problemes vitals com la corrupció de la base de dades. Pot provocar la pèrdua de dades i un lloc web perjudicat. Si feu negocis amb el vostre lloc web, pot ser un cop fatal per a vosaltres.

Compartir Compartir Tweet Correu electrònic Les dades de SQL Server s’han malmès? Proveu de recuperar-lo amb SQL Recovery Toolbox

Recovery Toolbox for SQL Server ajuda a solucionar els fitxers MDF danyats d'un MS SQL Server per a totes les versions.

altres persones poden veure memòries Snapchat?
Llegiu a continuació Temes relacionats
  • Programació
  • SQL
  • Anàlisi de dades
  • base de dades
Sobre l'autor Zadhid A. Powell(16 articles publicats)

Zadhid Powell és un enginyer informàtic que va deixar de codificar per començar a escriure! A més, és venedor digital, entusiasta de la tecnologia, expert en SaaS, lector i seguidor de les tendències de programari. Sovint el trobareu sacsejant els clubs del centre amb la seva guitarra o inspeccionant submarinisme al fons del mar.

Més de Zadhid A. Powell

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us