我正在考虑使用Redis存储以下性质的数据:
data =[
['first_name', 'last_name', '', 'x', '', '', 'e'],
['x', '', '', 'x', '', '', 'x'],
['', '', '', 'x']
]
这将对应于一个看起来类似于以下的网格:
first_name last_name x e
x x x
x
如上所示,网格可以具有任意尺寸,并且没有类型限制。
以下是我需要支持的四个操作,以python等效为例:
# insert data at a specific cell, A2
data[0][2] = "new value"
# insert a new blank row, at 2
data.insert(1,[])
# insert a new blank column at B
for i in range(len(data)):
data[i].insert(1,'')
# retrieve all data
print(data)
redis是存储上述类型数据的好选择吗?如果是这样,如何保存以进行上述操作?作为另一种选择,我的想法是将其存储为json结构,其中包含所有数据,并且每次需要进行操作时都按需检索数据(尽管数据可能高达50MB并加载该数量的数据大约需要2秒)。还有一种选择是将其存储在(row,col,value)
之类的数据库中。
答案 0 :(得分:1)
使用Redis或任何其他DB的问题取决于许多系统要求。 例如:
为了回答您的问题,如果您需要使用redis,请按照您的描述进行操作:
其他替代方法是使用Mongodb。我会详细说明这个选项是否在桌子上