2016-01-20 63 views
0

這裏運行計劃作業的數據生成是關於我的開發環境的信息:從內部的MongoDB本身

-MongoDB 3.0.0

-MongoDB C#驅動程序版本1.7.0.4714

- 微軟的Visual Studio專業2013

-.NET Framework 4.0中

在MongoDB的數據庫中,有一個用戶收藏和d iaryEntries將是一個集合。

假設我們必須爲我們的用戶生成一些每日日誌條目,如果用戶還沒有登錄創建它自己。

我們可以創建一個Windows任務計劃程序來運行cron作業C#程序,爲我們應用程序的每個用戶創建日記條目,這些用戶在當天沒有它。

但是,隨着時間的推移,應用程序中將會有大量用戶,並且似乎每天運行的cron作業C#程序首先檢查每個用戶是否有每日日誌條目,然後如果用戶在那一天沒有,則只創建每日日誌條目。

我想知道是否有一種從MongoDB本身內部運行Cron Job的數據生成方式來執行上述任務。如果是的話,可能會比從C#執行任務的性能更好?如果它的性能比用C#做得更好,那麼請告訴我如何在MongoDB內部實現它?

回答

1

不,MongoDB沒有任務調度程序。

以我的經驗cron作業表現非常好。如果你做了很多寫操作,那麼使用批量API可以提供很大的改進。

你可以用JavaScript做你的工作,然後使用Mongo shell來運行它,但是我沒有經歷過這種方式的性能優勢。唯一的好處是編寫shell腳本有時比其他語言更容易。

+0

對不起,您能否提供給我更多關於您提到的批處理API的信息? –

+0

對不起,我的意思是批量API。 – Martin

+0

你的意思是MongoDb的Bulk API? –