簡體   English   中英

MongoDB存儲大關鍵字表查詢性能

[英]MongoDB Storing Large Keywords Table Query Performance

我需要存儲一個包含大量關鍵字對象示例的集合:

{ key: "tokyo", someMeta: "meta.." }

db.keyword.createIndex({ key: 1 }, { unique: 1 })

我將其用作查找字典,因此將非常頻繁地調用它。

據我了解,這種查找需要O(log n)的復雜性,因此從HashSet O(1)進行查找的速度並不快。

我應該使用此索引查詢來執行執行查找,還是應該查詢集合中的所有對象,將其放入HashSet中,然后從該哈希集中進行查找?

假設我在該集合中有超過一百萬個對象。

大約一年前,我已經對同一任務進行了基准測試。 瓶頸不是B樹(因為某些DBMS允許創建HASH索引),而是jdbc驅動程序,網絡堆棧等。

Java的本機Hashmap比Oracle / MySQL(即使有內存表),Postgres,Mongo快300-500 ++倍,它們都位於同一服務器上。

與內存Mysql相比,Hashmap還需要兩倍的LESS內存。

對於具有300萬條記錄的地圖,Hashmap大約需要1GB的RAM。

而且,令人驚訝的是,Mongo並不是所有的最快。 我期望Mongo在DBMS中扮演領導角色

RAM消耗的贏家是PostgreSQL和MySQL均擁有350MB,Mongo 650MB。

暫無
暫無

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

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