ฉันจะสมมติว่าคุณกำลังใช้ระบบไฟล์ FAT / FAT32 ที่นี่เนื่องจากคุณพูดถึงว่านี่เป็นการ์ด SD NTFS และ exFAT ทำตัวคล้ายกับหน่วยการจัดสรร ระบบไฟล์อื่นอาจแตกต่างออกไป แต่ไม่รองรับ Windows
หากคุณมีไฟล์ขนาดเล็กจำนวนมากเป็นไปได้อย่างแน่นอน พิจารณาสิ่งนี้:
ตกลงตอนนี้พื้นที่ต่ำสุดที่ใช้คือ 50,000 * 32,000 = 1.6 GB (ใช้ส่วนนำหน้าของ SI ไม่ใช่เลขฐานสองเพื่อทำให้คณิตศาสตร์ง่ายขึ้น) พื้นที่ที่แต่ละไฟล์ใช้ในดิสก์นั้นมีขนาดหน่วยการจัดสรรหลายเท่าเสมอและที่นี่เราสมมติว่าแต่ละไฟล์นั้นมีขนาดเล็กพอที่จะใส่ในหน่วยเดียวโดยมีพื้นที่เหลือ (เปล่า) เหลืออยู่
หากไฟล์แต่ละไฟล์มีค่าเฉลี่ย 2 kB คุณจะได้รับผลรวมประมาณ 100 MB - แต่คุณต้องเสีย 15x (30 kB ต่อไฟล์) โดยเฉลี่ยเนื่องจากขนาดหน่วยการจัดสรร
คำอธิบายในเชิงลึก
ทำไมสิ่งนี้ถึงเกิดขึ้น ระบบไฟล์ FAT32 จำเป็นต้องติดตามตำแหน่งที่เก็บไฟล์แต่ละไฟล์ หากต้องเก็บรายการของทุก ๆ ไบต์ตาราง (เช่นสมุดที่อยู่) จะเติบโตที่ความเร็วเดียวกับข้อมูล - และเสียพื้นที่มาก ดังนั้นสิ่งที่พวกเขาทำคือใช้ "การจัดสรรหน่วย" หรือที่เรียกว่า "ขนาดของกลุ่ม" ไดรฟ์ข้อมูลถูกแบ่งออกเป็นหน่วยการจัดสรรเหล่านี้และเท่าที่ระบบแฟ้มเกี่ยวข้องจะไม่สามารถแบ่งย่อยได้ - ซึ่งเป็นบล็อกขนาดเล็กที่สุดที่สามารถจัดการได้ เหมือนกับที่คุณมีหมายเลขบ้าน แต่บุรุษไปรษณีย์ของคุณไม่สนใจว่าคุณมีห้องนอนกี่ห้องหรือที่อยู่ในนั้น
แล้วจะเกิดอะไรขึ้นถ้าคุณมีไฟล์ขนาดเล็กมาก? ระบบไฟล์ไม่สนใจว่าไฟล์นั้นคือ 0 kB, 2 kB หรือแม้แต่ 15 kB มันจะให้พื้นที่น้อยที่สุดเท่าที่จะทำได้ - ในตัวอย่างด้านบนนั่นคือ 32 kB ไฟล์ของคุณใช้พื้นที่นี้เพียงเล็กน้อยเท่านั้นและที่เหลือก็สูญเปล่า แต่ก็ยังเป็นของไฟล์เหมือนห้องนอนที่คุณปล่อยให้ว่าง
ทำไมขนาดหน่วยการจัดสรรแตกต่างกัน มันจะเป็นการแลกเปลี่ยนกันระหว่างการมีตารางที่ใหญ่กว่า (สมุดที่อยู่เช่นบอกว่า John เป็นเจ้าของบ้านที่ 123 Fake Street, 124 Fake Street, 666 Satan Lane, ฯลฯ ) หรือเนื้อที่ที่สูญเปล่าในแต่ละยูนิต (บ้าน) หากคุณมีไฟล์ที่มีขนาดใหญ่ขึ้นจะเหมาะสมกว่าที่จะใช้หน่วยการจัดสรรที่ใหญ่กว่า - เนื่องจากไฟล์ไม่ได้รับหน่วยใหม่ (เฮ้าส์) จนกว่าจะเต็มหน่วยอื่น ๆ ทั้งหมด หากคุณมีไฟล์ขนาดเล็กจำนวนมากเอาล่ะคุณจะต้องมีโต๊ะขนาดใหญ่ (สมุดที่อยู่) อยู่แล้วดังนั้นอาจให้หน่วยเล็ก ๆ (บ้าน) ด้วย
หน่วยการจัดสรรขนาดใหญ่ตามกฎทั่วไปจะเปลืองพื้นที่มากถ้าคุณมีไฟล์ขนาดเล็กจำนวนมาก มักจะไม่มีเหตุผลที่ดีที่จะสูงกว่า 4 kB สำหรับการใช้งานทั่วไป
การกระจายตัว?
สำหรับการแยกส่วนการกระจายตัวไม่ควรเสียพื้นที่ในลักษณะนี้ ไฟล์ขนาดใหญ่อาจกระจัดกระจายนั่นคือแบ่งออกเป็นหลาย ๆ หน่วยการจัดสรร แต่ควรเติมแต่ละไฟล์ก่อนที่จะเริ่มต้นไฟล์ถัดไป การจัดเรียงข้อมูลอาจประหยัดพื้นที่เล็กน้อยในตารางการจัดสรร แต่นี่ไม่ใช่ปัญหาเฉพาะของคุณ
การแก้ปัญหาที่เป็นไปได้
ตามที่gladiator แนะนำ 2345ตัวเลือกที่แท้จริงของคุณ ณ จุดนี้คือการอยู่กับมันหรือฟอร์แมตใหม่ด้วยหน่วยการจัดสรรที่เล็กกว่า
การ์ดของคุณอาจได้รับการจัดรูปแบบใน FAT16 ซึ่งมีข้อ จำกัด น้อยกว่าในขนาดของตารางและดังนั้นจึงต้องใช้หน่วยการจัดสรรที่ใหญ่กว่ามากเพื่อที่จะระบุปริมาณที่มากขึ้น (ด้วยขีด จำกัด สูงสุด 2 GB พร้อมหน่วยการจัดสรร 32 kB) แหล่งที่มาของความอนุเคราะห์จากBraiam หากเป็นเช่นนั้นคุณควรจะสามารถฟอร์แมตเป็น FAT32 ได้อย่างปลอดภัย