OBJECT encoding

Redis 開発者教育
Redis Developer Course
Redis 定期点検/技術支援
Redis Technical Support
Redis エンタープライズサーバ
Redis Enterprise Server

keyに対する情報を照会

使い方は OBJECT encoding key です。

encoding data type

  • Strings: int, embstr, raw
  • バージョン3.2.0以前ziplist(small lists)、linkedlist
    バージョン3.2.0からquicklist一つに統一されて使用されます。
  • Sets: intset(integers and small sets), hashtable
  • Sorted Sets: ziplist(small zsets), skiplist
  • Hashes: ziplist(small hashes), hashtable

Strings data type : int(integer), embstr(small string), raw

  • int: valueが定数であることを示します。 integer、実数(小数点の含む)はstringに分類されます。 数字が0で始めればstringです。 例えば、123はintで0123はembstrです。
  • embstr: valueがstringで39文字以下であることを示します。 embedded string、embstrは3.0から表示されます。 以前のバージョンはrawに表示されました。
  • raw:valueがstringで、40文字以上であることを示します。

Example Strings

コマンド>set key 1234
結果>OK
コマンド>object encoding key
結果>int
コマンド>append key Hello
結果>OK
コマンド>object encoding key
結果>embstr
コマンド>set key 01234
結果>OK
コマンド>object encoding key
結果>embstr
コマンド>set key 12.34
結果>OK
コマンド>object encoding key
結果>embstr
コマンド>set key 0123456789012345678901234567890123456789
結果>OK
コマンド>object encoding key
結果>raw

アニメーション表示



Lists data type : ziplist(small lists), linkedlist

  • ziplist: memberの個数が512個までたり、値の長さが64まではziplistです。
  • linkedlist: memberの個数が513個以上だったり,値の長さが65からはlinkedlistです。
  • これはredis.confにlist-max-ziplist-entries 512、list-max-ziplist-value 64で設定することができます。
  • redisバージョン3.2.0以前にencoding typeが二つでしたが、 3.2.0からはこの二つを合わせたquicklist一つだけが使用されます。

Example Lists: バージョン3.2.0以前

コマンド>llen mylist1
結果>512
コマンド>object encoding mylist1
結果>ziplist
コマンド>llen mylist2
結果>513
コマンド>object encoding mylist2
結果>linkedlist

Example Lists: バージョン3.2.0以降

コマンド>rpush mylist3 value1 value2
結果>(integer) 2
コマンド>object encoding mylist3
結果>quicklist


Sets: intset(integers and small sets), hashtable

  • intset:valueがすべて定数あり、memberの数が512個までintsetです。 valueが0で始めたり、小数点を含めると、hashtableに変換されます。
  • hashtable:valueがstringであったり、memberの数が513個以上はhashtableです。
  • これはredis.confにset-max-intset-entries 512で設定することができます。

Example Sets

コマンド>sadd myset 1 2 3
結果>3
コマンド>object encoding mylist1
結果>intset
コマンド>sadd myset 4.1
結果>1
コマンド>object encoding myset
結果>hashtable


Sorted Sets: ziplist(small zsets), skiplist

  • ziplist: memberの数が128個までたり、値の長さが64まではziplistです。
  • skiplist:memberの数が129個以上だったり,値の長さが65からはskiplistです。
  • これはredis.confにzset-max-ziplist-entries 128、zset-max-ziplist-value 64で設定することができます。

Example Sets

コマンド>zcard myzip1
結果>128
コマンド>object encoding myzip1
結果>ziplist
コマンド>zcard myzip2
結果>129
コマンド>object encoding myzip2
結果>skiplist


Hashes: ziplist(small hashes), hashtable

  • ziplist: memberの数が512個までたり、値の長さが64まではziplistです。
  • hashtable:memberの数が513個以上だったり,値の長さが65からはhashtableです。
  • これはredis.confにhash-max-ziplist-entries 512、hash-max-ziplist-value 64で設定することができます。

Example Sets

コマンド>hlen myhash1
結果>512
コマンド>object encoding myhash1
結果>ziplist
コマンド>hlen myhash2
結果>513
コマンド>object encoding myhash2
結果>hashtable


コマンド

OBJECT encoding key

  • このコマンドはversion 2.2.3から使用することができます。
  • 論理的処理の所要時間はO(1)です。
関連コマンド TYPE

<< OBJECT OBJECT encoding OBJECT idletime >>

クリック件数 :

Email 返事がかかってなれば、メールでお知らせします。