Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर - डेटा को लॉक किए बिना बड़ी तालिकाओं को मर्ज करना

चयन . करते समय NOLOCK या READ UNCOMMITTED का उपयोग करने के लिए अपना फ्रंट एंड बदलें ।

आप NOLOCK MERGE, INSERT, या UPDATE नहीं कर सकते क्योंकि अपडेट करने के लिए रिकॉर्ड्स को लॉक किया जाना चाहिए। हालांकि, आप चयनों को अनलॉक कर सकते हैं।

ध्यान दें कि आपको इसका सावधानी से उपयोग करना चाहिए। अगर गंदा पढ़ना ठीक है, तो आगे बढ़ें। हालाँकि, यदि रीड्स को अपडेट किए गए डेटा की आवश्यकता होती है, तो आपको एक अलग रास्ते पर जाने और यह पता लगाने की आवश्यकता है कि 3M रिकॉर्ड को मर्ज करने से समस्या क्यों हो रही है।

मैं शर्त लगाने के लिए तैयार हूं कि मर्ज कमांड के दौरान डिस्क से डेटा पढ़ने और/या कम मेमोरी स्थितियों के आसपास काम करने में अधिकांश समय व्यतीत होता है। आप अपने डेटाबेस सर्वर में अधिक रैम भरने से बेहतर हो सकते हैं।

एक आदर्श राशि यह होगी कि पूरे डेटाबेस को आवश्यकतानुसार मेमोरी में खींचने के लिए पर्याप्त रैम हो। उदाहरण के लिए, यदि आपके पास 4GB डेटाबेस है, तो सुनिश्चित करें कि आपके पास x64 सर्वर में 8GB RAM है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में OBJECTPROPERTY () बनाम OBJECTPROPERTYEX ():क्या अंतर है?

  2. SQL सर्वर - एक संग्रहीत कार्यविधि समाप्त होने तक तालिका को कैसे लॉक करें

  3. एक स्ट्रिंग के रूप में अल्पविराम सीमांकित सूची, टी-एसक्यूएल

  4. चयन सूची में कहीं और एक उपनाम का संदर्भ लें

  5. एक्सेल में वीबीए में एसक्यूएल सर्वर से त्रुटि संदेश पकड़ना