NOSOL

作者: 木头的男人 | 来源:发表于2018-05-01 20:12 被阅读0次
    简介
        * NoSQL,全名为Not Only SQL,指的是非关系型的数据库
        * 随着访问量的上升,网站的数据库性能出现了问题,于是nosql被设计出来
        优点
            * 高可扩展性
            * 低成本
            * 架构的灵活性,半结构化数据
            * 分布式计算
            * 没有复杂的关系
        缺点
            * 没有标准化
            * 最终一致是不直观的程序
            * 有限的查询功能(到目前为止)
        类型
            列存储
            文档存储
            key-value存储
            图存储
            对象存储
            xml数据库
    nosql--redis安装
        安装
            https://redisdesktop.com/
        下载
            http://download.redis.io/releases/redis-4.0.9.tar.gz
        推荐放到usr/local目录下
            sudo mv redis-4.0.9/ /usr/local/redis/
    

    进入redis目录
    cd /usr/local/redis/redis-4.0.9
    如果没有就进入cd /usr/local/redis/
    生成
    sudo make
    测试
    sudo make test
    安装
    sudo make install
    运行
    启动服务器:在桌面目录
    redis-server
    按ctrl+c停止
    启动客户端:在新终端中运行
    redis-cli
    运行命令
    ping
    数据操作
    键的类型是字符串
    键的命令
    查找键,参数支持正则
    KEYS pattern
    keys *
    判断键是否存在,如果存在返回1,不存在返回0
    EXISTS key [key ...]
    查看键对应的value的类型
    TYPE key
    删除键及对应的值
    DEL key [key ...]
    设置过期时间,以秒为单位
    创建时没有设置过期时间则一直存在,直到使用使用DEL移除
    EXPIRE key seconds
    查看有效时间,以秒为单位
    TTL key
    值的类型分为五种
    字符串string
    设置
    设置键值
    set key value
    设置键值及过期时间,以秒为单位
    SETEX key seconds value
    设置多个键值
    MSET key value [key value ...]
    获取
    根据键获取值,如果不存在此键则返回nil
    GET key
    根据多个键获取多个值
    MGET key [key ...]
    运算
    要求:值是数字
    将key对应的value加1
    INCR key
    将key对应的value加整数
    INCRBY key increment
    将key对应的value减1
    DECR key
    将key对应的value减整数
    DECRBY key decrement
    其他
    追加值
    APPEND key value
    获取值长度
    STRLEN key
    * 哈希hash
    hash用于存储对象,对象的格式为键值对
    设置
    设置单个属性
    HSET key field value
    设置多个属性
    HMSET key field value [field value ...]
    获取
    获取一个属性的值
    HGET key field
    获取多个属性的值
    HMGET key field [field ...]
    获取所有属性和值
    HGETALL key
    获取所有的属性
    HKEYS key
    返回包含属性的个数
    HLEN key
    获取所有值
    HVALS key
    其它
    判断属性是否存在
    HEXISTS key field
    删除属性及值
    HDEL key field [field ...]
    返回值的字符串长度
    HSTRLEN key field
    * 列表list
    设置
    在头部插入数据
    LPUSH key value [value ...]
    在尾部插入数据
    RPUSH key value [value ...]
    在一个元素的前|后插入新元素
    LINSERT key BEFORE|AFTER pivot value
    索引可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
    LSET key index value
    获取
    移除并且返回 key 对应的 list 的第一个元素
    LPOP key
    移除并返回存于 key 的 list 的最后一个元素
    RPOP key
    偏移量也可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
    LRANGE key start stop
    其它
    偏移量也可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
    LTRIM key start stop
    返回存储在 key 里的list的长度
    LLEN key
    返回列表里索引对应的元素
    LINDEX key index
    * 集合set
    特点
    * 无序集合
    * 元素为string类型
    * 元素具有唯一性,不重复
    设置
    添加元素
    SADD key member [member ...]
    获取
    返回key集合所有的元素
    SMEMBERS key
    返回集合元素个数
    SCARD key
    其他
    求多个集合的交集
    SINTER key [key ...]
    求某集合与其它集合的差集
    SDIFF key [key ...]
    求多个集合的合集
    SUNION key [key ...]
    判断元素是否在集合中
    SISMEMBER key member
    有序集合zset
    特点
    * sorted set,有序集合
    * 元素为string类型
    * 元素具有唯一性,不重复
    * 每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序
    * 元素的score可以相同
    设置
    添加
    ZADD key score member [score member ...]
    获取
    返回指定范围内的元素
    ZRANGE key start stop
    返回元素个数
    ZCARD key
    返回有序集key中,score值在min和max之间的成员个数
    ZCOUNT key min max
    返回有序集key中,成员member的score值
    ZSCORE key member

    相关文章

      网友评论

          本文标题:NOSOL

          本文链接:https://www.haomeiwen.com/subject/mmaclftx.html