Redisにおける3つの特殊なデータ型

2071 ワード

geospatial


この機能は、ユーザが与えた地理的位置情報を格納し、これらの情報を操作することができる.
GEOのデータ構造には全部で6つのコマンドがあります
  • geoadd
  • geopos
  • geodist
  • georadius
  • georadiusbymember
  • geohash

  • 位置を追加:
    geoadd china:city 116.40 39.90 beijing
    geoadd china:city 106.50 29.53 chongqing

    現在の位置を取得:
    deopos china:city beijing

    2つの位置間の距離:
    単位:
  • m標識単位はメートル
  • である.
  • km標識単位は千メートル
  • mi標識単位はマイル
  • ft識別単位はフィート
  • です.
    geodist china:city beijing chongqing km

    クエリー指定半径のデータ:
    georadius china:city 100 30 1000 km   #   100,  30   1000km     
    georadius china:city 100 30 1000 km withdist  #          
    georadius china:city 100 30 1000 km withcoord  #         
    georadius china:city 100 30 1000 km withcoord count 1  #           

    Hyperloglog


    Hyperloglog基数統計のアルゴリズム.しかし、多少の誤差があります.許容誤差があれば、Hyperloglogを使用し、許容誤差がなければsetを使用します.
    基数=重複しない要素の数
    ウェブページのUV(1人で何度も1つのウェブサイトを訪問して、しかしやはり1人とします
    127.0.0.1:6379> pfadd key1 a b c d e f g  #      
    (integer) 1
    127.0.0.1:6379> pfcount key1  #  key1      
    (integer) 7
    127.0.0.1:6379> pfadd key2 f g h i z k b c  
    (integer) 1
    127.0.0.1:6379> pfcount key1
    (integer) 7
    127.0.0.1:6379> pfmerge key3 key1 key2  #    key1 key2
    OK
    127.0.0.1:6379> pfcount key3
    (integer) 11

    Bitmap


    Bitmapは、ある要素に対応する値または状態をbitビットで表す.Bitmapsビットマップは、0と1の2つの状態しかありません.
    ビットストレージ.ユーザー情報を統計したり、ログインしたり、ログインしたりすることができます.カードを打つ.
    bitmapで月曜日から日曜日までのカードを記録します.
    127.0.0.1:6379> setbit sign 0 1
    (integer) 0
    127.0.0.1:6379> setbit sign 1 1
    (integer) 0
    127.0.0.1:6379> setbit sign 2 1
    (integer) 0
    127.0.0.1:6379> setbit sign 3 1
    (integer) 0
    127.0.0.1:6379> setbit sign 4 0
    (integer) 0

    1日にカードを打つかどうかを確認します.
    127.0.0.1:6379> getbit sign 3
    (integer) 1

    1週間にカードを打つ日数を表示します.
    127.0.0.1:6379> bitcount sign
    (integer) 4