我需要存儲短字符串(50個以上的字符),並快速查找它們。起初我想爲此使用SQLite。我使用一個索引的TEXT列創建了一個表。使用各種低級技巧,我可以在10秒內用100萬個字符串填充數據庫。鍵值數據庫
問題是如果PC重新啓動,添加額外的10.000行耗時30秒,這與10秒內的1M行無緣。原因是SQLite在添加新行之前必須從磁盤讀取現有索引的很大一部分。另一個問題是數據庫的大小增加了一倍,因爲所有的字符串由於b-tree機制而被存儲了兩次(一次在常規表中,一次在索引表中)。
有沒有簡單的選擇?例如,使用基於散列的查找?我瞭解各種NoSQL解決方案,但他們專注於分佈式和分佈式存儲,而我只需要一個簡單的嵌入式'平面文件'數據庫?
我不明白它的指數?你是否使用與鍵和值相同的值? – jgauffin
你需要指定你想要嵌入式數據庫的巫術語言/平臺。 – jgauffin
如果您使用與索引和值相同的值,則索引完全無用。 – jgauffin