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

MongoDB - निर्यात डेटा

MongoDB में, आप mongoexport . का उपयोग करके डेटा निर्यात कर सकते हैं उपयोगिता।

आप mongoexport . का उपयोग कर सकते हैं अपने MongoDB डेटाबेस से JSON या CSV फ़ाइल में डेटा निर्यात करने की उपयोगिता।

उपयोगिता MongoDB bin . में स्थित है निर्देशिका (जैसे, /mongodb/bin ) जब आप उपयोगिता चलाते हैं, तो डेटाबेस का नाम, संग्रह, और उस फ़ाइल को प्रदान करें जिसे आप इसे निर्यात करना चाहते हैं।

डेटा निर्यात करने के लिए, पहले एक नया टर्मिनल/कमांड प्रॉम्प्ट विंडो खोलें, फिर लागू कमांड टाइप करें।

किसी संग्रह को JSON फ़ाइल में निर्यात करें

यहां, हम mongoexport . का उपयोग करते हैं कलाकारों को निर्यात करने के लिए JSON फ़ाइल में संग्रह:

mongoexport --db music --collection artists --out /data/dump/music/artists.json

परिणामी संदेश:

2016-07-12T09:57:37.613+0700	connected to: localhost
2016-07-12T09:57:37.614+0700	exported 13 records

परिणामी फ़ाइल:

{"_id":{"$oid":"5780fbf948ef8c6b3ffb0149"},"artistname":"The Tea Party"}
{"_id":{"$oid":"5781c9ac48ef8c6b3ffb014a"},"artistname":"Jorn Lande"}
{"_id":1.0,"artistname":"AC/DC"}
{"_id":{"$oid":"5781d7f248ef8c6b3ffb014d"},"artistname":"The Kooks"}
{"_id":{"$oid":"5781d7f248ef8c6b3ffb014e"},"artistname":"Bastille"}
{"_id":{"$oid":"5781d7f248ef8c6b3ffb014f"},"artistname":"Gang of Four"}
{"_id":{"$oid":"5781f85d48ef8c6b3ffb0150"},"artistname":"Deep Purple","albums":[{"album":"Machine Head","year":1972.0,"genre":"Rock"},{"album":"Stormbringer","year":1974.0,"genre":"Rock"}]}
{"_id":{"$oid":"578214f048ef8c6b3ffb0159"},"artistname":"Miles Davis","albums":[{"album":"Kind of Blue","year":1959.0,"genre":"Jazz"},{"album":"Bitches Brew","year":1970.0,"genre":"Jazz"}]}
{"_id":{"$oid":"578217c248ef8c6b3ffb015a"},"artistname":"Robben Ford","albums":[{"album":"Bringing it Back Home","year":2013.0,"genre":"Blues"},{"album":"Talk to Your Daughter","year":1988.0,"genre":"Blues"}]}
{"_id":{"$oid":"578217c248ef8c6b3ffb015b"},"artistname":"Snoop Dogg","albums":[{"album":"Tha Doggfather","year":1996.0,"genre":"Rap"},{"album":"Reincarnated","year":2013.0,"genre":"Reggae"}]}
{"_id":2.0,"artistname":"Prince","address":{"street":"Audubon Road","city":"Chanhassen","state":"Minnesota","country":"United States"}}
{"_id":3.0,"artistname":"Moby","albums":[{"album":"Play","year":1999.0,"genre":"Electronica"},{"album":"Long Ambients 1: Calm. Sleep.","year":2016.0,"genre":"Ambient"}]}
{"_id":4.0,"artistname":"Rush"}

यदि आप पाते हैं कि आप mongoexport नहीं चला सकते हैं , सुनिश्चित करें कि आप mongo . से बाहर निकल चुके हैं उपयोगिता, या mongoexport चलाने से पहले एक नई टर्मिनल/कमांड प्रॉम्प्ट विंडो खोली , क्योंकि यह एक अलग उपयोगिता है।

उपरोक्त आदेश मानता है कि मोंगोडीबी बिन निर्देशिका आपके पथ में है। अगर ऐसा नहीं है, तो आपको mongoexport के पूरे पथ का उपयोग करना होगा फ़ाइल। उदाहरण के लिए, /mongodb/bin/mongoexport या जहाँ भी आपका MongoDB परिनियोजन स्थापित है।

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

एक संग्रह को CSV फ़ाइल में निर्यात करें

CSV फ़ाइल में निर्यात करने के लिए, --type=csv add जोड़ें आदेश के लिए।

निर्यात करने के लिए आपको MongoDB दस्तावेज़ों में फ़ील्ड भी निर्दिष्ट करनी होगी।

यहां, हम mongoexport . का उपयोग करते हैं कलाकारों को निर्यात करने के लिए CSV फ़ाइल में संग्रह। हम _id . निर्यात करते हैं और कलाकार का नाम खेत। हमने फ़ाइल का नाम .csv . भी दिया है विस्तार।

mongoexport --db music --collection artists --type=csv --fields _id,artistname --out /data/dump/music/artists.csv

परिणामी संदेश:

2016-07-12T10:16:33.111+0700	connected to: localhost
2016-07-12T10:16:33.114+0700	exported 13 records

परिणामी CSV फ़ाइल:

_id,artistname
ObjectId(5780fbf948ef8c6b3ffb0149),The Tea Party
ObjectId(5781c9ac48ef8c6b3ffb014a),Jorn Lande
1,AC/DC
ObjectId(5781d7f248ef8c6b3ffb014d),The Kooks
ObjectId(5781d7f248ef8c6b3ffb014e),Bastille
ObjectId(5781d7f248ef8c6b3ffb014f),Gang of Four
ObjectId(5781f85d48ef8c6b3ffb0150),Deep Purple
ObjectId(578214f048ef8c6b3ffb0159),Miles Davis
ObjectId(578217c248ef8c6b3ffb015a),Robben Ford
ObjectId(578217c248ef8c6b3ffb015b),Snoop Dogg
2,Prince
3,Moby
4,Rush

प्रश्न के परिणाम निर्यात करें

आप --query का उपयोग कर सकते हैं निर्यात करने के लिए एक क्वेरी निर्दिष्ट करने का विकल्प। क्वेरी को सिंगल कोट्स में संलग्न किया जाना चाहिए।

यहां, हम माइल्स डेविस के विवरण को JSON फ़ाइल में निर्यात करते हैं:

mongoexport --db music --collection artists --query '{"artistname": "Miles Davis"}' --out /data/dump/music/miles_davis.json

परिणामी संदेश:

2016-07-12T10:32:19.794+0700	connected to: localhost
2016-07-12T10:32:19.795+0700	exported 1 record

परिणामी JSON फ़ाइल:

{"_id":{"$oid":"578214f048ef8c6b3ffb0159"},"artistname":"Miles Davis","albums":[{"album":"Kind of Blue","year":1959.0,"genre":"Jazz"},{"album":"Bitches Brew","year":1970.0,"genre":"Jazz"}]}

अन्य विकल्प

मोंगोएक्सपोर्ट उपयोगिता कई विकल्प प्रदान करती है। यहाँ कुछ संभावित रूप से उपयोगी हैं।

--limit विकल्प

निर्यात में दस्तावेज़ों की संख्या सीमित करता है।

mongoexport --db music --collection artists --limit 3 --out /data/dump/music/3_artists.json

परिणामी फ़ाइल:

{"_id":{"$oid":"5780fbf948ef8c6b3ffb0149"},"artistname":"The Tea Party"}
{"_id":{"$oid":"5781c9ac48ef8c6b3ffb014a"},"artistname":"Jorn Lande"}
{"_id":1.0,"artistname":"AC/DC"}

--sort विकल्प

निर्दिष्ट करता है कि परिणाम कैसे क्रमित किए जाते हैं।

यहां, हम फ़ाइल को _id . के अनुसार क्रमित करते हैं फ़ील्ड आरोही क्रम में (यानी 1 ) इसे अवरोही बनाने के लिए, -1 . का उपयोग करें ।

mongoexport --db music --collection artists --limit 3 --sort '{_id: 1}' --out /data/dump/music/3_artists_sorted.json

परिणामी फ़ाइल:

{"_id":1.0,"artistname":"AC/DC"}
{"_id":2.0,"artistname":"Prince","address":{"street":"Audubon Road","city":"Chanhassen","state":"Minnesota","country":"United States"}}
{"_id":3.0,"artistname":"Moby","albums":[{"album":"Play","year":1999.0,"genre":"Electronica"},{"album":"Long Ambients 1: Calm. Sleep.","year":2016.0,"genre":"Ambient"}]}

--skip विकल्प

आपको mongoexport को निर्देश देने की अनुमति देता है निर्यात संचालन शुरू करने से पहले कई दस्तावेजों को छोड़ने के लिए।

mongoexport --db music --collection artists --limit 3 --sort '{_id: 1}' --skip 2 --out /data/dump/music/3_artists_sorted_skipped.json

परिणामी फ़ाइल:

{"_id":3.0,"artistname":"Moby","albums":[{"album":"Play","year":1999.0,"genre":"Electronica"},{"album":"Long Ambients 1: Calm. Sleep.","year":2016.0,"genre":"Ambient"}]}
{"_id":4.0,"artistname":"Rush"}
{"_id":{"$oid":"5780fbf948ef8c6b3ffb0149"},"artistname":"The Tea Party"}

--pretty विकल्प

दस्तावेज़ों को अधिक पठनीय JSON प्रारूप में आउटपुट करता है।

mongoexport --db music --collection artists --query '{"artistname": "Miles Davis"}' --pretty --out /data/dump/music/miles_davis_pretty.json

परिणामी फ़ाइल:

{
	"_id": {
		"$oid": "578214f048ef8c6b3ffb0159"
	},
	"artistname": "Miles Davis",
	"albums": [
		{
			"album": "Kind of Blue",
			"year": 1959.0,
			"genre": "Jazz"
		},
		{
			"album": "Bitches Brew",
			"year": 1970.0,
			"genre": "Jazz"
		}
	]
}

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेवला के साथ DbRef - नेवला-dbref या आबाद?

  2. 16mb आकार से ऊपर के दस्तावेज़ के लिए MongoDB वर्कअराउंड?

  3. $in को दूसरे तर्क के रूप में एक सरणी की आवश्यकता है, पाया गया:अनुपलब्ध

  4. MongoDB में फ़ाइल आयात करते समय मौजूदा दस्तावेज़ों को कैसे बदलें

  5. मोंगो में विरल अनुक्रमणिका और अशक्त मान