RedisのHyperLogLogを使ってユニークユーザー数を推定する

去年の内に公開することが出来ず、ずっと下書き状態だったエントリーをちょっとずつ消化していきたいと思います。ネタとして古いものも含まれていたりすると思いますがしばらくご辛抱ください。。 Redis 2.8.9から追加された HyperLogLog をちょっと触ってみました。 環境 * CentOS 7.0 (x86_64) / Intel Xeon E312xx (Sandy Bridge) 2.4GHz 仮想3コア / 2GB RAM * Redis 2.8.17 * redis-py (Pyt…

Redisの監視/分析系ツールまとめ

Redis関連の監視/データ分析系ツールについてメモしておきます。 随時追記予定。実務で有用なツールが他にありましたら教えていただけると嬉しいです。 環境 CentOS 5.9, Ubuntu 12.04 (x86_64) Redis 2.6.10 (※ CentOSの6.x系への移行は足踏み状態。相当大変ですよね。。) 以下の順に紹介していきます。 Redisコマンド Redis Sentinel Redis Live Redis Faina Redis Sampler redis-top N…

memcachedが10歳の誕生日を迎えました

そりゃ僕もおっさんになるわけだ。 Gimme the cache! memcached turns 10 years old Twitterではお祝いのメッセージで溢れています。 memcached作者のBrad Fitzpatrickさんがお誕生日パーティーやろうぜって言ってます。 set party 0 0 33 memcached 10-year birthday party! (タイトルがmemcachedプロトコルになってる) Redis作者のSalvatoreさん(@antirez)…

RedisのLuaスクリプティング機能について

僕のRedisについての知識はv2.2くらいで止まっていたので、それ以降のRedisに備わった機能を調べているんですけど、その中でもv2.6からサポートされたLuaスクリプト実行環境について今回は整理します。 技術Wikiの方にもRedisについてのメモを残しています。 * Redis – Tech Note 環境 CentOS 5.8 (x86_64) Redis 2.6.10 (malloc=jemalloc-3.2.0 bits=64) Pythonクライアント (redis-…

MongoDB C++クライアント

現在担当している業務で、CassandraやRedisなどいくつかのNoSQLデータベースの導入検討をしてきましたが、最終的にMongoDBを使うことになりました。アプリケーションの上の層ではPythonやPHPで作りますが、パフォーマンス要件が厳しい部分はC++ドライバを使う予定です。 まずはインストールから。 * 環境 Linux 2.6.18-194.26.1.el5 x86_64 (CentOS release 5.7) gcc version 4.4.4 20100726 インストール…

DotCloudでのMySQL,Redis,MongoDBの使い方

前回のエントリーDotCloudが素晴らしいに引き続きDotCloudで遊びます。 今回はDotCloudの「プログラミング言語やミドルウェアを自由に選べる」という特徴を活かしていろんな組み合わせを試してみたいと思います。 * メニュー  PHP + MySQL  Ruby + Redis (Sinatraを利用)  Python + MongoDB (Flaskを利用)   PHP + MySQL この組み合わせでのシステム開発はなんだかんだ言って仕事で慣れている方も多いのではと思います。もち…

libmemcached c++ interface

業務で libmemcached を利用した小さなモジュールを作ることになった。このライブラリにはC++インタフェースも用意されているのでCとC++の両方で試してみる。 環境は CentOS 5.6 (x86_64) , gcc4.4, libmemcached-devel * インストール remiレポジトリから新しいバージョンを入れる

* 各基本操作(set, get, delete)を行う C版 [crayon-5dce74…