Sobes.tech
Senior

Ի՞նչ տեսակների ինդեքսներ կան և ինչպես հասկանալ, որ ինդեքսը անհրաժեշտ է։

sobes.tech AI

Պատասխան AI-ից

Տարբեր տեսակի ինդեքսներ կան, որոնցից հիմնականներն են.

  • B-Tree ինդեքս — ամենատարածվածը, հարմար է արագ որոնումների, դասավորության և միջակայքային հարցումների համար:
  • Hash ինդեքս — արդյունավետ է հստակ որոնումների համար բանալիով, բայց չի աջակցում միջակայքային հարցումներ:
  • Bitmap ինդեքս — օգտագործվում է ցածր կարդինալությամբ սյունակների համար (փոքր թվով եզակի արժեքներ), հաճախ՝ վերլուծական տվյալների բազաներում:
  • Լրացուցիչ տեքստային ինդեքս — արագ տեքստային որոնումների համար:

Որպեսզի հասկանալ, արդյոք անհրաժեշտ է ինդեքս, կարող եք նկատել հետևյալ նշանները:

  • հաճախակի հարցումներ որոշ սյունակների վրա ֆիլտրով կամ դասավորությամբ:
  • դանդաղ SELECT գործողություններ, հատկապես մեծ տվյալների ծավալով:
  • հարցման կատարման պլանը ցույց է տալիս ամբողջական սեղանի սկան (Full Table Scan):

SQL-ում B-Tree ինդեքս ստեղծելու օրինակ:

CREATE INDEX idx_user_email ON users(email);

Ինդեքսը արագացնի օգտվողների որոնումը էլեկտրոնային փոստով, եթե այս սյունակը հաճախ օգտագործվում է WHERE պայմաններում։