माइक्रोसॉफ्ट रिसर्च द्वारा To Blob or Not To Blob नामक एक बहुत अच्छा पेपर है।
प्रदर्शन परीक्षण और विश्लेषण की एक बड़ी संख्या के बाद उनके निष्कर्ष यह है:
अगर अपने चित्रों या दस्तावेज़ आम तौर पर आकार में 256K से नीचे हैं, उन्हें एक डेटाबेस VARBINARY स्तंभ और अधिक कुशल है में संग्रहीत
यदि आपकी तस्वीरें या दस्तावेज़ आमतौर पर 1 एमबी आकार से अधिक हैं, तो उन्हें फाइल सिस्टम में संग्रहीत करना अधिक कुशल है (और SQL सर्वर 2008 के FILESTREAM
विशेषता के साथ, वे अभी भी लेनदेन नियंत्रण और डेटाबेस का हिस्सा हैं)
- उन दोनों के बीच में
, यह आपके उपयोग के आधार पर एक टॉस अप का एक सा
आप एक एसक्यूएल सर्वर तालिका में अपने चित्रों को लगाने का निर्णय लेते हैं, तो मैं दृढ़ता से संग्रहीत करने के लिए एक अलग तालिका का उपयोग कर की सिफारिश करेंगे है उन चित्रों - कर्मचारी तालिका में कर्मचारी फोटो को स्टोर न करें - उन्हें एक अलग तालिका में रखें। इस तरह, Employee
तालिका दुबला और मतलब और बहुत ही कुशल रह सकती है, मान लीजिए कि आपको हमेशा अपने प्रश्नों के भाग के रूप में कर्मचारी फोटो का चयन करने की आवश्यकता नहीं है।
फ़ाइल समूह के लिए, एक परिचय के लिए Files and Filegroup Architecture देखें। असल में, आप या तो शुरुआत से ही बड़े डेटा संरचनाओं के लिए एक अलग फ़ाइल समूह के साथ अपना डेटाबेस बनाते हैं, या बाद में एक अतिरिक्त फ़ाइल समूह जोड़ते हैं। आइए इसे LARGE_DATA
पर कॉल करें।बाहर filegroups पर MSDN परिचय
CREATE TABLE dbo.YourTable
(....... define the fields here ......)
ON Data -- the basic "Data" filegroup for the regular data
TEXTIMAGE_ON LARGE_DATA -- the filegroup for large chunks of data
चेक, और:
अब, जब भी आप एक नया टेबल जो VARCHAR(MAX)
या VARBINARY(MAX)
कॉलम संग्रहीत करना होता है बनाने के लिए है, तो आप इस फाइल को समूह बड़े डेटा के लिए निर्दिष्ट कर सकते हैं इसके साथ खेलें!
स्रोत
2013-03-12 09:03:14