Redis是一种基于key-value的内存数据库,这决定了Redis必然会具备两个特点:
1) 数据结构简单。无法像基于文档的数据库系统(如MongoDB)一样可以随意嵌套定义,Redis的value最复杂也只能定义为Hash结构(类似于hash_map,是一个key-value结构),即最多嵌套一层key-value。
2) 运行速度快。节省了磁盘读写的时间决定了Redis运行速度很快。
1.Redis的数据结构
作为典型的key-value类型的数据库,redis的key用String来存储,通过key可以获取相应的value。Value可以是string、hash(哈希)、list(列表)、set(集合)、sorted set(有序集合)等类型。除了使用跳跃表(skip list)实现sorted set之外(与各种平衡树相比,更为简单),其他内置类型的具体实现所用的数据结构都很常规。这里就不赘述了。
2.数据索引
假定我们将空间数据(带有位置信息的数据)以空间要素的形式存储在redis中,每个空间要素用一个key为空间要素ID的Hash结构来存储