Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

Oracle Exadata และคุณสมบัติดัชนีหน่วยเก็บข้อมูล

ระบบ Oracle® Exadata® แนะนำดัชนีการจัดเก็บข้อมูล ซึ่งปรับปรุงประสิทธิภาพของฐานข้อมูล ดัชนีหน่วยเก็บข้อมูลคือที่เก็บโครงสร้างในหน่วยความจำที่มีคีย์สถิติ ดัชนีหน่วยเก็บข้อมูลนี้ช่วยให้ Exadata เร่งความเร็วการดำเนินการ I/O ของดิสก์และการสืบค้นโดยตรวจสอบดัชนีก่อนเพื่อค้นหาข้อมูลที่เกี่ยวข้องแทนที่จะอ่านทุกแถว

ข้อพิจารณาที่สำคัญประการหนึ่งเกี่ยวกับดัชนีหน่วยเก็บข้อมูลคือ เพื่อให้ Exadata สร้างดัชนีการจัดเก็บข้อมูล I/O ที่ประหยัด ระบบจำเป็นต้องเขียนข้อมูลในดัชนีเหล่านี้ไปยังพื้นที่เก็บข้อมูลของดัชนี กล่าวอีกนัยหนึ่ง ที่จะใช้ ข้อมูลดัชนีหน่วยเก็บข้อมูลจำเป็นต้องเตรียมบนโครงสร้างหน่วยความจำดัชนีภูมิภาคของเซิร์ฟเวอร์เซลล์ เมื่อคุณเรียกใช้การสืบค้นข้อมูลเป็นครั้งแรก คุณจะไม่เห็นดัชนีการจัดเก็บข้อมูล I/O ที่ประหยัดได้ เนื่องจากดัชนีภูมิภาคไม่มีข้อมูลที่เกี่ยวข้อง

วิธีการทำงานของดัชนีหน่วยเก็บข้อมูล

เป้าหมายหลักของดัชนีการจัดเก็บข้อมูลคือการลดจำนวนดิสก์ I/O ที่จำเป็นสำหรับคำขอบริการสำหรับ Exadata Smart Scan เมื่อพิจารณาจากแถวฐานข้อมูลจริงที่สแกนแล้ว คุณสามารถวัดการประหยัด I/O ที่ได้มาจากการใช้ดัชนีหน่วยเก็บข้อมูล ดัชนีหน่วยเก็บข้อมูลถูกใช้ระหว่างการดำเนินการอ่านเส้นทางตรง เมื่อแบบสอบถามมีเพรดิเคต (นั่นคือ ส่วนคำสั่ง WHERE) และการจัดการ AutomaticStorage พื้นฐาน ( กลุ่มดิสก์ ASM) มี cell.smart_scan_capable=TRUE ชุดแอตทริบิวต์ กล่าวอีกนัยหนึ่ง ดัชนีหน่วยเก็บข้อมูลช่วยเสริมคำสั่ง Exadata Smart Scan forSQL ด้วยเพรดิเคตการสืบค้น นอกจากนี้ ดัชนีพื้นที่เก็บข้อมูลยังช่วยประหยัดประสิทธิภาพได้มากที่สุดเมื่อข้อมูลของคุณมีการจัดลำดับอย่างดีตามคอลัมน์ในเพรดิเคตการสืบค้นของคุณ

สถาปัตยกรรม Oracle Exadata

จากมุมมองของการออกแบบ ดัชนีหน่วยเก็บข้อมูลแตกต่างจากดัชนี Oracle B*Tree ดั้งเดิมหรือดัชนีประเภทอื่นๆ ดัชนีหน่วยเก็บข้อมูลไม่ใช่โครงสร้างทางกายภาพที่จัดเก็บเป็นกลุ่มภายในฐานข้อมูลของคุณ แต่เป็นโครงสร้างหน่วยความจำที่อยู่ในเซลล์จัดเก็บข้อมูล Exadata แม้ว่าเป้าหมายของดัชนีดั้งเดิมคือการช่วย Oracle ในการค้นหาแถวในตารางอย่างรวดเร็ว เป้าหมายของดัชนีหน่วยเก็บข้อมูลคือการจัดเตรียมวิธีที่มีประสิทธิภาพมากในการสั่งซอฟต์แวร์บริการเซลล์ให้ข้ามแถวฐานข้อมูลทางกายภาพ อ่านถ้าค่าในดัชนีหน่วยเก็บข้อมูลระบุว่ามีการร้องขอ ไม่มีข้อมูลอยู่ภายในแถวเหล่านั้น

ถ้าข้อมูลในพื้นที่จัดเก็บมีการจัดลำดับอย่างดีตามคอลัมน์ที่มักใช้ในเพรดิเคตการสืบค้น ดัชนีหน่วยเก็บข้อมูลจะเปิดใช้งานกระบวนการ Cell Server (CELLSRV) เพื่อข้ามคำขอฟิสิคัล I/O และบันทึกดิสก์ I/O ไบต์ทางกายภาพของ I/O ของเซลล์ที่บันทึกโดยดัชนีหน่วยเก็บข้อมูลเป็นสถิติระบบที่คุณสามารถใช้เพื่อวัดประโยชน์ของการประหยัด I/O นี้

ในทางกลับกัน หากข้อมูลไม่ได้รับการจัดลำดับอย่างดี ดัชนีหน่วยเก็บข้อมูลจะมีประโยชน์อย่างจำกัดหรือไม่มีประโยชน์ เนื่องจากพื้นที่จัดเก็บแต่ละส่วนมีความเป็นไปได้สูงที่จะมีค่าที่เป็นไปได้มากมายสำหรับคอลัมน์ที่กำหนดหรือคำค้นหา เช่นเดียวกับดัชนี B*Tree แบบเดิม การจัดกลุ่มเป็นสิ่งสำคัญในการพิจารณาดัชนีหน่วยเก็บข้อมูล ข้อเท็จจริงที่น่าสนใจประการหนึ่งเกี่ยวกับดัชนีการจัดเก็บคือกระบวนการ CELLSVR ของ Exadata จะใช้พวกมันก็ต่อเมื่อค่าเพรดิเคตในเคียวรีอยู่นอกค่าสูงและค่าต่ำที่ติดตามในดัชนีภูมิภาคสำหรับแต่ละพื้นที่จัดเก็บ โดยไม่คำนึงว่าพื้นที่จัดเก็บนั้นมีข้อมูลอยู่ภายในช่วงที่ติดตามจริงหรือไม่

พิจารณาตัวอย่างที่พื้นที่จัดเก็บมีข้อมูลสำหรับสิบแถวใน atable ภายในสิบแถวนี้ สมมติว่ามีคอลัมน์ชื่อ FIRST_NAME และภายในคอลัมน์นี้ ภูมิภาคประกอบด้วยแถวที่มี FIRST_NAME ซึ่งประกอบด้วย "john", "anto", "max", "leigh", "theo", "rachel", "lauren", "bob", "denise" และ “เจน”. หากคุณออกข้อความค้นหาเพื่อค้นหา FIRST_NAME="chris" ดัชนีพื้นที่เก็บข้อมูลที่มีอยู่สำหรับตารางนี้จะไม่ตัดสิทธิ์การเข้าถึงภูมิภาคนี้เนื่องจาก "chris" อยู่ระหว่าง "anto" และ "theo" ตามตัวอักษร อย่างไรก็ตาม หากคุณค้นหาจาก FIRST_NAME="victor" , CELLSVR จะข้าม I/O จริงของพื้นที่จัดเก็บข้อมูลนี้ เนื่องจากค่าอยู่นอกค่าสูงและต่ำ

กล่าวโดยย่อ หมายความว่าฟังก์ชันดัชนีหน่วยเก็บข้อมูลสามารถส่งคืนผลบวกปลอม (โดยคำนึงถึงการอนุญาตให้ออกคำขอ I/O) แต่จะไม่ส่งคืนค่าลบที่เป็นเท็จ

การข้าม I/O เท่ากับการข้ามการอ่านจริงและการข้ามการอ่านจริงช่วยประหยัดเวลา รูปภาพต่อไปนี้แสดงการแทนค่าตรรกะของการทำงานของดัชนีพื้นที่เก็บข้อมูล:

Oracle Exadata และคุณสมบัติดัชนีหน่วยเก็บข้อมูล

ที่มาของรูปภาพ :Oracle Exadata Recipes โดย John Clarke

บทสรุป

Exadata จะรักษาดัชนีการจัดเก็บตามเวลาโดยอัตโนมัติในการใช้งานแอปพลิเคชันของคุณ ไม่มีอะไรที่ Exadata Database Machine Administrator (DMA) สามารถทำได้เพื่อส่งผลต่อพฤติกรรมของดัชนีการจัดเก็บข้อมูลภายนอกที่อาจสั่งข้อมูลของคุณเพื่อส่งเสริมการใช้งานหรือเปลี่ยนเพรดิเคตการสืบค้นของแอปพลิเคชันของคุณ

ลองใช้ดัชนีพื้นที่เก็บข้อมูลในสถานการณ์ต่อไปนี้:

  • ระหว่างการดำเนินการอ่านเส้นทางตรง
  • ด้วยการสแกนอัจฉริยะ
  • เมื่อข้อความค้นหามีภาคแสดง

Storage Index เป็นคุณลักษณะที่ชาญฉลาดที่สุดในผลิตภัณฑ์ Oracle Exadata และช่วยให้คุณค้นหาข้อมูลได้อย่างรวดเร็วและเหมาะสมที่สุด

ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม

เพิ่มประสิทธิภาพสภาพแวดล้อมของคุณด้วยการดูแลระบบ การจัดการ และการกำหนดค่าจากผู้เชี่ยวชาญ

บริการแอปพลิเคชันของ Rackspace(RAS) ผู้เชี่ยวชาญจะให้บริการแบบมืออาชีพและที่มีการจัดการในแอปพลิเคชันที่หลากหลาย:

  • แพลตฟอร์มอีคอมเมิร์ซและประสบการณ์ดิจิทัล
  • การวางแผนทรัพยากรองค์กร (ERP)
  • ระบบธุรกิจอัจฉริยะ
  • การจัดการลูกค้าสัมพันธ์ของ Salesforce (CRM)
  • ฐานข้อมูล
  • อีเมลโฮสติ้งและประสิทธิภาพการทำงาน

เราจัดส่ง:

  • ความเชี่ยวชาญที่เป็นกลาง :เราลดความซับซ้อนและเป็นแนวทางในการสร้างสรรค์สิ่งใหม่ของคุณ โดยมุ่งเน้นที่ความสามารถที่มอบคุณค่าในทันที
  • ประสบการณ์สุดคลั่ง ™:เรารวมกระบวนการก่อน เทคโนโลยีที่สอง®แนวทางพร้อมการสนับสนุนทางเทคนิคเฉพาะเพื่อมอบโซลูชันที่ครอบคลุม
  • ผลงานที่ยอดเยี่ยม :เราใช้ประสบการณ์ระบบคลาวด์ที่ครอบคลุมเพื่อช่วยคุณเลือกและปรับใช้เทคโนโลยีที่เหมาะสมบนระบบคลาวด์ที่เหมาะสม
  • ส่งไว :เราพบคุณในที่ที่คุณอยู่ในการเดินทางของคุณและปรับความสำเร็จของเราไปพร้อมกับคุณ

แชทเลยเพื่อเริ่มต้น