2014-05-12 44 views
0

我嘗試使用下面的命令加載一個80兆JSON文件到MongoDB的:加載JSON到MongoDB的

mongoimport --db qt --collection cftable --type json --file cftable.json --jsonArray

我從mongoimport得到如下:

2014-05-12T14:16:00.338-0500 check 0 0 2014-05-12T14:16:00.338-0500 imported 0 objects encountered 1 error(s)

下面是一個示例記錄的樣子 - 其中大約有65,000個。沒有接近16毫克。整個文件是80 MB。有沒有辦法讓我能夠縮小問題的範圍?或者我用mongoimport吠叫錯誤的樹來做這樣的事情?

[ { "last_name": "Jones", "first_name": "Johny", "middle_name": "J.", "nick_name": "", "gen_qual": "", "degree": "Ph.D.", "specialty": "LabM & Path", "voting_staff_flag": "1", "start_date": "Jan 1 1900 12:00:00:000AM", "end_date": "Dec 31 2599 11:59:00:000PM", "time_code": "All Day", "resident_or_fellow_flag": "0", "smtp_address": "[email protected]", "per_id": "12345678", "rank": "Cons", "committee_member": "Y", "point_entity": "Somewhere", "s_last_name": "JONES", "s_first_name": "JOHNY", "ALT_IDENTIFIER_1": "JONESJ", "ALT_IDENTIFIER_2": "MRE2222", "ALT_IDENTIFIER_3": "SO_ST_02_50-EP", "ALT_IDENTIFIER_4": "123456", "campus_name": "Somewhere, Ohio", "work_locations": [ { "w_ai": 17395220, "work_location_sort": 15, "building": "Rexell Building", "floor": "2", "area": "Experimental Pathology", "pager": "111 or (11)5-5555", "phone": "(11)9-9999", "supports": [ { "support_sort": 0, "support_desc": " ", "support_note": " ", "support_phone": " ", "support_start_date": "", "support_end_date": "" } ] }, { "w_ai": 174956, "work_location_sort": 25, "building": "Rexell Building", "floor": "2", "area": "Laboratory", "pager": "111 or (11)1-1111", "phone": "(11)2-2222", "supports": [ { "support_sort": 15, "support_desc": "Medical Secretary", "support_note": " ", "support_phone": "(11)6-6666", "support_start_date": "Jan 1 1900 12:00:00:000AM", "support_end_date": "Dec 31 2599 12:00:00:000AM" } ] } ] } ''' ]

+0

有沒有辦法得到返回的錯誤信息? – tympaniplayer

+0

我想這是我的問題的一部分 - 我知道的唯一的「返回」是我上面發佈的......沒有看到任何標誌建立錯誤日誌等 – Tiggyboo

+0

看看你是否可以得到最後一個錯誤。 http://docs.mongodb.org/manual/reference/command/getLastError/ – tympaniplayer

回答

0

我會插入你的記錄到MongoDB中,做一個mongoexport - 和比較對你的文件的文件。

+0

我覺得這是一個足夠好的想法,可以作爲答案,但是魔鬼實際上是在我300萬行的碗洞深處破碎的深處。我相應地改變了我的Python解析代碼,整個事情運行良好。我能夠通過-vvv標誌獲得更多信息,但還不足以識別破碎的json - 我終於通過剪切/粘貼將其傳送到了jsonlint.com。 – Tiggyboo