假設我在 MongoDB 中有以下格式的檔案:
students: Array
grades: Array
我目前有大約 10,000 名學生和不斷變化的年級。學生人數不斷增加,學生從檔案中洗掉。我有一個每 30 分鐘更新一次檔案的程序。同時,我構建了一個 ExpressJS API,各種教師每分鐘查詢一次資料庫,以查看有關學生的資訊。
- 更新資料的最佳方法是什么?既然有很多學生被添加、洗掉和改變成績的可能性,我應該每 30 分鐘覆寫一次檔案嗎?資料集整體大小只有幾 MB。
- 如果我碰巧在他們發出 GET 請求的同時進行更新,我如何確保教師不會停機?
uj5u.com熱心網友回復:
- 如果您有如此多的更改,最好一次用所有更改覆寫檔案,而不是每次都為任何單個學生更改更新檔案。
- 老師們沒有停機時間,他們只會閱讀以前的檔案,更改后他們會閱讀新檔案。
有這么多(10k 個學生/年級 - 陣列中的元素),如果您在集合中每個學生/年級有一個檔案,那么您只更新相關的學生檔案可能會更好。
您需要根據用例調整架構,我想不是每次教師都需要閱讀學生/成績的完整串列,而是每個班級或每節課或每所學校的學生,在這里猜測是因為我沒有看到您的確切用例和檔案示例...
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/440868.html
