ทำความเข้าใจ Blob, Queue, Table storage ใน Windows Azure

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

ข้อมูลถูกเก็บไว้ใน Cloud . อย่างไร

โลโก้สีฟ้า

เท่าที่Windows Azureยังคงมีอยู่จะมีรูปแบบการจัดเก็บข้อมูลสี่รูปแบบและ ได้แก่:

  1. การจัดเก็บหยด
  2. เก็บคิว
  3. ที่เก็บของบนโต๊ะ
  4. ไดรฟ์ Windows Azure

ให้เราลองรับคำอธิบายทั่วไปสำหรับแต่ละรายการ!

Blob Storage

Blobเป็นตัวย่อสำหรับวัตถุBinary Large โดยทั่วไป Blob(Basically Blob)คือลำดับของไบต์ ซึ่งเป็นสิ่งที่แอปพลิเคชันต้องการ Blobสามารถเก็บเสียง วิดีโอ ข้อความอีเมล ไฟล์ที่เก็บถาวร ไฟล์ zip หรือเอกสารการประมวลผลคำในลักษณะทั่วไป

ในการใช้ blobs นักพัฒนาจะต้องสร้างคอนเทนเนอร์ตั้งแต่หนึ่งคอนเทนเนอร์ขึ้นไปในบัญชีการจัดเก็บข้อมูลบางบัญชีก่อน แต่ละคอนเทนเนอร์เหล่านี้สามารถเก็บหยดได้ตั้งแต่หนึ่งหยดขึ้นไป ที่เก็บข้อมูล Blob มีอยู่สองประเภท โดยแต่ละประเภทมีฟังก์ชันเฉพาะ:

  1. Block Blob
  2. Page Blob

Blob(Blobs)ถูกจัดเก็บและกำหนดขอบเขตโดยBlob Containers แต่ละ Blob สามารถมีได้สูงสุด 50GB Blob มีชื่อสตริงเฉพาะภายในคอนเทนเนอร์ Blobsสามารถมีข้อมูลเมตาที่เชื่อมโยงกับพวกเขา ซึ่งก็คือคู่และมีขนาดไม่เกิน 8KB ต่อหยด สามารถตั้งค่าข้อมูลเมตาของ Blob แยกจากบิตข้อมูล Blob

เก็บคิว

เป้าหมายหลักของคิวคือการอนุญาตให้มีการสื่อสารระหว่างส่วนต่างๆ ของแอปพลิเคชันWindows Azure กล่าวง่ายๆ ว่าคิว(Queues)แยก อินสแตนซ์ บทบาทเว็บ(Web Role)และอินสแตนซ์บทบาทของผู้ปฏิบัติงาน(Worker Role Instances) - คิวประกอบด้วยข้อความจำนวนมาก - ชื่อคิวถูกกำหนดขอบเขตโดยบัญชี

  • ไม่มีการจำกัดจำนวนข้อความที่เก็บไว้ในคิว
  • ข้อความจะถูกเก็บไว้อย่างมากที่สุดหนึ่งสัปดาห์ ระบบจะเก็บขยะข้อความที่มีอายุเกินหนึ่งสัปดาห์
    คิวสามารถมีข้อมูลเมตาที่เชื่อมโยงกับคิวได้ ข้อมูลเมตา(Metadata)อยู่ในรูปของคู่ และมีขนาดสูงสุด 8KB ต่อคิว
  • คิวทั่วไปอาจเสนอความหมายของ 'เข้าก่อนออกก่อน'; ในทางกลับกัน คิวในWindows Azureไม่ได้รับประกันว่าจะสามารถส่งข้อความเดียวได้หลายครั้ง

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

ที่เก็บของบนโต๊ะ

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

แม้ว่าตารางจะจัดเก็บข้อมูลที่มีโครงสร้าง แต่ก็ไม่ได้จัดเตรียมวิธีการใดๆ เพื่อแสดงความสัมพันธ์ระหว่างข้อมูล ซึ่งบางครั้งเรียกว่าฐานข้อมูลNoSQL ตารางในWindows Azureเปิดพื้นที่สำหรับความสามารถในการปรับขนาด นักพัฒนาควรออกแบบแอปพลิเคชันที่ปรับขนาดได้ เพียง(Just)ออกแบบตารางและเพิ่มเอนทิตีบางอย่าง จากนั้นWindows Azureจะดูแลส่วนที่เหลือ

เป้าหมายที่นี่คือการช่วยให้นักพัฒนาให้ความสำคัญกับการพัฒนาแอปพลิเคชันมากกว่ากังวลเกี่ยวกับการจัดการข้อมูลขนาดใหญ่



About the author

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



Related posts