zoukankan      html  css  js  c++  java
  • 用Redis作Mysql数据库缓存

    使用redis作mysql数据库缓存时,需要考虑两个问题

    1、确定用何种数据结构存储来自Mysql的数据;

    2、在确定数据结构之后,用什么标识作为该数据结构的键

    直观上看,Mysql中的数据都是按表存储的;更微观地看,这些表都是按行存储的。每执行一次select查询,Mysql都会返回一个结果集,这个结果集由若干行组成。所以,一个自然而然的想法就是在Redis中找到一种对应于Mysql行的数据结构。Redis中提供了五种基本数据结构,即字符串(string)、列表(list)、哈希(hash)、集合(set)和有序集合(sorted set)。经过调研,发现适合存储行的数据结构有两种,即string和hash。

    要把Mysql的行数据存入string,首先需要对行数据进行格式化。事实上,结果集的每一行都可以看做若干由字段名和其对应值组成的键值对集合。这种键值对结构很容易让我们想起Json格式。因此,这里选用Json格式作为结果集每一行的格式化模板。根据这一想法,我们可以实现将结果集格式化为若干Json对象,并将Json对象转化为字符串存入Redis的代码。

  • 相关阅读:
    HDU
    HDU
    [JSOI2009]计数问题 二维树状数组BZOJ 1452
    THU 上机 最小邮票数 暴力枚举
    SJTU 机试 最小面积子矩阵 压缩+双指针
    SJTU 机试 数学
    Preprefix sum BZOJ 3155 树状数组
    [HNOI2004]树的计数 BZOJ 1211 prufer序列
    HDU 5009
    上下界网络流模型常见解法
  • 原文地址:https://www.cnblogs.com/dpf-10/p/9180658.html
Copyright © 2011-2022 走看看