के लिए डिस्क समर्थित शब्दकोश/कैश मैं डेटा की बड़ी मात्रा में कैशिंग के लिए समाधान में एक बूंद की तलाश में हूं। लेकिन अलग-अलग भाषाओं के लिएसी #
संबंधित प्रश्नों:
अलग मामले में बंद प्रश्न:
मुझे दृढ़ता, लेनदेन, धागा सुरक्षा या पसंद की आवश्यकता नहीं है (या कुछ भी चाहते हैं जो किसी सूची <> या शब्दकोश <> से अधिक उपयोग करने के लिए जटिल नहीं है।
अगर मैं कोड लिखने के लिए है, मैं तो बस सब कुछ बंद अस्थायी निर्देशिका में फ़ाइलों के रूप में बचा सकते हैं:
string Get(int i)
{
File.ReadAllText(Path.Combine(root,i.ToString());
}
सूचकांक में मेरी मामलों में एक int
हो जाएगा (और वे लगातार या इतने पास होना चाहिए) और डेटा string
होगा, इसलिए मैं POD दोनों का इलाज करने से दूर हो सकता हूं और अल्ट्रा-लाइट पर जाउंगा और ठीक उसी तरह करूँगा।
उपयोग यह है कि मेरे पास 6kMB कुल 3k फ़ाइलों (फ़ाइल # 1 से # 3000 में) का अनुक्रम है और अनुक्रम में प्रत्येक चरण के लिए एक अंतर करने की आवश्यकता है। मैं उम्मीद करता हूं कि कुल मिलाकर थोड़ा और थोड़ा और मैं इसे स्मृति में रखना नहीं चाहता हूं (बड़े मामले ऐसे आ सकते हैं जहां मैं बस नहीं कर सकता)।
कई लोगों ने मेरी समस्या के लिए विभिन्न समाधान सुझाए हैं। हालांकि मेरे छोटे आला पर कोई भी लक्षित नहीं लगता है। जिन कारणों से मैं डिस्क समर्थित कैशिंग पर देख रहा हूं वह इसलिए है क्योंकि मुझे उम्मीद है कि मेरा वर्तमान उपयोग मेरे उपलब्ध पता स्थान के 1/3 से 1/2 तक उपयोग करेगा। मुझे चिंता है कि बड़े मामले केवल अंतरिक्ष से बाहर चले जाएंगे। मैं चलने, दृढ़ता या प्रतिकृति के बारे में चिंतित नहीं हूं। जो मैं खोज रहा हूं वह न्यूनतम कोड का उपयोग करके न्यूनतम समाधान है, न्यूनतम उपयोग पैर प्रिंट, मेमोरी ओवरहेड में न्यूनतम और न्यूनतम जटिलता।
मुझे लगता है कि मैं अत्यधिक आशावादी हूं।
नहीं क्यों फाइल सिस्टम? यही वह है जो ... – RedFilter
के लिए डिज़ाइन किया गया है यदि कोई मुझे पहले से लिखे गए कुछ बेहतर तरीके से इंगित नहीं कर सकता है। – BCS
क्या डिस्क-आधारित कैश कैशिंग तंत्र के पूरे उद्देश्य को पराजित नहीं करता है? –