SQLite хөгжүүлэгчид зэрэгцээ бичих дэмжлэгтэйгээр HC-tree backend хөгжүүлдэг

SQLite төслийн хөгжүүлэгчид мөрийн түвшний түгжээг дэмждэг туршилтын HCtree backend-ийг туршиж эхэлсэн бөгөөд асуулга боловсруулах үед өндөр түвшний параллель байдлыг хангадаг. Шинэ backend нь мэдээллийн санд олон тооны нэгэн зэрэг бичих хүсэлтийг боловсруулах шаардлагатай үйлчлүүлэгч-серверийн системд SQLite ашиглах үр ашгийг дээшлүүлэхэд чиглэгддэг.

SQLite-д өгөгдөл хадгалахад ашигладаг б-модны бүтэц нь энэ төрлийн ачаалалд зориулагдаагүй бөгөөд SQLite-г зөвхөн нэг хэлхээнд бичихийг хязгаарладаг. Туршилтын хувьд хөгжүүлэгчид бичих үйлдлийг зэрэгцүүлэхэд илүү тохиромжтой HC модны бүтцийг хадгалахад ашигладаг өөр шийдлийг боловсруулж эхэлсэн.

Олон үйлдлийг зэрэг гүйцэтгэхийг зөвшөөрөхийн тулд HCtree бичлэг нь хуудасны түвшний түгжээг ашигладаг гүйлгээг хуваах механизмыг ашигладаг бөгөөд MVCC (Олон хувилбарын зэрэгцээ хяналт) -тай төстэй боловч хуудасны багцын оронд түлхүүр болон түлхүүрийн мужид суурилсан гүйлгээний шалгалтыг ашигладаг. Унших, бичих үйлдлүүд нь өгөгдлийн сангийн хормын хувилбартай холбоотой хийгддэг бөгөөд гүйлгээ дууссаны дараа өөрчлөлтүүд үндсэн мэдээллийн санд харагдах болно.

Үйлчлүүлэгчид гурван нээлттэй гүйлгээний үйлдлийг ашиглаж болно:

  • "ЭХЭЛЛЭХ" - гүйлгээ нь бусад үйлчлүүлэгчийн хандалтын мэдээллийг харгалздаггүй. Хэрэв гүйлгээний хүрээнд бичих үйлдлүүд хийгдсэн бол түүнийг гүйцэтгэх явцад мэдээллийн санд өөр бичих үйлдэл байхгүй тохиолдолд л гүйлгээг хийж болно.
  • "BEGIN CONCURRENT" - гүйлгээ нь бусад үйлчлүүлэгчийн хандалтын талаарх мэдээллийг цуглуулдаг. Хэрэв гүйлгээний хүрээнд бичих үйлдлүүд хийгдсэн бол агшин зуурын зургийг үүсгэснээс хойш мэдээллийн санд бусад гүйлгээ хийгдсэн бол гүйлгээг хийж болно.
  • “BEGIN EXCLUSIVE” - гүйлгээг нээсний дараа бусад гүйлгээний үйл ажиллагааг дуусгах хүртэл блоклодог.

HCtree нь мастер-боол хуулбарыг дэмждэг бөгөөд энэ нь гүйлгээг өөр мэдээллийн сан руу шилжүүлэх, хоёрдогч мэдээллийн санг үндсэн мэдээллийн сантай синхрончлох боломжийг олгодог. HCtree нь өгөгдлийн сангийн хэмжээ хязгаарыг мөн арилгадаг - 32 битийн өгөгдлийн хуудасны таниулбарын оронд HCtree 48 битийг ашигладаг бөгөөд энэ нь мэдээллийн сангийн дээд хэмжээг 16 тебибайтаас 1 эксбибайт (сая тебибайт) болгон нэмэгдүүлдэг. HCtree backend-тэй SQLite-ийн гүйцэтгэл нь сонгодог нэг урсгалтай арын хэсгээс багагүй байх төлөвтэй байна. HCtree-ийн дэмжлэгтэй SQLite үйлчлүүлэгчид HC-мод дээр суурилсан мэдээллийн сан болон хуучин SQLite мэдээллийн санд хандах боломжтой болно.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх