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

डेटाबेस के रूप में सोलर सर्च इंडेक्स का उपयोग करना - क्या यह गलत है?

हां, आप डेटाबेस के रूप में SOLR का उपयोग कर सकते हैं लेकिन वास्तव में कुछ गंभीर चेतावनी हैं:

  1. SOLR का सबसे आम एक्सेस पैटर्न, जो http से अधिक है, बैच क्वेरी के लिए विशेष रूप से अच्छी प्रतिक्रिया नहीं देता है। इसके अलावा, SOLR डेटा स्ट्रीम नहीं करता --- इसलिए आप एक बार में लाखों रिकॉर्ड के माध्यम से आलस्य से पुनरावृति नहीं कर सकते। इसका मतलब है कि जब आप SOLR के साथ बड़े पैमाने पर डेटा एक्सेस पैटर्न तैयार करते हैं तो आपको बहुत विचारशील होना चाहिए।

  2. हालांकि SOLR प्रदर्शन क्षैतिज रूप से (अधिक मशीनें, अधिक कोर, आदि..) और साथ ही लंबवत (अधिक RAM, बेहतर मशीनें, आदि) स्केल करता है, इसकी क्वेरी करने की क्षमता परिपक्व RDBMS की तुलना में गंभीर रूप से सीमित है . उस ने कहा, कुछ उत्कृष्ट कार्य हैं, जैसे फ़ील्ड आँकड़े प्रश्न, जो काफी सुविधाजनक हैं।

  3. डेवलपर्स जो रिलेशनल डेटाबेस का उपयोग करने के लिए उपयोग किए जाते हैं, जब वे SOLR प्रतिमान में समान DAO डिज़ाइन पैटर्न का उपयोग करते हैं, तो अक्सर समस्याओं में भाग लेते हैं, क्योंकि SOLR प्रश्नों में फ़िल्टर का उपयोग करता है। ऐसे एप्लिकेशन के निर्माण के लिए सही दृष्टिकोण विकसित करने के लिए सीखने की अवस्था होगी जो SOLR का उपयोग अपने बड़े प्रश्नों या स्टेटफुल संशोधनों के हिस्से के लिए करता है

  4. "एंटरप्रिसी" टूल जो उन्नत सत्र प्रबंधन और स्टेटफुल संस्थाओं के लिए अनुमति देते हैं, जो कई उन्नत वेब-फ्रेमवर्क (रूबी, हाइबरनेट, ...) ऑफ़र करते हैं, उन्हें पूरी तरह से विंडो से बाहर करना होगा .

  5. रिलेशनल डेटाबेस जटिल डेटा और संबंधों से निपटने के लिए होते हैं - और इस प्रकार वे अत्याधुनिक मेट्रिक्स और स्वचालित विश्लेषण टूल के साथ होते हैं। SOLR में, मैंने खुद को ऐसे टूल लिखते हुए और मैन्युअल रूप से तनाव-परीक्षण करते हुए पाया है, जो एक समय सिंक हो सकता है .

  6. जुड़ना :यह बड़ा हत्यारा है। रिलेशनल डेटाबेस सरल विधेय के आधार पर टुपल्स में शामिल होने वाले विचारों और प्रश्नों के निर्माण और अनुकूलन के तरीकों का समर्थन करते हैं। SOLR में, सभी सूचकांकों में डेटा को जोड़ने का कोई मजबूत तरीका नहीं है।

  7. लचीलापन:उच्च उपलब्धता के लिए, सोलरक्लाउड नीचे (यानी एचसीएफएस) एक वितरित फाइल सिस्टम का उपयोग करता है। यह मॉडल एक रिलेशनल डेटाबेस से काफी अलग है, जो आमतौर पर दास और स्वामी, या RAID, और इसी तरह का उपयोग करके लचीलापन करता है। इसलिए यदि आप चाहते हैं कि यह क्लाउड स्केलेबल और प्रतिरोधी हो तो आपको एसओएलआर के लिए आवश्यक लचीलापन बुनियादी ढांचा प्रदान करने के लिए तैयार रहना होगा।

उस ने कहा - कुछ कार्यों के लिए SOLR के बहुत सारे स्पष्ट लाभ हैं:(देखें http://wiki। apache.org/solr/HowUseSolr ) -- ढीले प्रश्नों को चलाना और सार्थक परिणाम देना बहुत आसान है। इंडेक्सिंग डिफ़ॉल्ट रूप से की जाती है, इसलिए अधिकांश मनमानी क्वेरी बहुत प्रभावी ढंग से चलती हैं (आरडीबीएमएस के विपरीत, जहां आपको अक्सर तथ्य के बाद अनुकूलित और डी-सामान्य करना पड़ता है)।

निष्कर्ष: भले ही आप आरडीबीएमएस के रूप में एसओएलआर का उपयोग कर सकते हैं, आप पा सकते हैं (जैसा कि मेरे पास है) कि अंततः "कोई मुफ्त लंच नहीं है" - और सुपर-कूल ल्यूसीन टेक्स्ट-खोज और उच्च-प्रदर्शन, इन-मेमोरी इंडेक्सिंग की लागत बचत, अक्सर कम लचीलेपन और नए डेटा एक्सेस वर्कफ़्लो को अपनाने के द्वारा भुगतान किया जाता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे जावा का उपयोग कर mysql में एक स्कीमा की प्रतिलिपि बनाने के लिए?

  2. MySQL डेटाबेस को एक सर्वर से दूसरे सर्वर में आयात करना

  3. एकाधिक तालिकाओं पर मैसकल COUNT(*)

  4. मैं आसानी से एक Django ऐप को mySQL से PostgreSQL में कैसे परिवर्तित कर सकता हूं?

  5. php:छवि को MySQL ब्लॉब में स्टोर करें, अच्छा या बुरा?