Microsoft रिसर्च द्वारा वास्तव में एक अच्छा पेपर है जिसे To Blob या Not To Blob कहा जाता है ।
बड़ी संख्या में प्रदर्शन परीक्षण और विश्लेषण के बाद उनका निष्कर्ष यह है:
यदि आपके चित्र या दस्तावेज़ आमतौर पर आकार में 256K से नीचे हैं, तो उन्हें डेटाबेस VARBINARY कॉलम में संग्रहीत करना अधिक कुशल है
यदि आपके चित्र या दस्तावेज़ आम तौर पर 1 एमबी से अधिक आकार के हैं, तो उन्हें फाइलसिस्टम में संग्रहीत करना अधिक कुशल है (और SQL Server 2008 के FILESTREAM विशेषता के साथ, वे अभी भी लेन-देन नियंत्रण और डेटाबेस के भाग के तहत हैं)
उन दोनों के बीच में, यह आपके उपयोग के आधार पर एक टॉस-अप का एक सा है
यदि आप अपनी तस्वीरों को SQL सर्वर तालिका में रखने का निर्णय लेते हैं, तो मैं दृढ़ता से उन चित्रों को संग्रहीत करने के लिए एक अलग तालिका का उपयोग करने की सलाह दूंगा - कर्मचारी की कर्मचारी तालिका में फ़ोटो को संग्रहीत न करें - उन्हें एक अलग तालिका में रखें। इस तरह, कर्मचारी तालिका दुबला और मतलबी और बहुत कुशल रह सकती है, यह मानते हुए कि आपको अपने प्रश्नों के भाग के रूप में कर्मचारी फोटो का चयन करने की आवश्यकता नहीं है।
फ़ाइल समूह के लिए, फ़ाइलें और फ़ाइल समूह आर्किटेक्चर देखें एक परिचय के लिए। असल में, आप या तो शुरुआत से ही बड़ी डेटा संरचनाओं के लिए एक अलग फ़ाइल समूह के साथ अपना डेटाबेस बनाएंगे, या बाद में एक अतिरिक्त फ़ाइल समूह जोड़ सकते हैं। चलो इसे "LARGE_DATA" कहते हैं।
अब, जब भी आपके पास बनाने के लिए एक नई तालिका होती है जिसमें VARCHAR (MAX) या VARBINARY (MAX) कॉलम संग्रहीत करने की आवश्यकता होती है, तो आप इस फ़ाइल समूह को बड़े डेटा के लिए निर्दिष्ट कर सकते हैं:
CREATE TABLE dbo.YourTable
(....... define the fields here ......)
ON Data
TEXTIMAGE_ON LARGE_DATA
फ़ाइल समूह पर MSDN परिचय की जाँच करें, और इसके साथ खेलें!