簡體   English   中英

在Java中使用多個線程更新mongodb

[英]Updating mongodb using multiple threads in java

我有一個龐大的數據庫,在其中必須在“關鍵字”列中找到某些關鍵字。 如果我在“關鍵字”列中找到了要搜索的單詞,那么我會在同一元組中更新(增加1)另一列“計數器”。 我想做的是,使用線程同時搜索多個關鍵字,一旦找到關鍵字,它們就會增加計數器值。

例如:我想搜索“身份驗證”和“失敗”。 我為此運行2個線程。最后,“關鍵字”列為“身份驗證,失敗”的元組的“ Counter”值為2,“關鍵字”列值為“身份驗證,通過”的元組的“ Counter”值為1。具有“關鍵字”列值“安全性,通過次數”的元組的“計數器”值應為0。

先謝謝您的幫助。

如果在線程上使用$inc ,則應該得到所需的內容。

編輯:

線程1:

coll.update( { keywords: "authentification" }, { $inc: { counter: 1 } } );

線程2:

coll.update( { keywords: "failure" }, { $inc: { counter: 1 } } );

您需要確保的是, keywords屬性是使用string還是array 如果您的源數據看起來像"Authentication, Passes" ,則必須對其進行解析,並從中創建一個array例如[ "authentification", "passes" ]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM