/ / mongoDB संग्रह को mySQL डेटाबेस में बदलें - mysql, json, mongodb, robo3t, database

mongoDB संग्रह को mySQL डेटाबेस में कनवर्ट करें - mysql, json, mongodb, robo3t, डेटाबेस

मुझे अपना प्रोजेक्ट स्प्रिंग 4 MVC + में बनाया गया थाMongoDB के साथ हाइबरनेट करें। अब, मुझे इसे MySQL के साथ हाइबरनेट में बदलना होगा। मेरी समस्या यह है कि मेरे पास MongoDB में बहुत सारे संग्रह हैं जो कि बॉसन और जोंस के प्रारूप हैं। मैं उस फ़ाइल को MySQL टेबल फॉर्मेट में कैसे बदल सकता हूँ? क्या यह संभव है?

उत्तर:

जवाब के लिए 2 № 1

आपके MongoDB संग्रह में दस्तावेज़अपनी परियोजना में कुछ वर्गों (पीओजेओ, डोमेन ऑब्जेक्ट आदि) के क्रमबद्ध रूपों का प्रतिनिधित्व करें। संभवत:, आपने MongoDB के इस डेटा को इसके वर्ग रूप में deserialise से पढ़ा और अपने प्रोजेक्ट में इसका उपयोग करें उदा। इसे अंतिम उपयोगकर्ताओं के लिए प्रदर्शित करें, गणना में इसका उपयोग करें, इससे रिपोर्ट उत्पन्न करें आदि।

अब, आप MySQL में उस डेटा को होस्ट करना पसंद करेंगेआप यह जानना चाहते हैं कि MongoDB से MySQL में डेटा को कैसे स्थानांतरित किया जाए लेकिन चूंकि लगातार प्रारूप मौलिक रूप से भिन्न हैं आप सोच रहे हैं कि यह कैसे करना है।

यहाँ दो विकल्प हैं:

  • MongoDB से डेटा को पढ़ने के लिए अपने एप्लिकेशन कोड का उपयोग करें, इसे अपनी कक्षाओं में दर्ज करें और फिर JDBC या ORM मैपिंग परत आदि का उपयोग करके MySQL में उस डेटा को लिखें।
  • उपयोग mongoexport MongoDB (JSON प्रारूप में) से डेटा निर्यात करने के लिए और फिर कुछ प्रकार के एडेप्टर लिखें जो इस डेटा को आपके MySQL डेटा मॉडल के लिए वांछित प्रारूप में मैप करने में सक्षम है।

गैर कार्यात्मक (विशेष रूप से पढ़ने के लिए औरइन पहलुओं के बीच अंतर होगा) लेकिन मूल रूप से दोनों दृष्टिकोण काफी समान हैं; वे दोनों (1) MongoDB से पढ़ते हैं; (2) संबंधपरक मॉडल में दस्तावेज़ डेटा को मैप करें; (3) मैप किए गए डेटा को MySQL में लिखें। इस प्रवाह का सबसे पेचीदा पहलू नहीं है। 2 और जब से आप केवल अपने डेटा और अपने संबंधपरक मॉडल को समझते हैं, कोई उपकरण नहीं है जो जादुई रूप से आपके लिए यह कर सकता है एक तीसरे पक्ष के उपकरण को आपके दस्तावेज़ मॉडल और आपके संबंधपरक मॉडल के बारे में पर्याप्त रूप से जानकारी होगी कि आप इस परिवर्तन को कैसे कर पाएंगे?

आप एक MongoDB JDBC ड्राइवर की जांच कर सकते हैं या अपने Mongo DB पर JDBC प्रश्नों की सुविधा के लिए Apache Drill जैसी किसी चीज़ का उपयोग कर सकते हैं। चूंकि ये वापस लौट सकते थे java.sql.ResultSet आप एक परिणाम स्वरूप के साथ काम कर रहे होंगेMySQL पर लिखने के लिए अधिक उपयुक्त है, लेकिन यह संभावना है कि यह अभी भी आपके लक्षित संबंध मॉडल से मेल नहीं खाएगा और इसलिए आपको अभी भी कुछ प्रकार के परिवर्तन कोड की आवश्यकता है।


जवाब के लिए 2 № 2

मोंगोडब एक गैर-संबंधपरक डेटाबेस है, जबकि MySQLसंबंधपरक है। मुख्य अंतर यह है कि गैर-संबंधपरक डेटाबेस में दस्तावेज़ (JSON ऑब्जेक्ट्स) होते हैं, जिसमें पदानुक्रमित संरचना शामिल हो सकती है, जहां रिलेशनल डेटाबेस ऑब्जेक्ट्स को सामान्य करने की उम्मीद करता है, और तालिकाओं में टूट जाता है। इसलिए यह संभव नहीं है कि केवल MongoDB से बॉन डेटा को कुछ में परिवर्तित किया जाए, जिसे MySQL समझेगा। आपको कुछ कोड लिखना होगा जो MongoDB के डेटा को पढ़ेंगे और इसे MySQL में लिखेंगे।