簡體   English   中英

如何最佳地存儲50萬個鍵值對?

[英]how to optimally store a half million key value pairs?

因此,我有一個附加了ID的對象。 我需要在該ID上進行查找並獲得另一個ID。 我只是不知道最有效的方法。

本質上,轉換將如下所示:

1 -> af567
2 -> at678
3 -> dh675

我將在Python中進行此查找,並且所有這些值在運行時之前都是已知的。 我想到了Json,SQLite或預建詞典,但是我不確定是否要采用最佳途徑。 這些對將存儲500,000。 我只需要知道存儲這些對的最佳媒介

好的,您有500.000個項目,其中一個數字映射到一個五位數的字符串:

讓我們測試一下

def five(i):
    """turns a number into an at least five-digit string"""
    s = hex(s).replace('0x', '')
    return '0' * (5 - len(s)) + s

# 500k items, no duplication
d = {}
for i in range(500000):
    d[i] = five(i)

# see https://code.activestate.com/recipes/577504/
total_size(d, verbose=False) / 1024 / 1024
# => 33.8720645904541 (megabytes)

沒什么,真的。 使用字典。

暫無
暫無

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

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