/ / लाइन टू एसक्यूएल: एसक्यूएल सर्वर कॉम्पैक्ट संस्करण के साथ प्रश्नों का अनुकूलन - प्रदर्शन, लाइन-टू-एसक्यूएल, अनुकूलन, मेमोरी, एसक्यूएल-सर्वर-सीई

एसक्यूएल से लिंक: एसक्यूएल सर्वर कॉम्पैक्ट संस्करण के साथ क्वेरी को अनुकूलित करना - प्रदर्शन, linq-to-sql, अनुकूलन, स्मृति, एसक्यूएल-सर्वर-सीई

मैं SQL सर्वर CE के खिलाफ SQL के लिए Linq का उपयोग कर रहा हूँ।

डेटाबेस केवल पढ़ा जाता है, इसलिए मेरी कई धारणाएं हो सकती हैं।

फ़ाइल सिस्टम तक पहुँचने से परहेज करने के लिए, मेरा प्रारंभिक दृष्टिकोण मेमोरी के लिए आवश्यक संस्थाओं को कैश करना और उनके खिलाफ ऑब्जेक्ट्स के लिए लाइनक का उपयोग करना था।

हालांकि यह सीमित प्रश्नों के लिए अच्छी तरह से काम करता है, सीधे Linq से SQL का उपयोग करना Linq की तुलना में वस्तुओं से बेहतर है जब आवश्यकता होती है।

प्रारंभिक बिंदु पर वापस, मैं अपने प्रदर्शन को अनुकूलित करना चाहता हूं, मेरा विचार अब पूरी फाइल को रैम में लोड करना लागू करना है, और इसके खिलाफ Linq से SQL का उपयोग करना है।

किसी भी विचार कैसे? कोई और विचार?

एरियल

उत्तर:

उत्तर № 1 के लिए 1

ऐसा लगता है कि आपकी समस्या sql index / विदेशी कुंजी प्रदर्शन बनाम संग्रह पुनरावृत्ति प्रदर्शन है।

Linq to Datasets संरक्षित करने का एक तरीका प्रदान करता हैरिश्तों (विशेष रूप से, ADO.net डेटासेट्स का एक रिश्ता संग्रह है) और प्राथमिक कुंजी, विदेशी कुंजी और अद्वितीय बाधाओं को लागू कर सकता है। तो, उनका सम्मिलित प्रदर्शन लाइनक से SQL के समान होना चाहिए, लेकिन मेमोरी में चलेगा।

लाइट एसक्यूएल कार्यान्वयन की मेरी समझ से, लेनदेन पर प्रदर्शन पर एक बड़ा प्रभाव पड़ सकता है, इसलिए अभी से अपना कनेक्शन शुरू करें

BEGIN TRANSACTION

यदि आप अपने सभी प्रश्नों के लिए कनेक्शन खुला छोड़ सकते हैं तो महत्वपूर्ण प्रभाव पड़ सकता है। बेंचमार्किंग शायद इसका जवाब देने का एकमात्र निश्चित तरीका है।


जवाब के लिए 0 № 2

क्या आप ने कोशिश की Linq DataSet को?

आप मेमोरी में सब कुछ लोड कर सकते हैं और आप Linq क्वेरी का उपयोग कर सकते हैं

मुझे कोई अंदाजा नहीं है कि अगर आप जैसे चाहें वैसे काम करेंगे