मेरे पास एक कैश () है जिसमें चाबियां हैं जो बढ़ती हैं (हालांकि जरूरी नहीं कि क्रम में जैसे 1002, 1003, 1020, 1100)

मैं इग्नाइट के नेट संस्करण का उपयोग कर रहा हूं (जो जावा संस्करण के चारों ओर एक आवरण है)

अभी मैं पूरा सेट प्राप्त कर रहा हूं और लिंक का उपयोग करके परिणामों की पूछताछ कर रहा हूं।

लिंक का उपयोग किए बिना कुशलतापूर्वक सबसे बड़ी कुंजी कैसे प्राप्त कर सकते हैं।

0
Maleki 4 जुलाई 2019, 21:44

1 उत्तर

सबसे बढ़िया उत्तर

SQL का उपयोग करने का एक प्रभावी तरीका है (यदि संख्या मान का हिस्सा है तो उचित अनुक्रमणिका के साथ)।

कोड को साफ रखने के लिए आप इग्नाइट LINQ प्रदाता के साथ LINQ का उपयोग जारी रख सकते हैं: https://apacheignite-sql.readme.io/docs/linq

int कुंजियों के साथ सरल उदाहरण:

        var cfg = new CacheConfiguration("cache-name", new QueryEntity(typeof(int), typeof(int)));
        var cache = ignite.GetOrCreateCache<int, int>(cfg);

        cache[1] = 1;
        cache[3] = 3;

        var max = cache.AsCacheQueryable().Max(e => e.Key);

इसे SQL में अनुवादित किया जाएगा और स्थानीय रूप से सेट किए गए संपूर्ण डेटा को लोड किए बिना इग्नाइट द्वारा कुशलतापूर्वक निष्पादित किया जाएगा।

3
Pavel Tupitsyn 4 जुलाई 2019, 21:44