MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB $regex क्वेरी और संभावित कारनामे

मेरी सुंदर व्यक्तिगत आंत की भावना कहती है:परेशान मत हो। लेकिन फिर भी, यदि आप फिर भी ऐसा करते हैं या करना भी चाहते हैं तो इस आवश्यकता से निपटने के लिए यहां कुछ सुझाव दिए गए हैं:

  1. आप maxTimeMS ()
  2. आप रेगेक्स इनपुट को साफ करने का प्रयास कर सकते हैं लेकिन मुझे संदेह है कि वहां पुस्तकालय हैं जो संभावित रूप से लंबे समय तक चलने वाले जटिल प्रश्नों की अंतहीन विविधताओं को देखते हुए आपकी सहायता करेंगे। रेगेक्स की लंबाई को सीमित करने से भी मदद मिल सकती है, लेकिन दूसरी तरफ शायद उपयोगकर्ता को मनमाने ढंग से फ़िल्टर का उपयोग करके आसानी से खोज करने की अनुमति देने के उद्देश्य को हरा देता है।
  3. आप प्रावधान कर सकते हैं अधिक संरचित क्वेरी इनपुट हैं जो उदा। केवल उपयोगकर्ता को एक एकल अल्फा-न्यूमेरिक टेक्स्ट दर्ज करने की अनुमति दें, जिसे आप सर्वर-साइड पर रेगेक्स में लपेटेंगे ताकि उदाहरण के लिए अनुमति दी जा सके। "शुरू होता है", "शामिल है" या "समाप्त होता है" प्रश्न या कुछ और।
  4. आप प्रति उपयोगकर्ता केवल एक समानांतर क्वेरी (सत्र? आईपी?) की अनुमति दे सकते हैं जो संभवतः घातक DoS हमलों के खिलाफ थोड़ी मदद करेगा लेकिन निश्चित रूप से वितरित लोगों के खिलाफ नहीं ... या आप केवल एक ही समानांतर कॉल की अनुमति दे सकते हैं। संपूर्ण सिस्टम में समापन बिंदु।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoShell में:मेरे संग्रह से कनेक्ट करने में सक्षम नहीं, db.collection_name वापसी NaN

  2. MongoDB द्वारा समर्थित डेटाबेस की अधिकतम संख्या

  3. नेवला _id फ़ील्ड हटाया नहीं जा सकता

  4. उल्का से MongoDB में अद्यतन फ़ंक्शन डालने से कैसे रोकें?

  5. फ्लास्क 0.10 मोंगो आवेदन संदर्भ के बाहर काम कर रहा है