क्या मेरे पास किसी भी निर्देशिका में अलग-अलग फ़ाइलों में संभावित लगभग 10 मिलियन परिणामों को सहेजने में कोई समस्या होगी?
हाँ। शायद और भी कारण हैं, लेकिन मैं अपने सिर के ऊपर से पोस्ट कर सकता हूं:
tune2fs
में एक विकल्प होता है जिसे dir_index
डिफ़ॉल्ट रूप से चालू किया जाता है (उबंटू पर है) जो आपको एक प्रदर्शन हिट देखने से पहले एक निर्देशिका में लगभग 100k फ़ाइलों को संग्रहीत करने देता है। वह 10 मी फाइलों के करीब भी नहीं है जिनके बारे में आप सोच रहे हैं।
ext
फाइलसिस्टम के पास निश्चित संख्या में इनोड होते हैं। प्रत्येक फ़ाइल और निर्देशिका 1 इनोड का उपयोग करती है। df -i
अपने विभाजन और इनोड्स मुक्त के दृश्य के लिए उपयोग करें। जब आप इनकोड से बाहर निकलते हैं तो आप नई फाइल या फोल्डर नहीं बना सकते हैं।
वाइल्डकार्ड का उपयोग करते समय rm
और जैसे ls
कमांड आदेश का विस्तार करते हैं और "तर्क सूची बहुत लंबी" के साथ समाप्त हो जाएगी। आपको find
फ़ाइलों को हटाने या सूचीबद्ध करने के लिए उपयोग करना होगा । और find
धीमा हो जाता है।
या क्या उन्हें फ़ोल्डर्स में विभाजित करना उचित है?
हाँ। सबसे निश्चित रूप से। मूल रूप से आप 1 डायरेक्टरी में 10 मी फाइलों को स्टोर भी नहीं कर सकते हैं।
मैं डेटाबेस का उपयोग करेगा। यदि आप इसे किसी वेबसाइट के लिए कैश करना चाहते हैं तो " solr " ("वितरित अनुक्रमण, प्रतिकृति और लोड-संतुलित क्वेरी" प्रदान करना) पर एक नज़र है ।