ขอให้มีวันศุกร์ที่ดีนะทุกคน! เวลาเหลือน้อยลงเรื่อยๆ ก่อนเปิดหลักสูตร
อยู่ในขั้นตอนการพัฒนา
ใน PostgreSQL 10 เราเห็นการกำเนิดของ "การแบ่งพาร์ติชันแบบประกาศ" ซึ่งเป็นคุณลักษณะที่ออกแบบมาเพื่อแก้ไขปัญหาต่างๆ มากมายที่ไม่สามารถแก้ไขได้โดยใช้วิธีการสืบทอดแบบเก่า สิ่งนี้นำไปสู่เครื่องมือที่ทรงพลังกว่ามากซึ่งทำให้เราสามารถแบ่งข้อมูลในแนวนอนได้!
การเปรียบเทียบคุณสมบัติ
PostgreSQL 11 นำเสนอชุดคุณสมบัติใหม่ที่น่าประทับใจ ซึ่งช่วยปรับปรุงประสิทธิภาพ และทำให้ตารางที่แบ่งพาร์ติชันโปร่งใสต่อแอปพลิเคชันมากขึ้น
1. การใช้การจำกัดข้อยกเว้น
2. เพิ่มเฉพาะโหนด
3. สำหรับตารางที่มีการแบ่งพาร์ติชันซึ่งอ้างอิงถึงตารางที่ไม่มีการแบ่งพาร์ติชันเท่านั้น
4. ดัชนีต้องมีคอลัมน์คีย์ทั้งหมดของพาร์ติชัน
5. ข้อจำกัดมาตราทั้งสองด้านต้องตรงกัน
การปฏิบัติ
เรามีข่าวดีที่นี่ด้วย! เพิ่มวิธีการใหม่แล้ว WHERE
- อัลกอริธึมก่อนหน้านี้ได้ตรวจสอบแต่ละส่วนเพื่อดูว่าสามารถตรงตามเงื่อนไขได้หรือไม่ WHERE
- ส่งผลให้เวลาในการวางแผนเพิ่มขึ้นตามจำนวนส่วนที่เพิ่มขึ้น
ใน 9.6 ด้วยการแบ่งพาร์ติชั่นผ่านการสืบทอด การกำหนดเส้นทางทูเพิลลงในพาร์ติชั่นโดยทั่วไปทำได้โดยการเขียนฟังก์ชันทริกเกอร์ที่มีชุดคำสั่ง IF เพื่อแทรกทูเพิลลงในพาร์ติชันที่ถูกต้อง ฟังก์ชันเหล่านี้อาจดำเนินการได้ช้ามาก ด้วยการเพิ่มการแบ่งพาร์ติชันแบบประกาศในเวอร์ชัน 10 การทำงานนี้จะเร็วขึ้นมาก
เมื่อใช้ตารางแบบแบ่งพาร์ติชันที่มี 100 พาร์ติชัน เราสามารถประเมินประสิทธิภาพของการโหลด 10 ล้านแถวลงในตารางที่มี 1 คอลัมน์ BIGINT และ 5 คอลัมน์ INT
ประสิทธิภาพของการสืบค้นตารางนี้เพื่อค้นหาบันทึกที่จัดทำดัชนีหนึ่งรายการและดำเนินการ DML เพื่อจัดการหนึ่งบันทึก (โดยใช้โปรเซสเซอร์เพียง 1 ตัว):
ที่นี่เราจะเห็นได้ว่าประสิทธิภาพของแต่ละการดำเนินการเพิ่มขึ้นอย่างมากตั้งแต่ PG 9.6 คำขอ SELECT
ดูดีขึ้นมาก โดยเฉพาะพาร์ติชั่นที่สามารถแยกหลายพาร์ติชั่นได้ในระหว่างการวางแผนคิวรี ซึ่งหมายความว่าผู้จัดกำหนดการสามารถข้ามงานจำนวนมากที่ควรทำมาก่อนได้ ตัวอย่างเช่น เส้นทางไม่ได้ถูกสร้างขึ้นสำหรับส่วนที่ไม่จำเป็นอีกต่อไป
ข้อสรุป
การแบ่งพาร์ติชันตารางเริ่มกลายเป็นคุณสมบัติที่ทรงพลังมากใน PostgreSQL ช่วยให้คุณสามารถแสดงข้อมูลออนไลน์ได้อย่างรวดเร็วและออฟไลน์โดยไม่ต้องรอการดำเนินการ DML ที่ช้าและมหาศาลให้เสร็จสิ้น- นอกจากนี้ยังหมายความว่าสามารถจัดเก็บข้อมูลที่เกี่ยวข้องไว้ด้วยกันได้ ซึ่งหมายความว่าคุณสามารถเข้าถึงข้อมูลที่คุณต้องการได้อย่างมีประสิทธิภาพมากขึ้น การปรับปรุงในเวอร์ชันนี้คงเป็นไปไม่ได้หากไม่มีนักพัฒนา ผู้ตรวจสอบ และผู้ที่รับผิดชอบซึ่งทำงานอย่างไม่เหน็ดเหนื่อยกับฟีเจอร์เหล่านี้ทั้งหมด
ขอบคุณพวกเขาทุกคน! PostgreSQL 11 ดูยอดเยี่ยมมาก!
นี่เป็นบทความสั้น ๆ แต่ค่อนข้างน่าสนใจ แบ่งปันความคิดเห็นของคุณและอย่าลืมลงทะเบียน
ที่มา: will.com