Saya akan berasumsi bahwa Anda menggunakan sistem file FAT / FAT32 di sini, karena Anda menyebutkan ini adalah kartu SD. NTFS dan exFAT berperilaku serupa berkaitan dengan unit alokasi. Sistem file lain mungkin berbeda, tetapi mereka tidak didukung pada Windows.
Jika Anda memiliki banyak file kecil, ini tentu saja mungkin. Pertimbangkan ini:
Ok, sekarang ruang minimum yang diambil adalah 50.000 * 32.000 = 1,6 GB (menggunakan awalan SI, bukan biner, untuk menyederhanakan matematika). Ruang setiap file pada disk selalu merupakan kelipatan dari ukuran unit alokasi - dan di sini kami mengasumsikan setiap file sebenarnya cukup kecil untuk muat dalam satu unit, dengan beberapa ruang (terbuang) tersisa.
Jika setiap file rata-rata 2 kB, Anda akan mendapatkan sekitar 100 MB total - tetapi Anda juga menyia-nyiakan 15x itu (30 kB per file) rata-rata karena ukuran unit alokasi.
Penjelasan mendalam
Mengapa ini terjadi? Nah, sistem file FAT32 perlu melacak di mana setiap file disimpan. Jika ingin menyimpan daftar setiap byte tunggal, tabel (seperti buku alamat) akan tumbuh pada kecepatan yang sama dengan data - dan menghabiskan banyak ruang. Jadi apa yang mereka lakukan adalah menggunakan "unit alokasi", juga dikenal sebagai "ukuran cluster". Volume dibagi ke dalam unit-unit alokasi ini, dan sejauh menyangkut filesystem, mereka tidak dapat dibagi lagi - itu adalah blok terkecil yang dapat dialaminya. Sama seperti Anda memiliki nomor rumah, tetapi tukang pos Anda tidak peduli berapa banyak kamar tidur Anda atau yang tinggal di dalamnya.
Jadi apa yang terjadi jika Anda memiliki file yang sangat kecil? Nah, sistem file tidak peduli apakah file tersebut 0 kB, 2 kB atau bahkan 15 kB, itu akan memberikan ruang paling sedikit yang bisa - dalam contoh di atas, itu adalah 32 kB. File Anda hanya menggunakan sedikit ruang ini, dan sisanya pada dasarnya sia-sia, tetapi masih milik file - seperti kamar tidur yang Anda tinggalkan kosong.
Mengapa ada ukuran unit alokasi yang berbeda? Nah, itu menjadi tradeoff antara memiliki meja yang lebih besar (buku alamat, misalnya mengatakan John memiliki rumah di 123 Fake Street, 124 Fake Street, 666 Satan Lane, dll.), Atau lebih banyak ruang kosong di setiap unit (rumah). Jika Anda memiliki file yang lebih besar, lebih masuk akal untuk menggunakan unit alokasi yang lebih besar - karena file tidak mendapatkan unit baru (rumah) sampai semua yang lain terisi. Jika Anda memiliki banyak file kecil, Anda akan memiliki tabel besar (buku alamat) jadi mungkin juga memberi mereka unit kecil (rumah).
Unit alokasi besar, sebagai aturan umum, akan menghabiskan banyak ruang jika Anda memiliki banyak file kecil. Biasanya tidak ada alasan yang baik untuk menggunakan di atas 4 kB untuk penggunaan umum.
Fragmentasi?
Adapun fragmentasi, fragmentasi seharusnya tidak menyia-nyiakan ruang dengan cara ini. File-file besar dapat terfragmentasi, yaitu dibagi, menjadi beberapa unit alokasi, tetapi setiap unit harus diisi sebelum yang berikutnya dimulai. Defragging mungkin menghemat sedikit ruang dalam tabel alokasi, tetapi ini bukan masalah spesifik Anda.
Solusi yang memungkinkan
Seperti yang disarankan gladiator2345 , satu-satunya pilihan nyata Anda pada titik ini adalah hidup dengannya atau memformat ulang dengan unit alokasi yang lebih kecil.
Kartu Anda mungkin diformat dalam FAT16, yang memiliki batas lebih kecil pada ukuran tabel dan karenanya memerlukan unit alokasi yang jauh lebih besar untuk mengatasi volume yang lebih besar (dengan batas atas 2 GB dengan unit alokasi 32 kB). Sumber milik Braiam . Jika demikian, Anda tetap dapat memformat FAT32 dengan aman.