我剛剛熟悉Mongodb,這就是爲什麼我做了一些愚蠢的事情。我的每個數據集的條目都包含一個時間戳(他們是Tweets)。我沒有在插入之前將時間戳從字符串轉換爲實際日期格式,而是將其簡單插入爲字符串。Mongodb緩慢更新循環
現在,我的數據集變得非常龐大(超過3百萬條推文),我想開始排序/排列我的條目。由於我的時間戳仍然是一個字符串(「Wed Apr 29 09:52:22 +0000 2015」),我想將其轉換爲日期格式。
我發現這個答案下面的代碼: How do I convert a property in MongoDB from text to date type?
> var cursor = db.ClockTime.find()
> while (cursor.hasNext()) {
... var doc = cursor.next();
... db.ClockTime.update({_id : doc._id}, {$set : {ClockInTime : new Date(doc.ClockInTime)}})
... }
而且它的偉大工程。然而,這是非常緩慢的。根據MongoHub應用程序,它每秒只處理4個查詢。使用300萬推文的數據集,這將需要大約8.6天的時間進行轉換。我真的希望有一種方法可以加快速度,因爲我的截止日期是8天:P
有什麼想法?
看看這個[文章](https://midnightcodr.github.io/2014/11/22/How-to-convert-20-million-datetime-strings-to-ISODate-in-less-比-30分鐘/) – Yogesh
這似乎很有前途,謝謝! – Diederik