ตามบทความนี้ใน Haystack ของ Facebook:
" เนื่องจากวิธีที่เครื่องใช้ NAS จัดการเมตาดาต้าของไดเรกทอรีการวางไฟล์หลายพันไฟล์ในไดเรกทอรีนั้นไม่มีประสิทธิภาพอย่างมากเนื่องจากบล็อกไดเร็กตอรี่ของไดเรกทอรีนั้นใหญ่เกินไปที่จะถูกแคชได้อย่างมีประสิทธิภาพโดยอุปกรณ์ดังนั้นจึงเป็นเรื่องปกติ อิมเมจเดียวหลังจากลดขนาดไดเร็กทอรีไปเป็นร้อยอิมเมจต่อไดเร็กทอรีโดยทั่วไประบบผลลัพธ์จะยังคงต้องใช้การดำเนินการดิสก์ 3 ครั้งเพื่อดึงข้อมูลอิมเมจ: หนึ่งเพื่ออ่านเมตาดาต้าของไดเรกทอรีไปยังหน่วยความจำ เพื่ออ่านเนื้อหา "
ฉันสันนิษฐานว่าเมตาดาต้าไดเรกทอรีระบบแฟ้ม & inode จะถูกแคชใน RAM โดยระบบปฏิบัติการและการอ่านไฟล์มักจะต้องใช้เพียง 1 ดิสก์ IO
นี่เป็นปัญหา "หลายดิสก์ของ IO เพื่ออ่านไฟล์เดียว" ซึ่งระบุไว้ในกระดาษเฉพาะของเครื่องใช้ NAS หรือ Linux มีปัญหาเดียวกันหรือไม่
ฉันวางแผนที่จะเรียกใช้เซิร์ฟเวอร์ Linux สำหรับแสดงรูปภาพ วิธีใดที่ฉันสามารถลดจำนวนดิสก์ IO - ให้แน่ใจว่าระบบปฏิบัติการแคชเก็บข้อมูลไดเรกทอรี & inode ทั้งหมดใน RAM และการอ่านแต่ละไฟล์จะต้องใช้ดิสก์ IO ไม่เกิน 1 เท่านั้น