我需要开发一个键值后端,类似于这样的东西:
我听说过带有GIN/GIST的PostgreSQL hstore。在性能方面,哪个更好?传统的SQL连接和拥有单独的列(键/值)是一种方法,那么在这种情况下使用PostgreSQL hstore是否更好?
数据格式应为任何键=>任何值。我还想进行文本匹配,例如部分搜索(在SQL中使用LIKE %或使用hstore等效项)。我计划在其中拥有大约1M-2M条目,并可能在某些时候进行扩展。
你推荐什么?走SQL传统方式/PostgreSQL hstore或任何其他具有持久性的分布式键/值存储?
如果有帮助的话,我的服务器是一个1-2GB RAM的VPS,因此硬件不太好。我也在考虑在其上添加缓存层,但我认为这会使问题变得更加复杂。我只想要2M条目的良好性能。更新将经常进行,但搜索更为频繁。
谢谢。
Table T1 id-PK, Key - string, Value - string
INSERT into T1('String1', 'Value1')
INSERT INTO T1('String1', 'Value2')
Table T2 id-PK2, id2->external key to id
some other data in T2, which references data in T1 (like users which have those K/V etc)
我听说过带有GIN/GIST的PostgreSQL hstore。在性能方面,哪个更好?传统的SQL连接和拥有单独的列(键/值)是一种方法,那么在这种情况下使用PostgreSQL hstore是否更好?
数据格式应为任何键=>任何值。我还想进行文本匹配,例如部分搜索(在SQL中使用LIKE %或使用hstore等效项)。我计划在其中拥有大约1M-2M条目,并可能在某些时候进行扩展。
你推荐什么?走SQL传统方式/PostgreSQL hstore或任何其他具有持久性的分布式键/值存储?
如果有帮助的话,我的服务器是一个1-2GB RAM的VPS,因此硬件不太好。我也在考虑在其上添加缓存层,但我认为这会使问题变得更加复杂。我只想要2M条目的良好性能。更新将经常进行,但搜索更为频繁。
谢谢。