Индексжүүлэх, эрэмбэлэх хоёрын ялгаа

Индексжүүлэх, эрэмбэлэх хоёрын ялгаа
Индексжүүлэх, эрэмбэлэх хоёрын ялгаа

Видео: Индексжүүлэх, эрэмбэлэх хоёрын ялгаа

Видео: Индексжүүлэх, эрэмбэлэх хоёрын ялгаа
Видео: Индекс эрэмбэлэх өгөгдлийн шинжилгээ 2024, Арваннэгдүгээр
Anonim

Индексжүүлэлт нь мэдээллийн сангийн хүснэгтээс өгөгдөл хайх хурдыг сайжруулахад хэрэглэгддэг арга юм. Хүснэгтэд нэг буюу хэд хэдэн баганыг ашиглан индекс үүсгэж болох бөгөөд индексийг тусдаа файлд хадгална. Индексийг өвөрмөц индекс эсвэл өвөрмөц бус индекс хэлбэрээр үүсгэж болно. Эрэмбэлэх гэдэг нь багц дахь зүйлсийг тодорхой дарааллаар байрлуулах үйл явц юм. Хүснэгтийг эрэмбэлэх нь хүснэгтийн хуулбарыг үүсгэх бөгөөд мөрүүд нь эхээс өөр дараалалтай байж болно.

Индексжүүлэх гэж юу вэ?

Индексжүүлэлт нь мэдээллийн сангийн хүснэгтээс өгөгдөл хайх хурдыг сайжруулахад хэрэглэгддэг арга юм. Хүснэгтэд нэг буюу хэд хэдэн баганыг ашиглан индекс үүсгэж болох бөгөөд индексийг тусдаа файлд хадгална. Энэ файл нь мөрүүдийн логик дарааллыг хүснэгтийн физик байрлалын хамт агуулна. Индекс файлд шаардагдах зай нь ихэвчлэн хүснэгтийг хадгалахад шаардагдах зайнаас бага байдаг. Өвөрмөц индексүүд нь хүснэгтэд индексийн давхардсан утгыг агуулахаас сэргийлнэ. Индексжүүлэлт нь өгөгдөл хайлтыг илүү үр дүнтэй болгоно. Дараах SQL мэдэгдлийг анхаарч үзээрэй.

ХААНА хот=‘Нью-Йорк’ ХАМГИЙН ХҮМҮҮСИЙН нэр, овог СОНГОХ

Хэрэв дээрх хайлтыг хотын баганаар үүсгэсэн индексгүй хүснэгтэд гүйцэтгэсэн бол хүснэгтийг бүхэлд нь сканнердаж мөр бүрийн хотын баганыг харвал city=гэсэн бүх оруулгыг олох хэрэгтэй. "Нью-Йорк". Гэхдээ хэрэв хүснэгт нь индекстэй байсан бол "Нью-Йорк"-той оруулгууд олдох хүртэл B модны өгөгдлийн бүтцийг ашиглан дагах болно. Энэ нь хайлтыг илүү үр дүнтэй болгоно.

Эрэмбэлэх гэж юу вэ?

Эрэмбэлэх гэдэг нь багц дахь зүйлсийг тодорхой дарааллаар эрэмблэх процесс юм. Хүснэгтийг эрэмбэлэх нь хүснэгтийн хуулбарыг үүсгэх бөгөөд мөрүүд нь эх хувилбараас өөр дараалалтай байж болно. Шинэ хүснэгтийг хадгалахад анхны хүснэгттэй ижил хэмжээний зай шаардлагатай болно. Энэ шалтгааны улмаас ангилах нь бага ашиглагддаг; Зөвхөн эрэмбэлэгдсэн хүснэгтийн шинэ хуулбар шаардлагатай үед л ашиглагддаг. Мужуудыг ашиглан хаягийг эрэмбэлэх, дараа нь муж доторх хотуудыг ашиглан эрэмбэлэх зэрэг олон талбарыг ашиглан эрэмбэлэхийг зөвшөөрдөг.

Индексжүүлэх болон эрэмбэлэх хоёрын ялгаа нь юу вэ?

Индексжүүлэх болон эрэмбэлэх нь өгөгдлийн хүснэгтэд захиалга үүсгэх хоёр арга юм. Индексжүүлэлт нь зөвхөн мөрүүдийн логик дарааллыг агуулсан индекс файлыг үүсгэх бөгөөд эрэмбэлэх үед эрэмбэлэгдсэн хүснэгтийн хуулбарыг хадгалах ёстой. Ихэвчлэн индекс файл нь эрэмбэлэгдсэн хүснэгтийг хадгалахаас бага зай шаарддаг. Цаашилбал, асуулга явуулах, хайх гэх мэт зарим үйлдлүүд нь индекс бүхий хүснэгтийн тусламжтайгаар илүү хурдан байх болно. Нэмж дурдахад, индексжүүлэх нь хүснэгтийн анхны дарааллыг өөрчлөхгүй, харин эрэмбэлэх нь мөрийн дарааллыг өөрчлөх болно. Мөн хүснэгтүүдийг холбох зэрэг үйлдэл нь индекстэй байх шаардлагатай.

Зөвлөмж болгож буй: