1. HyperLogLog カーディナリティ統計
1.1 カーディナリティとは何ですか?
データ セット {1, 2, 3, 3, 5, 5,} などの例を通じて、カーディナリティ統計が何であるかを直接理解できます。このデータ セットのカーディナリティ セットは {1, 2, 3, 5} の場合、ベース (非繰り返し要素) は 4 です。つまり、非反復要素の数です。
1.2 カーディナリティ統計を使用する利点
各 HyperLogLog キーは、2^64 近くの異なる要素のカーディナリティを計算するために 12 KB のメモリのみを必要とします。これは、カーディナリティの計算時により多くのメモリを消費するコレクションとは対照的で、要素が多いほど、より多くのメモリが消費されます。メモリの観点から比較したい場合は、Hyperloglog が第一の選択肢です。
1.3 適用シナリオ
Web ページの UV (1 人が複数回 Web サイトにアクセスしても、1 人としてカウントされます)
従来の方法: set(setは繰り返しが認められていないため、繰り返すと上書きされてしまう)でユーザーのIDを保存し統計をとることができる 集合の要素数を基準として判断する この方法の方が面倒になる多数のユーザー ID が保存され、大規模な Web サイトで使用される場合、大量のメモリを消費します。私たちの目的はカウントすることであり、ユーザー ID を保存することではありません。
HyperLogLog の使用: HyperLogLog キーに必要なのは 12KB だけですが、計算できる数は非常に膨大になり、占有されるメモリ スペースは大幅に削減されます。
1.4 注
フォールト トレランスが許可されている場合 (エラー率 0.81%、カウント時に無視できます)、Hyperloglog は間違いなく使用できます。フォールト トレランスが許可されていない場合は、set または独自のデータ型を使用してください。
1.5 基本コマンド
シリアル番号 | コマンドと説明 |
---|---|
1 | PFADD キー要素 [要素 ...] 指定された要素を HyperLogLog に追加します。 |
2 | PFCOUNT key [key ...] 指定された HyperLogLog のカーディナリティ推定値を返します。 |
3 | PFMERGE destkeysourcekey [sourcekey ...] 複数の HyperLogLog を 1 つの HyperLogLog にマージします |
##1.6
127.0.0.1:6379> pfadd mykey1 a b c d e f #给第一组添加数据 (integer) 1 127.0.0.1:6379> pfcount mykey1 #统计mykey1的基数数量 (integer) 6 127.0.0.1:6379> pfadd mykey2 e e f j #给第二组添加数据 (integer) 1 127.0.0.1:6379> pfcount mykey2 #统计mykey2的基数数量 (integer) 3 127.0.0.1:6379> pfmerge mykey3 mykey1 mykey2 # 合并两组 mykey1 mykey2 => mykey3 并集 OK 127.0.0.1:6379> pfcount mykey3 #统计mykey3的基数数量 (integer) 7
の使用 2. Geospatial 地理的位置
2.1 はじめに
Geospatial は、Redis のバージョン 3.2 から開始され、2 つの場所間の地理的位置情報を計算できます。人と人との距離、周囲何マイルか。
2.2 使用シナリオ
?????? 友達の場所
-
???? 近くの人の表示
- #???? タクシー距離計算
コマンドと説明 | |
---|---|
GEOADD キー経度緯度位置名指定された地理的空間位置 (緯度、経度、 name) が指定されたキーに追加されます |
|
GEOPOS キーの場所の名前キーの場所から指定されたすべての場所の要素を返します(緯度と経度)。 |
|
GEODIST キーの場所 1 場所 2 単位 指定された 2 つの場所の間の距離を返します (場所が 2 つある場合)。存在しない場合、コマンドは null 値を返します。 |
|
GEORADIUS キー 経度と緯度の範囲の数値単位 指定された経度と緯度を中心、検索 特定の半径内の要素のうち |
|
GEORADIUSBYMEMBER キー 位置距離値の単位指定された範囲要素内の要素の場合、中心点は指定された位置要素によって決定されます。 要素 |
|
GEOHASH キー 場所 1 場所 2 は 11 を返します。文字の Geohash 文字列。2 つの文字列が近いほど、距離は近くなります。 |
|
zrange key start stop |
指定されたキーの座標情報を取得 |
zrem key location |
指定されたキーの下にある指定されたターゲットのデータを削除します |
以上がRedis の特殊なデータ型の使用方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

RedisデータベースとSQLデータベースの主な違いは、Redisが高性能および柔軟性要件に適したインメモリデータベースであることです。 SQLデータベースは、複雑なクエリとデータの一貫性要件に適したリレーショナルデータベースです。具体的には、1)Redisは高速データアクセスとキャッシュサービスを提供し、キャッシュおよびリアルタイムのデータ処理に適した複数のデータ型をサポートします。 2)SQLデータベースは、テーブル構造を介してデータを管理し、複雑なクエリとトランザクション処理をサポートし、データの一貫性を必要とするeコマースや金融システムなどのシナリオに適しています。

redisactsassassadatastoreandaservice.1)asadatastore、itusesin memorystorage for fastorations、supporting variousdatastructureSlike-key-valuepairsandsortedsets.2)asaservice、iteasruascruascriptingrupting criptingforceptingpurplecomplecomplecprexoperations

他のデータベースと比較して、Redisには次の独自の利点があります。1)非常に速い速度、および読み取り操作は通常、マイクロ秒レベルにあります。 2)豊富なデータ構造と操作をサポートします。 3)キャッシュ、カウンター、公開サブスクリプションなどの柔軟な使用シナリオ。 Redisまたはその他のデータベースを選択する場合、特定のニーズとシナリオに依存します。 Redisは、高性能および低遅延のアプリケーションでうまく機能します。

Redisは、データストレージと管理において重要な役割を果たしており、複数のデータ構造と持続性メカニズムを通じて最新のアプリケーションの中核となっています。 1)Redisは、文字列、リスト、コレクション、注文されたコレクション、ハッシュテーブルなどのデータ構造をサポートし、キャッシュや複雑なビジネスロジックに適しています。 2)RDBとAOFの2つの持続方法を通じて、Redisは信頼できるストレージとデータの迅速な回復を保証します。

Redisは、大規模なデータの効率的なストレージとアクセスに適したNOSQLデータベースです。 1.Redisは、複数のデータ構造をサポートするオープンソースメモリデータ構造ストレージシステムです。 2.キャッシュ、セッション管理などに適した、非常に速い読み取り速度と書き込み速度を提供します。 4.使用例には、基本的なキー値ペア操作と高度なコレクション重複排除関数が含まれます。 5.一般的なエラーには、接続の問題、データ型の不一致、メモリオーバーフローが含まれるため、デバッグに注意する必要があります。 6.パフォーマンス最適化の提案には、適切なデータ構造の選択とメモリ排除戦略の設定が含まれます。

現実世界でのRedisのアプリケーションには、1。キャッシュシステムとして、データベースクエリを加速し、2。Webアプリケーションのセッションデータを保存するには、3。リアルタイムランキングを実装する4。メッセージ配信をメッセージキューとして簡素化する。 Redisの汎用性と高性能により、これらのシナリオで輝きます。

Redisは、高速、汎用性、豊富なデータ構造のために際立っています。 1)Redisは、文字列、リスト、コレクション、ハッシュなどのデータ構造をサポートし、コレクションを注文します。 2)メモリを介してデータを保存し、RDBとAOFの持続性をサポートします。 3)Redis 6.0から始めて、マルチスレッドI/O操作が導入されました。これにより、高い並行性シナリオでパフォーマンスが向上しました。

redisisclassifiedsaNosqldatabasebasesakey-valuedataModelinsteaded ofthetraditionaldatabasemodel.itoffersspeedand andffficability、makingidealforreal-timeaplications andcaching、butmaynotbesbesutable fors cenariois requiring datientiantientioniity


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ホットトピック









