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

SQL सर्वर गुम अनुक्रमणिका

नमस्ते,

SQL सर्वर डेटाबेस में इंडेक्स का उपयोग उन वातावरणों में होता है जिनमें सबसे अधिक प्रदर्शन, गति और मेमोरी बचत की आवश्यकता होती है।

लाखों या अरबों रिकॉर्ड वाली तालिका में, हम कम रिकॉर्ड पढ़ने और संबंधित रिकॉर्ड खोजने के लिए कम खोज करने के लिए इंडेक्स का उपयोग कर सकते हैं।

सटीक रूप से बनाए गए इंडेक्स, डेटाबेस के भीतर लाखों रिकॉर्ड हमने कॉलर की सुविधा का रिकॉर्ड लाने के लिए बहुत ही कम समय के भीतर खोजे हैं, जबकि साथ ही लक्ष्य रिकॉर्ड तक पहुंचकर रिकॉर्ड कम पढ़ें, हम ऑपरेटिंग सिस्टम संसाधनों का प्रभावी ढंग से उपयोग करते हैं।

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

आप निम्न स्क्रिप्ट के साथ SQL सर्वर की अनुपलब्ध अनुक्रमणिका अनुशंसा को देख सकते हैं। आप लापता इंडेक्स बना सकते हैं लेकिन आपको इन इंडेक्स की निगरानी करनी चाहिए, अगर वे उपयोगी नहीं हैं, तो आपको उन्हें छोड़ देना चाहिए।

SELECT MID.[statement] AS ObjectName
,MID.equality_columns AS EqualityColumns
,MID.inequality_columns AS InequalityColms
,MID.included_columns AS IncludedColumns
,MIGS.last_user_seek AS LastUserSeek
,MIGS.avg_total_user_cost 
* MIGS.avg_user_impact 
* (MIGS.user_seeks + MIGS.user_scans) AS Impact
,N'CREATE NONCLUSTERED INDEX <TYPE_Index_Name> ' + 
N'ON ' + MID.[statement] + 
N' (' + MID.equality_columns 
+ ISNULL(', ' + MID.inequality_columns, N'') +
N') ' + ISNULL(N'INCLUDE (' + MID.included_columns + N');', ';')
AS CreateStatement
FROM sys.dm_db_missing_index_group_stats AS MIGS
INNER JOIN sys.dm_db_missing_index_groups AS MIG
ON MIGS.group_handle = MIG.index_group_handle
INNER JOIN sys.dm_db_missing_index_details AS MID
ON MIG.index_handle = MID.index_handle
WHERE database_id = DB_ID()
AND MIGS.last_user_seek >= DATEDIFF(month, GetDate(), -1)
ORDER BY Impact DESC;


  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 सर्वर 2017:SSIS के साथ Linux से Salesforce में CSV डेटा आयात करना

  2. SQL पूर्ण पाठ अनुक्रमणिका जनसंख्या समाप्त होने पर मुझे कैसे पता चलेगा?

  3. जांचें कि क्या तालिका मौजूद है और यदि यह मौजूद नहीं है, तो इसे SQL Server 2008 में बनाएं

  4. तालिका में पहचान कॉलम के लिए एक स्पष्ट मान केवल तभी निर्दिष्ट किया जा सकता है जब कॉलम सूची का उपयोग किया जाता है और IDENTITY_INSERT SQL सर्वर पर होता है

  5. SQL सर्वर केवल नवीनतम मान का उपयोग करके विशिष्ट पंक्तियों का चयन करता है