key/value 使用时怎么减少冗余

发布于 2021-11-24 11:30:08 字数 838 浏览 980 评论 1

使用的是memcached 

编程语言:java 

客户端:XMemcached

如果有一张数据库表:区域(area)怎么放缓存里,但冗余的数据不要太多

表结构

CREATE TABLE AREA
   (
 AREA_ID VARCHAR2(200) NOT NULL ENABLE, 
 CODE VARCHAR2(50), 
 NAME VARCHAR2(500), 
 AREATYPE VARCHAR2(50), 
 SZIP_CODE VARCHAR2(50), 
 SAREA_NUM VARCHAR2(50)
 CONSTRAINT PK_HSPUB_AREA_3YA PRIMARY KEY (PK_AREA)
   ) 

业务场景:因为是多系统的数据交换,所以经常有

用id找到code或name ,

用name找到id,code

用code找到id,name

还有三个其一找到整行数据的问题

如测试数据:29 29 广东省 1 5170000 542

(这只是测试数据,正常的id有可能是20-50位长,code 一般是数字,name是中文,还有其它字段若干)

现在缓存里存成这样:key => value

area
              

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苍暮颜 2021-11-26 01:37:25
area:id = > {"29",}
area:id:code:29 => 29
area:id:name:29 => 广东省
area:code:id:29 => 29
area:code:name:29 => 广东省
area:name:id:广东省 => 29
area:name:code:广东省 => 29
area:id:row:29 =>  {"AREA_ID": "29","CODE": "29","NAME": "广东省","AREATYPE": 

"1","SZIP_CODE": "5170000","SAREA_NUM": "542"}

现在我是这样的id code name 都可以一步取得,row有id时一步取得,没有时两步搞定

感觉这样已经不错了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文