首页
学习
活动
专区
圈层
工具
发布

Redis存对象和存Json的思考

前言日常使用的还是很多的,经常会用radis存储一些json数据,对象数据,但是这样偶然间会发现不同的项目根据习惯的使用不同,有些人喜欢存对象,有些人喜欢存json。...其实存json和存对象本质上到redis这边而言,它都是进行一个字符串的存储,只是会多一个类路径,然后就操作方面的区别。存储逻辑在Redis中存储对象和存储JSON数据都是常见的用法。1....存储对象:您可以将对象序列化为字节流(如pickle序列化)然后存储在Redis中。这样做可以保留对象的结构和类型信息,但在存储和检索时可能需要更多的处理。...存对象有下面这张图可以看出。下图存的是一个对象,但是它里面却包含了一个文件的路径。存对象的优点缺点在日常的存对象当中,发现不需要像json字符串一样需要进行反序化,反序列化来反序列化去。...存储JSON的缺点:丢失了对象的结构和类型信息,需要在反序列化后手动处理数据类型。不适合存储复杂的对象结构,可能需要额外的处理来处理嵌套数据。总结无论是存储对象或者存储json这个东西不能一概而论。

1.7K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Redis是否可以存图片、视频?

    那Redis同样也是Json类型的远程数据字典服务器,也可以用于存储图片、视频。实际Redis可以用512MB的空间存储用于存储字符串型的数据。...我一直有个好奇,Redis采用key区分不同的数据,面临复杂的网页、程序,如何进行数据的编号。 Redis有默认的数据编码规则。...通过该方式,向Redis中存放、读取数据,将使key具有可读性。 三、Redis是否支持主从复制、数据分片?...像MongoDB一样,后起之秀,一般对复制、分片是原生支持,比起Mysql等关系数据库系统的复杂配置,Redis已经可以原生支持这两个功能,而且配置非常简单。...四、对主、备数据库的自动切换,Redis支持能力如何?

    10.6K20

    Java List 中存不同的数据类型

    在最近的实践中,有人突然问了一个问题:在 Java 的 List 中可以存不同的数据类型吗?...testList 中存的对象都是 String 字符串了。...解答List 中是可以存不同的数据类型的。但是在定义的时候需要定义成: List testList = new ArrayList();,不能为要使用的 List 指定数据类型。...实战在实际的编码中,我们通常都会为我们的 List 指定数据类型。这个数据类型可以是任何数据类型或者对象,这样可以保证我们的 List 中存的数据类型只有一种数据类型。...我们会尽量避免在使用的时候对数据进行转换,例如上面的情况,我们 List 对象中存的是对象,我们不知道我们的对象是 Stirng 还是 Long,这个时候要猜。

    2K70

    Redis 数据类型

    Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。...意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。 string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。...实例: Hash(哈希) Redis hash 是一个键值(key=>value)对集合。...并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去) 每个 hash 可以存储 232 -1 键值对(40多亿...应用场景 存储、读取、修改用户属性 List(列表) Redis 列表是简单的字符串列表,按照插入顺序排序。

    59240

    redis数据类型详解(redis数据类型及常用方法)

    文章目录 简介 概述 常用数据类型 String类型操作实践 incr/incrby decr/decrby append strlen mset/mget 小节面试分析 Hash类型应用实践 hset...作为一种key/value结构的数据存储系统,为了便于对数据进行进行管理,提供了多种数据类型。...常用数据类型 Reids中基础数据结构包含字符串、散列,列表,集合,有序集合。工作中具体使用哪种类型要结合具体场景。...String类型操作实践 字符串类型是redis中最简单的数据类型,它存储的值可以是字符串,其最大字符串长度支持到512M。...总结(Summary) 本章节主要是对redis中的常用数据类型存储结构,基本操作进行了分析和实践,结合指令特性理解其应用场景, 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

    1.1K20

    Redis笔记(二):Redis数据类型

    Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。...意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个键最大能存储512MB。...实例 redis 127.0.0.1:6379> SET name "runoob" OK redis 127.0.0.1:6379> GET name "runoob" 在以上实例中我们使用了 Redis...> ZRANGEBYSCORE runoob 0 1000 1) "mongodb" 2) "rabitmq" 3) "redis" 各个数据类型应用场景: 类型 简介 特性 场景 String(字符串...Hash(字典) 键值对集合,即编程语言中的Map类型 适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去

    94920

    redis介绍,redis安装,redis持久化,redis数据类型

    这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。...增量请求文件则是把内存中的数据序列化为操作请求,用于读取文件进行replay得到数据,这种类似于mysql binlog。...设置可以存二进制的对象。...命令行中也可以使用tap键来补全命令,而且redis的命令并不区分大小写,和mysql一样。...因为 Redis 非常人性化的为集合提供了求交集、并集、差集等操作,那么就可以非常方便的实现如共同关注、共同喜好、二度好友等功能,对上面的所有集合操作,你还可以使用不同的命令选择将结果返回给客户端或者是存集到一个新的集合中

    1.3K41

    Redis数据类型StringListsSetsHashes

    String Redis中最基本的类型。 Redis中的String 类型是二进制安全的,也就是说在Redis中String类型可以包含各种数据,比如一张JPEG图片或者是一个序列化的Ruby对象。...LTRIM 命令结合使用来实现定长的列表,列表中只保存最近的N个元素 在创建后台运行的工作时,Lists可以作为消息传递原语,例如著名的Ruby库 Resque 还有很多可以使用lists来做的事,这种数据类型支持很多命令...查看Set可用命令获得更多信息,或者阅读Redis数据类型介绍一章 Hashes Redis Hashes 保存String域和String值之间的映射,所以它们是用来表示对象的绝佳数据类型(比如一个有着用户名...Hash的最大长度是2^32 – 1个域值对(4294967295,一个Hash中可以有多达40多亿个域值对) 查看Hash类型可用命令来获得更多信息,或者阅读Redis数据类型介绍一章 Sorted...有序集合可能是Redis中最高级的数据类型了,所以请花一些时间查看一下 有序集合命令列表 来获得更多信息,同时你可能也想阅读Redis数据类型介绍 Bitmaps and HyperLogLogs类型(

    61020

    Redis 数据类型总结

    String 类型简介 字符串Strings是Redis最基本的数据类型,它是二进制安全的。一个Redis字符串可以包含任何类型的数据,比如jpg图片或者序列化的对象。...String 类型的应用场景 字符串是最常用的数据类型,常见的使用场景有: 缓存:将查询结果缓存到字符串中,下次查询直接从Redis获取,提高系统性能。...Lists 实现原理 Redis的List数据类型是通过双向链表实现的,这使得在列表的头部和尾部插入或删除元素的操作非常高效。...例如,你可以使用Redis的List数据类型来实现一个消息队列,其中生产者将消息添加到列表的一端,消费者则从另一端取出消息。 四、集合 Set 1....Bitmap 简介 Redis并没有专门的Bitmap数据类型,但是它提供了一系列的位操作命令,使得我们可以把字符串当作Bitmap来使用。

    77311
    领券