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

नेटिव MongoDB मास्किंग (तीसरी विधि)

नोट:इस लेख में आईआरआई फील्डशील्ड उत्पाद या आईआरआई वोरासिटी प्लेटफॉर्म (दोनों आईआरआई कोसोर्ट v10 द्वारा संचालित और मूल मोंगोडीबी ड्राइवर का समर्थन) के माध्यम से संरचित मोंगोडीबी संग्रह में पीआईआई को स्थिर रूप से मास्किंग या एन्क्रिप्ट करने के लिए तीसरी उपलब्ध आईआरआई ग्राहक विधि शामिल है। IRI DarkShield के माध्यम से असंरचित MongoDB संग्रह में तैरते हुए PII को खोजने और छिपाने के लिए एक चौथी विधि अब उपलब्ध है।

यह लेख बताता है कि कैसे IRI के डेटा हेरफेर उत्पादों में नया, मूल MongoDB संग्रह समर्थन कई डेटा-केंद्रित कार्यों के त्वरित प्रदर्शन और समेकन को सक्षम बनाता है, जिसमें शामिल हैं:

  • डेटा प्रोफाइलिंग और क्लींजिंग
  • डेटा मास्किंग और रि-आईडी रिस्क स्कोरिंग
  • डेटा इंटीग्रेशन (ETL) और CDC
  • डेटा माइग्रेशन और प्रतिकृति
  • कस्टम रिपोर्ट और परीक्षण डेटा जनरेशन

MongoDB डेटा के लिए API-स्तरीय समर्थन कोर SortCL प्रोग्राम में पेश किया जाता है, जो कि IRI Voracity डेटा प्रबंधन प्लेटफ़ॉर्म का डिफ़ॉल्ट प्रोसेसिंग इंजन है, साथ ही इसके सबसेट उत्पाद:CoSort, NextForm, FieldShield, और RowGen। यह कनेक्शन विधि तीसरा और सबसे तेज़ तरीका है जिससे IRI ग्राहक MongoDB संग्रह में डेटा प्राप्त कर सकते हैं और उसमें हेरफेर कर सकते हैं। पहला फ्लैट फाइलों के माध्यम से है जैसा कि 2014 में यहां वर्णित है। दूसरा 2016 में वर्णित ODBC और JDBC ड्राइवरों के साथ है।

MongoDB के बारे में

MongoDB एक "NoSQL", दस्तावेज़-उन्मुख डेटाबेस है जो संग्रह की अवधारणा और स्कीमा के साथ JSON- जैसे दस्तावेज़ों पर काम करता है। एक संग्रह, जैसे संबंधपरक डेटाबेस तालिका में एक या अधिक दस्तावेज़ होते हैं।

एक दस्तावेज़ कुंजी-मूल्य जोड़े का एक सेट है। दस्तावेज़ों में गतिशील स्कीमा होता है, जिसका अर्थ है कि एक ही संग्रह के दस्तावेज़ों में फ़ील्ड या संरचना के समान सेट की आवश्यकता नहीं होती है। संग्रह के दस्तावेज़ों में सामान्य फ़ील्ड में विभिन्न प्रकार के डेटा हो सकते हैं।

निम्नलिखित चार्ट RDBMS और MongoDB की शब्दावली की तुलना करता है:

Oracle MongoDB
डेटाबेस डेटाबेस
तालिका संग्रह
पंक्ति दस्तावेज़
Column फ़ील्ड
प्राथमिक कुंजी MongoDB द्वारा प्रदान की गई ऑब्जेक्ट आईडी

प्रदर्शन

नीचे दिया गया मेरा उदाहरण एक मोंगोडीबी संग्रह का एक सरल प्रकार, मुखौटा और आंदोलन करता है जिसे "चीफ" कहा जाता है, और एक स्टैंडअलोन JSON फ़ाइल में भी जाता है। JSON फ़ाइलें CoSort v10 के रिलीज़ में समर्थित एक और नया IRI डेटा स्रोत हैं।

डेटाबेस कनेक्शन

पहला कदम आईआरआई वर्कबेंच में अपने मोंगोडीबी इंस्टेंस के साथ कनेक्टिविटी स्थापित करना है। ग्रहण पर निर्मित, IRI कार्यक्षेत्र ऊपर सूचीबद्ध सभी IRI सॉफ़्टवेयर के लिए सामान्य कार्य डिज़ाइन और परिनियोजन IDE है। यह वह जगह भी है जहां आप स्थानीय या दूरस्थ फाइल सिस्टम में अन्य डीबी, एचडीएफएस और अतिरिक्त डेटा स्रोतों से जुड़ सकते हैं।

वर्कबेंच टूलबार में IRI मेनू (स्विर्ल आइकन) से, IRI प्राथमिकताएं> IRI> URL कनेक्शन रजिस्ट्री> जोड़ें चुनें। . स्कीमा और सर्वर होस्टनाम से मौजूदा MongoDB निर्दिष्ट करें। मेरे DB का नाम cmitra है, जिसे 'मोंगोडबू' होस्ट पर बनाया गया है:

सुविधा के लिए, मैंने अपने कार्यक्षेत्र के परिप्रेक्ष्य में डेटाबेस के साथ बातचीत करने के लिए एक्लिप्स के लिए मुफ्त MonjaDB प्लग-इन स्थापित किया। मेरे संग्रह में नाम, पार्टी, राज्य और उनके कार्यकाल की तारीखों के अनुसार अमेरिकी राष्ट्रपति शामिल हैं। MongoDB ने प्रत्येक दस्तावेज़ के लिए एक विशिष्ट आईडी असाइन की:

मेटाडेटा परिभाषा

इससे पहले कि मैं इस मोड में MongoDB डेटा को संसाधित कर सकूं, मुझे एक डेटा परिभाषा प्रारूप (DDF) फ़ाइल बनानी होगी जो मेरे संग्रह दस्तावेज़ों को /FIELD स्टेटमेंट में सॉर्टसीएल-संगत नौकरियों जैसे फील्डशील्ड में उपयोग के लिए प्रस्तुत करती है। वर्कबेंच में समर्थित अन्य डेटा स्रोतों की तरह, एक विज़ार्ड मेरे लिए यह स्वचालित रूप से करता है।

स्रोत मेटाडेटा, सॉर्टसीएल स्क्रिप्ट/आरेख, सहेजे गए मास्किंग नियम, डेटा वर्ग इत्यादि जैसी नौकरी संपत्तियों को संग्रहीत करने के लिए वर्कबेंच में प्रोजेक्ट फ़ोल्डर बनाएं (या मौजूदा चुनें)। उस फ़ोल्डर के साथ सक्रिय (हाइलाइट किया गया) और मेरे मोंगोडीबी संग्रह के स्थान का ज्ञान, मैं अब डिस्कवर मेटाडेटा चला सकता हूं शीर्ष टूलबार में IRI मेनू से विज़ार्ड।

इस डेटा स्रोत पहचान चरण में, मैं एक ODBC कनेक्शन, फ़ाइल-ब्राउज़ या URL का चयन कर सकता हूँ। इस मामले में, मैं यूआरएल के माध्यम से मोंगोडीबी तक पहुंच रहा हूं, इसलिए मैं इसे और मेरे प्रारूप के लिए मोंगोडीबी चुनता हूं। डेटाबेस रजिस्ट्री प्रविष्टि के लिए ब्राउज़ करने के बाद मैंने पहले जोड़ा, मैं संग्रह नाम दर्ज करता हूं। विज़ार्ड इसे मानक MongoDB कनेक्शन स्ट्रिंग में जोड़ता है।

डेटा व्यूअर और फील्ड एडिटर पेज संग्रह से जुड़ता है और इसकी कॉलम सामग्री और कॉलम को सॉर्टसीएल फ़ील्ड नामों के रूप में पूर्वावलोकन करता है:

जब मैं समाप्त click क्लिक करता हूँ , मेरी DDF फ़ाइल बनाई गई है और इस प्रकार प्रदर्शित होती है:

/FIELD=(PRESIDENT, TYPE=UTF8, POSITION=1, SEPARATOR="|", MDEF="president")
/FIELD=(PARTY, TYPE=UTF8, POSITION=2, SEPARATOR="|", MDEF="party")
/FIELD=(STATE, TYPE=UTF8, POSITION=3, SEPARATOR="|", MDEF="state")
/FIELD=(START, TYPE=NUMERIC, POSITION=4, SEPARATOR="|", MDEF="term.start")
/FIELD=(END, TYPE=NUMERIC, POSITION=5, SEPARATOR="|", MDEF="term.end")

इस डीडीएफ मेटाडेटा का उपयोग इस संग्रह को प्रभावित करने वाले किसी भी कार्य (या नौकरियों) में किया जा सकता है, जिसमें इस उदाहरण में नीचे दिखाया गया है। _id कॉलम अनावश्यक है मेरे उद्देश्यों के लिए छोड़ दिया गया था।

"एमडीईएफ" विशेषता में डॉट नोटेशन के उपयोग पर ध्यान दें, जो असतत, फ्लैट तत्वों सॉर्टसीएल जॉब्स प्रक्रिया के लिए एक आवश्यक पथ परिभाषा है। बहु-मान और उप-दस्तावेज़ सरणी तत्व उनके दिखने के क्रम में 0 से शुरू होने वाले क्रम में उत्पन्न होते हैं।

जॉब डिज़ाइन विज़ार्ड चलाएँ

वर्कबेंच में वर्कबेंच, आपके प्रोग्राम के माध्यम से कमांड लाइन पर असतत कार्यों (.*cl स्क्रिप्ट) या बैच-संचालित जॉब्स (.flow और .bat/.sh फ़ाइलें) चलाने के लिए मेटाडेटा उत्पन्न करने के लिए कई अलग-अलग फिट-फॉर-पर्पस विजार्ड शामिल हैं। , आदि

मैंने एक बेसिक सॉर्ट ट्रांसफॉर्म विजार्ड चुना क्योंकि इसके भीतर मैं कई लक्ष्य, मास्क आउटपुट फ़ील्ड आदि जोड़ सकता हूं। यह विज़ार्ड टूलबार से CoSort मेनू समूह (स्टॉपवॉच) आइकन से चलता है। मैं नई क्रमबद्ध नौकरी select का चयन करता हूं और निर्दिष्ट chiefsout.scl मेरी नौकरी के नाम के रूप में:

अगले चरण में, मैं "प्रमुखों" के लिए मेटाडेटा परिभाषा के दौरान उपयोग किए गए उसी लोकेटर URL का उपयोग करके अपने स्रोत MongoDB संग्रह का नाम और यह कहां है, इसकी पहचान करता हूं:

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

अगले पृष्ठ पर, मैं अपने लक्ष्य (लक्ष्यों) में डेटा के क्रम को परिभाषित करने के लिए एक सॉर्ट कुंजी फ़ील्ड निर्दिष्ट करता हूं। इस मामले में, मैं राष्ट्रपतियों के डिफ़ॉल्ट कालानुक्रमिक क्रम से जाऊंगा और उन्हें नाम से क्रमबद्ध करूंगा:

अगला clicking क्लिक करने के बाद , डेटा लक्ष्य पृष्ठ प्रदर्शित करता है। मेरे स्रोत विकल्पों के साथ, इस विज़ार्ड के माध्यम से कई अलग-अलग प्रकार के लक्ष्य बना सकते हैं और प्रारूपित कर सकते हैं और बाद में किसी अन्य जॉब डिज़ाइन मोड (उदाहरण के लिए, स्क्रिप्ट संपादक) में भी।

यह और अन्य वर्कबेंच विजार्ड मुझे लक्ष्य जोड़ने और प्रत्येक की सामग्री को बारीक रूप से परिभाषित करने की अनुमति देते हैं। लक्ष्य-विशिष्ट विशेषताओं में शामिल हैं:प्रारूप (जैसे, CSV, MongoDB, MFVL), स्वरूपण (जैसे, शीर्षलेख और पाद लेख, छोड़ने के लिए पंक्तियाँ, आदि), फ़िल्टर की स्थिति, फ़ील्ड-स्तरीय लेआउट, और लागू किए गए फ़ंक्शन/नियम (जैसे, नए डेटा प्रकार, मास्क, अभिव्यक्ति तर्क, एकत्रीकरण)।

डेटा लक्ष्य पृष्ठ में, मुझे पता है कि मुझे दो लक्ष्य चाहिए:एक स्टैंडअलोन JSON फ़ाइल और एक दूरस्थ MongoDB संग्रह। इस प्रकार, मैं डेटा लक्ष्य जोड़ें . पर क्लिक करता हूं और पहले वाले को निर्दिष्ट करना शुरू करें। जब तक मैं लक्ष्य विकल्प या लक्ष्य फ़ील्ड लेआउट संपादित नहीं करता, मेरे आउटपुट में केवल इनपुट डेटा का सॉर्ट किया गया संस्करण होगा जैसा है। बस मेरा नाम रखने से मेरी JSON लक्ष्य फ़ाइल में यही होगा..

जब मैं फिर से डेटा लक्ष्य जोड़ें . पर क्लिक करता हूं मैं यूआरएल के माध्यम से दूसरे को मोंगोडीबी संग्रह के रूप में परिभाषित करता हूं। मेरा नया चीफस्मास्क जब मैं कार्य चलाता हूं तो संग्रह स्वचालित रूप से निर्मित और पॉप्युलेट हो जाएगा। यह उस लक्ष्य के भीतर है कि मैं गोपनीयता के लिए नकाबपोश क्षेत्रों में से एक चाहता हूं, इस मामले में राष्ट्रपति के नाम। मैं टारगेट फील्ड लेआउट पर क्लिक करता हूं मेरे स्रोत और लक्ष्य के लिए ऊपर से नीचे का मानचित्रण पृष्ठ खोलने के लिए:

यह पृष्ठ पहले से परिभाषित मेरे मास्किंग नियम को भी दिखाता है। मैंने परिभाषित किया था कि लक्ष्य में PRESIDENT पर राइट-क्लिक करके और नियम बनाएं clicking पर क्लिक करके (मौजूदा में ब्राउज़ करने के बजाय)। इसने नीचे दिखाए गए क्षेत्र-स्तरीय सुरक्षा विज़ार्ड की एक सूची खोली। ध्यान दें कि अधिक स्थिर डेटा मास्किंग फ़ंक्शन उपलब्ध हैं।

मैंने मास्किंग (चरित्र सुधार) का चयन किया। उस पृष्ठ पर, मैंने लक्ष्य संग्रह में पूरे राष्ट्रपति के नाम को छिपाने के लिए पूर्ण-क्षेत्रीय डिफ़ॉल्ट लिया:

इन चयनों को पूरा करने के बाद, मैं मैपिंग डायलॉग पर वापस आ गया हूं। मैं ठीक . क्लिक करता हूँ और डेटा लक्ष्य पृष्ठ पर वापस आएं। मेरे परिवर्तनों के अंत में, मैं नीचे दिए गए विवरण के साथ समाप्त करूंगा:

मैं ठीक . क्लिक करता हूँ विज़ार्ड को समाप्त करने और कार्य का निर्माण करने के लिए।

नौकरी की समीक्षा करें

chiefsout.scl . के साथ जॉब अब मेरे सक्रिय प्रोजेक्ट में बनाया गया है और मेरे लिए संपादन विंडो में स्वचालित रूप से खुला है, मैं इसे वहां से, या उपलब्ध इन-संदर्भ संवाद पृष्ठों के माध्यम से देख और संशोधित कर सकता हूं। यहां स्क्रिप्ट संपादन विकल्पों के बारे में जानें।

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

chiefsout.scl स्क्रिप्ट और chiefsout.flow फ़ाइल दोनों खुली, टीम-साझा करने योग्य मेटाडेटा संपत्ति हैं जो एक सामान्य डेटा मॉडल साझा करती हैं।

नौकरी चलाएं

मेरे द्वारा बनाए गए कार्य को कार्यक्षेत्र से बाहर और बाहर दोनों जगह निष्पादित करने के कई तरीके हैं।

नीचे दिखाया गया स्रोत संग्रह है और मेरा वही काम स्क्रिप्ट और रूपरेखा के रूप में दर्शाया गया है। नौकरी चलाने के बाद, मैंने सॉर्ट किए गए और नकाबपोश संग्रह लक्ष्य का एक MonjaDB दृश्य खोला, और मेरी सॉर्ट की गई JSON फ़ाइल लक्ष्य इसके दाईं ओर:

जैसा कि उल्लेख किया गया है, MongoDB डेटा का उपयोग करने वाले कई अन्य क्रमपरिवर्तन, और तेज़ डेटा प्रबंधन कार्य अब इस वातावरण में संभव हैं। IRI Voracity उपयोगकर्ता अब तीन कनेक्शन विधियों से MongoDB और दर्जनों कार्यात्मक क्षमताओं को चुन सकते हैं।

यदि आपके कोई प्रश्न हैं या सहायता की आवश्यकता है, तो यहां अपने आईआरआई प्रतिनिधि से संपर्क करें।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगो गैर-अद्वितीय क्षेत्रों पर 'डुप्लिकेट कुंजी त्रुटि' दे रहा है

  2. XFS बनाम EXT4 - AWS EC2 पर MongoDB प्रदर्शन की तुलना करना

  3. सी # 2.1 ड्राइवर से मोंगोडीबी डेटाबेस कनेक्शन को ठीक से बंद करना?

  4. केवल मोंगो-जावा-ड्राइवर का उपयोग करके मोंगोडीबी मूल क्वेरी (जेएसओएन) कैसे निष्पादित करें?

  5. योग मोंगोडब द्वारा समूह