2011-11-17 51 views
1

我試圖插入插入文檔巨大(〜831M)文件到蒙戈集合使用mongoimport的MongoDB:錯誤,同時使用mongoimport

/Library/mongodb/bin/mongoimport --port 12345 -d staging -c collection < out.all.1 

,看到喜歡

exception:Failure parsing JSON string near: , 'Custome 

,並存在一定的誤區我發現一些奇怪的字符的例子

'CustomerCity': u'Wall \xa0' 
'CustomerCity': u'La Ca\xc3\xb1ada Flintridge' 
'CustomerCity': u'La Ca\xf1ada Flintridge' 

如何解決這些問題?

謝謝

+0

有幾個問題:你用什麼版本的mongo來導入?什麼版本捕獲數據?什麼驅動程序(類型和版本)?任何框架,例如貓鼬,mongoid? – jpredham

+0

什麼是文件結構? – hellectronic

+0

我使用mongodb shell,版本1.8.1,通過python程序計算數據並使用mongoimport插入,文件結構是基於JSON的文檔 – daydreamer

回答

0

我達成了類似的問題,即mongoimport了在平面文件我問它導入有關非UTF8字符錯誤。這google groups thread促使我嘗試把我的源數據文件通過的iconv UNIX命令行以「正確的」非UTF-8字符上,即:

iconv -f ISO-8859-1 -t UTF-8 inputfile.txt > outputfile.txt 

上解決了這個問題對我來說。我想知道這種方法可以幫助你嗎?雖然你看到的錯誤是不同的,但它是搞亂JSON解析的奇怪字符,不是嗎?

但是,如果您自己生成這些奇怪字符,那麼這些奇怪字符如何在輸出數據中結束。也許你可以過濾生成輸出的代碼?