เมตริกการจัดเก็บวัตถุใหม่

เมตริกการจัดเก็บวัตถุใหม่ป้อมปราการบิน โดย Nele-Diel

คำสั่งการจัดเก็บอ็อบเจ็กต์ S3 ที่เก็บข้อมูลบนคลาวด์ Mail.ru แปลบทความเกี่ยวกับเกณฑ์ที่สำคัญในการเลือกที่เก็บวัตถุ ต่อไปนี้เป็นข้อความจากมุมมองของผู้เขียน

เมื่อพูดถึงพื้นที่จัดเก็บอ็อบเจ็กต์ ผู้คนมักนึกถึงสิ่งเดียวเท่านั้น: ราคาต่อ TB/GB แน่นอนว่าการวัดนี้มีความสำคัญ แต่มันทำให้แนวทางด้านเดียวและเท่ากับการจัดเก็บอ็อบเจ็กต์ด้วยเครื่องมือจัดเก็บข้อมูลถาวร นอกจากนี้ วิธีการนี้ยังช่วยลดความสำคัญของพื้นที่จัดเก็บอ็อบเจ็กต์สำหรับกลุ่มเทคโนโลยีระดับองค์กรอีกด้วย

เมื่อเลือกที่เก็บข้อมูลออบเจ็กต์คุณควรคำนึงถึงคุณสมบัติห้าประการ:

  • ผลการปฏิบัติงาน
  • ความสามารถในการขยายขนาด;
  • รองรับ S3;
  • การตอบสนองต่อความล้มเหลว
  • ความซื่อสัตย์.

คุณลักษณะทั้งห้านี้เป็นเกณฑ์ชี้วัดใหม่สำหรับพื้นที่จัดเก็บอ็อบเจ็กต์ พร้อมด้วยต้นทุน ลองดูพวกเขาทั้งหมด

การปฏิบัติ

ที่เก็บอ็อบเจ็กต์แบบดั้งเดิมขาดประสิทธิภาพ ผู้ให้บริการเสียสละอย่างต่อเนื่องเพื่อแสวงหาราคาที่ต่ำ อย่างไรก็ตาม ด้วยการจัดเก็บวัตถุสมัยใหม่ สิ่งต่างๆ จึงแตกต่างออกไป

ระบบจัดเก็บข้อมูลต่างๆ เข้าใกล้หรือเกินกว่าความเร็วของ Hadoop ข้อกำหนดสมัยใหม่สำหรับความเร็วในการอ่านและเขียน: ตั้งแต่ 10 GB/s สำหรับฮาร์ดไดรฟ์ จนถึง 35 GB/s สำหรับ NVMe 

ปริมาณการประมวลผลนี้เพียงพอสำหรับ Spark, Presto, Tensorflow, Teradata, Vertica, Splunk และเฟรมเวิร์กการประมวลผลสมัยใหม่อื่นๆ ในสแต็กการวิเคราะห์ ความจริงที่ว่าฐานข้อมูล MPP ได้รับการกำหนดค่าสำหรับพื้นที่จัดเก็บอ็อบเจ็กต์ แสดงให้เห็นว่ามีการใช้เป็นที่เก็บข้อมูลหลักมากขึ้น

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

นี่คือประเด็นสำคัญ: ตัวชี้วัดประสิทธิภาพใหม่คือปริมาณงาน ไม่ใช่เวลาแฝง ข้อมูลนี้จำเป็นสำหรับข้อมูลในวงกว้างและเป็นบรรทัดฐานในโครงสร้างพื้นฐานข้อมูลสมัยใหม่

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

ความสามารถในการปรับขนาด

ความสามารถในการปรับขนาดหมายถึงจำนวนเพตะไบต์ที่พอดีกับเนมสเปซเดียว สิ่งที่ผู้ขายอ้างว่าเป็นความสามารถในการปรับขนาดได้ง่าย แต่ไม่ได้กล่าวไว้ก็คือ เมื่อพวกเขาขยายขนาด ระบบเสาหินขนาดใหญ่จะเปราะบาง ซับซ้อน ไม่เสถียร และมีราคาแพง

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

เมื่อ Building Block มีขนาดเล็ก ก็จะปรับให้เหมาะสมได้ง่ายขึ้นสำหรับการรักษาความปลอดภัย การควบคุมการเข้าถึง การจัดการนโยบาย การจัดการวงจรการใช้งาน และการอัปเดตที่ไม่รบกวน และมั่นใจในประสิทธิภาพการผลิตในที่สุด ขนาดของ Building Block ขึ้นอยู่กับความสามารถในการควบคุมบริเวณที่เกิดความล้มเหลว ซึ่งเป็นวิธีการสร้างระบบที่มีความยืดหยุ่นสูง

การเช่าหลายรายการมีลักษณะเฉพาะหลายประการ แม้ว่ามิติข้อมูลจะพูดถึงวิธีที่องค์กรให้การเข้าถึงข้อมูลและแอปพลิเคชัน แต่ยังหมายถึงแอปพลิเคชันและตรรกะเบื้องหลังการแยกแอปพลิเคชันออกจากกัน

ลักษณะของแนวทางสมัยใหม่กับลูกค้าหลายราย:

  • ในระยะเวลาอันสั้น จำนวนลูกค้าสามารถเติบโตจากหลายร้อยเป็นหลายล้านราย
  • ลูกค้าจะถูกแยกออกจากกันโดยสิ้นเชิง ซึ่งช่วยให้สามารถเรียกใช้ซอฟต์แวร์เดียวกันในเวอร์ชันที่แตกต่างกัน และจัดเก็บออบเจ็กต์ที่มีการกำหนดค่า สิทธิ์ คุณลักษณะ ความปลอดภัย และระดับการบำรุงรักษาที่แตกต่างกัน นี่เป็นสิ่งจำเป็นเมื่อปรับขนาดเป็นเซิร์ฟเวอร์ การอัปเดต และภูมิศาสตร์ใหม่
  • พื้นที่จัดเก็บข้อมูลสามารถปรับขนาดได้อย่างยืดหยุ่น มีการจัดหาทรัพยากรตามความต้องการ
  • การดำเนินการแต่ละครั้งจะถูกควบคุมโดย API และเป็นอัตโนมัติโดยไม่มีการแทรกแซงของมนุษย์
  • ซอฟต์แวร์สามารถโฮสต์ในคอนเทนเนอร์และใช้ระบบประสานมาตรฐาน เช่น Kubernetes

รองรับ S3

Amazon S3 API เป็นมาตรฐานที่แท้จริงสำหรับพื้นที่จัดเก็บอ็อบเจ็กต์ ผู้จำหน่ายซอฟต์แวร์จัดเก็บข้อมูลออบเจ็กต์ทุกรายอ้างว่าเข้ากันได้ ความเข้ากันได้กับ S3 เป็นแบบไบนารี: ไม่ว่าจะมีการใช้งานอย่างสมบูรณ์หรือไม่ก็ตาม

ในทางปฏิบัติ มีสถานการณ์ Edge หลายร้อยหรือหลายพันสถานการณ์ที่เกิดข้อผิดพลาดเมื่อใช้พื้นที่จัดเก็บอ็อบเจ็กต์ โดยเฉพาะจากผู้ให้บริการซอฟต์แวร์และบริการที่เป็นกรรมสิทธิ์ กรณีการใช้งานหลักคือการเก็บถาวรหรือสำรองข้อมูลโดยตรง ดังนั้นจึงมีเหตุผลบางประการในการเรียก API กรณีการใช้งานเป็นแบบเดียวกัน

ซอฟต์แวร์โอเพ่นซอร์สมีข้อได้เปรียบที่สำคัญ โดยครอบคลุมสถานการณ์ Edge ส่วนใหญ่ โดยพิจารณาจากขนาดและความหลากหลายของแอปพลิเคชัน ระบบปฏิบัติการ และสถาปัตยกรรมฮาร์ดแวร์

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

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

และหมายเหตุเพิ่มเติมเล็กน้อยเกี่ยวกับโอเพ่นซอร์สและ S3 

หากคุณกำลังใช้งานแอปพลิเคชันข้อมูลขนาดใหญ่ S3 SELECT จะปรับปรุงประสิทธิภาพและประสิทธิผลตามลำดับความสำคัญ ทำสิ่งนี้ได้โดยใช้ SQL เพื่อดึงข้อมูลเฉพาะออบเจ็กต์ที่คุณต้องการจากที่เก็บข้อมูล

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

สุดท้าย การใช้งาน S3 จะต้องรองรับ API การเข้ารหัสฝั่งเซิร์ฟเวอร์ของ Amazon S3: SSE-C, SSE-S3, SSE-KMS ยิ่งไปกว่านั้น S3 ยังรองรับการป้องกันการงัดแงะที่ปลอดภัยอย่างแท้จริง 

การตอบสนองต่อความล้มเหลว

ตัวชี้วัดที่มักถูกมองข้ามคือวิธีที่ระบบจัดการกับความล้มเหลว ความล้มเหลวเกิดขึ้นได้จากหลายสาเหตุ และพื้นที่เก็บข้อมูลอ็อบเจ็กต์ต้องจัดการทั้งหมด

ตัวอย่างเช่น มีจุดล้มเหลวจุดเดียว ค่าเมตริกนี้เป็นศูนย์

น่าเสียดายที่ระบบจัดเก็บข้อมูลอ็อบเจ็กต์จำนวนมากใช้โหนดพิเศษที่ต้องเปิดใช้งานเพื่อให้คลัสเตอร์ทำงานได้อย่างถูกต้อง ซึ่งรวมถึงโหนดชื่อหรือเซิร์ฟเวอร์ข้อมูลเมตา ซึ่งทำให้เกิดความล้มเหลวเพียงจุดเดียว

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

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

ความล้มเหลวมักได้รับการทดสอบภายใต้โหลด แต่จำเป็นต้องมีการทดสอบดังกล่าว การจำลองความล้มเหลวของโหลดจะแสดงต้นทุนทั้งหมดที่เกิดขึ้นหลังจากความล้มเหลว

ความสม่ำเสมอ

คะแนนความสม่ำเสมอ 100% เรียกอีกอย่างว่าความสอดคล้องที่เข้มงวด ความสม่ำเสมอเป็นองค์ประกอบสำคัญของระบบจัดเก็บข้อมูล แต่ความสม่ำเสมอที่แข็งแกร่งนั้นหาได้ยาก ตัวอย่างเช่น Amazon S3 ListObject ไม่สอดคล้องกันอย่างเคร่งครัด แต่จะสอดคล้องกันในตอนท้ายเท่านั้น

ความสม่ำเสมอที่เข้มงวดหมายถึงอะไร? สำหรับการดำเนินการทั้งหมดหลังจากการดำเนินการ PUT ที่ได้รับการยืนยัน จะต้องเกิดสิ่งต่อไปนี้:

  • ค่าที่อัปเดตจะปรากฏให้เห็นเมื่ออ่านจากโหนดใดๆ
  • การอัปเดตได้รับการป้องกันจากความซ้ำซ้อนของโหนดที่ล้มเหลว

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

ข้อสรุป

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

เกี่ยวกับพื้นที่จัดเก็บออบเจ็กต์ Mail.ru Cloud Solutions: สถาปัตยกรรม S3 3 ปีแห่งวิวัฒนาการของ Mail.ru Cloud Storage.

มีอะไรให้อ่านอีก:

  1. ตัวอย่างของแอปพลิเคชันที่ขับเคลื่อนด้วยเหตุการณ์ซึ่งอิงตาม webhooks ใน Mail.ru Cloud Solutions ของพื้นที่จัดเก็บอ็อบเจ็กต์ S3.
  2. มากกว่า Ceph: พื้นที่เก็บข้อมูลบล็อกคลาวด์ MCS 
  3. การทำงานกับพื้นที่จัดเก็บออบเจ็กต์ Mail.ru Cloud Solutions S3 เป็นระบบไฟล์.
  4. ช่อง Telegram ของเราพร้อมข่าวสารเกี่ยวกับการอัปเดตพื้นที่จัดเก็บข้อมูล S3 และผลิตภัณฑ์อื่นๆ

ที่มา: will.com

เพิ่มความคิดเห็น