Nosql

作者: HZGTK | 来源:发表于2018-05-01 20:47 被阅读0次

    1、优点:(1) 优点: 高可扩展性,分布式计算,低成本,架构的灵活性,半结构化数据,没有复杂的关系。

    2、缺点: 没有标准化,有限的查询功能(到目前为止),最终一致是不直观的程序。

    3、列存储:(Hbase Cassandra Hypertable):顾名思义,是按列存储数据的。最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有非常大的IO优势。
    文档存储:(MongoDB CouchDB):文档存储一般用类似json的格式存储,存储的内容是文档型的。这样也就有有机会对某些字段建立索引,实现关系数据库的某些功能。
    key-value存储:(Tokyo Cabinet / Tyrant Berkeley DB MemcacheDB Redis):可以通过key快速查询到其value。一般来说,存储不管value的格式,照单全收。(Redis包含了其他功能)
    xml数据库:(Berkeley DB XML BaseX):高效的存储XML数据,并支持XML的内部查询语法,比如XQuery,Xpath。
    对象存储:(db4o Versant):通过类似面向对象语言的语法操作数据库,通过对象的方式存取数据。

    4、Nosql的基本操作命令:(1)值的类型: 字符串string、哈希hash、列表list、集合set、有序集合zset。

    5、string: string是redis最基本的类型,最大能存储512MB数据,string类型是二进制安全的,即可以为任何数据,比如数字、图片、序列化对象等。
    命令: 设置键值:set key value;设置键值及过期时间,以秒为单位:SETEX key seconds value; 设置多个键值:SET key value [key value ...];
    6、hash:hash用于存储对象,对象的格式为键值对。
    命令: 设置单个属性:HSET key field value; 设置多个属性:MSET key field value [field value ...];
    7、list:列表的元素类型为string,按照插入顺序排序,在列表的头部或者尾部添加元素。
    命令: 在头部插入数据:LPUSH key value [value ...]; 在尾部插入数据:RPUSH key value [value ...]; 移除并且返回 key 对应的 list 的第一个元素:LPOP key
    8、set: 无序集合、元素为string类型、元素具有唯一性,不重复。
    命令: 添加元素:SADD key member [member ...]; 返回key集合所有的元素:SMEMBERS key; 判断元素是否在集合中:SISMEMBER key member
    9、zset: sorted set,有序集合、元素为string类型、元素具有唯一性,不重复、每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序、元素的score可以相同
    命令: 添加:ZADD key score member [score member ...]; 返回指定范围内的元素:ZRANGE key start stop; 返回有序集key中,score值在min和max之间的成员个数:ZCOUNT key min max

    相关文章

      网友评论

        本文标题:Nosql

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