タグ

redisに関するmfhamのブックマーク (16)

  • Redis でワイルドカードを使った複数 key の一括削除 - Shoya blog

    Redis で key_name_* で一致する key を削除したいときに key に使用している文字列によって最適な方法が違うのでまとめておく. だいたいは redis-cli コマンドで ok redis-cli KEYS "key_name_*" | xargs redis-cli DEL 基的にはこれを使えば問題ない. クォートを使った文字列の場合 key にクォートが含まれていると xargs が文字列を処理できずエラーになる. xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option Linux 環境 redis-cli KEYS "key_name_*" | xargs -d '\n' redis-cli DEL -d オプション に

    Redis でワイルドカードを使った複数 key の一括削除 - Shoya blog
    mfham
    mfham 2020/12/01
  • Redis 本番障害から学んだコードレビューの勘所

    Redis不適切利用による問題は番運用が始まってから顕在化することが多く、時限爆弾みたいな存在です。事前に防ぐにはコードレビュー段階で叩くしかありません。 Redisはスクリプト言語と相性が良く、適切に利用するとRDBと比較し驚くほど高速なプログラムを組むことができます。昨年尊敬する先輩にコードレビューで斧100くらい(レビューコメント)投げられて血まみれになりつつ学んだことを、まとめて書いてます。概要は『消えても良いデータならRedis』 Redisのメモリが溢れたら... (この話は事実ではなくファンタジーです。) 深夜電話で叩き起こされました。どうやらアクセス障害みたいです。 何人かで実機確認したら、まったくゲームが遊べない。データ不整合怖いのでメンテIN。 ほどなくしてRedisが溢れメモリ不足で新規書き込みが出来なくなっていると判明。サーバのメモリ容量は64GByteでこれ以

    Redis 本番障害から学んだコードレビューの勘所
    mfham
    mfham 2018/05/19
  • 真剣にRedisを使ってみようという気持ちになったのでRedisについて知っていることを書く - なんかかきたい

    年末ですね。更新がおろそかになっていたので、たまにはちゃんとした話をしたいなと思い、前々から書こうと思っていたRedisの話を書いてみました。 検証に使用したRedisは3.2ですので、新しくバージョンが変わると以下の話は変わってくるかもしれませんが今のところそのようなことはしばらくなさそうです。 以下長々とRedisを当に使えるように設定したり調べたり検証したりした内容を書いていきます。 いまさらですが Redisは構造データを持てるオンメモリデータベースサーバで、RDBとは違いますがHashやListなどのデータ構造を記録することができる高速なストレージサーバです。 オンメモリDBでHashを持つことができるので、KVSのように扱われることもあるのですが、memcachedと比較すると機能は多く、レプリケーションやAtomicなデータ処理なども可能です。 導入の前に Redisに限っ

    真剣にRedisを使ってみようという気持ちになったのでRedisについて知っていることを書く - なんかかきたい
    mfham
    mfham 2018/05/19
  • ソシャゲ開発経験から学んだゲームに Redis を使う際の Tips

    近年の KVS では割と Redis が覇権を取っていることもあり(当社比), 社内の多くのプロジェクトで Redis を使用するようになりました. ということでノウハウ的なのも溜まってきたのでまとめたいと思います. (大量のユーザーデータを扱うソシャゲにしか当てはまらない部分もあるかと思います) 単純にパフォーマンスを RDB < Redis と思い込んでとりあえずでキャッシュしない 「Redis は速い」と言われますが, インデックスをちゃんと貼った RDB のクエリも そこまで遅いわけではありません. 結局通信コストの方が遥かに大きいので内部の 取得時間差はトータルで考えると多くの場合誤差です. 特に RDB の主キーのみで取得できるようなデータを Redis にキャッシュすることに メリットはありません. キャッシュするコードを書くコストの方が高くつきます. キャッシュするのは R

    ソシャゲ開発経験から学んだゲームに Redis を使う際の Tips
    mfham
    mfham 2018/05/19
  • コマンドリファレンス — redis 2.0.3 documentation

    古いキー oldname を新しいキー newname にリネームする。もし新しいキーがすでに存在する場合、上書きする。

    mfham
    mfham 2018/05/19
  • Redisの特徴と活用方法について

    ・データベース的な観点でのソーシャルゲームの特徴 ・データモデル ・ソーシャルゲームに従来型RDBMSを使うべきか、�流行りのNoSQLで行くべきか ・負荷対策 (アーキテクチャ面) ・負荷対策 (ツール面) ・インフラエンジニアのキャリアについて

    Redisの特徴と活用方法について
    mfham
    mfham 2018/05/18
  • Google グループ

    Google グループでは、オンライン フォーラムやメール ベースのグループを作成したり、こうしたフォーラムやグループに参加したりすることで、大勢のユーザーと情報の共有やディスカッションを行うことができます。

    mfham
    mfham 2015/09/25
    引数として、"配列"ではなくキーのリストを期待している?"配列"を渡すと期待する結果が得られない
  • Redisでアクセスランキングを実装

    ニュースサイトのサイドメニューでよく見かける「アクセスの多かった記事」のようなランキングを Redis のデータ型 Sorted Set で実装する方法をメモ。 東洋経済の例 Redis の Sorted Set を使ったアクセスランクの表現 Redis のデータ型 sorted set は文字通り順序付けられた集合。 key 単位で集合を定義でき、各メンバーはスコアを持ち、スコアによって集合内で順位付けられる。 メンバーを記事、スコアをアクセス数とみなして、アクセスランクを表現する。 日別ランキングであれば下図のようになる。 週別ランキングであれば下図のようになる。 スコアの大きい順(=アクセスの多い順)に並べればアクセスランキングの完成となる。 Sorted Set の操作 次にアクセスされた時の Sorted Set の操作を考える。 キーは YYYYMMDD で持ち、アクセスされる

    Redisでアクセスランキングを実装
    mfham
    mfham 2015/07/24
  • EC2など 高負荷クラウド環境における Redis のチューニングについて - tech.guitarrapc.cóm

    たまにはPowerShell 以外の記事を。 某記事でもRedis (REmote DIctionary Server)が memcached に代わり得る利点がBookSleeveを交えて丁寧に説明されました。 そして、Redisの運用が一定の目途を見せていることから、その初期設定に欠かせないチューニングについて記事にしてみようと思います。 全部明かすわけではありませんが、なかなかRedisに関する記事は少ないので、少し参考になれば幸いです。 経験上、高負荷環境ではRedisはチューニングで大幅に安定性が変わります。 インストール? 沢山記事ありますし、簡単なのでここでは省きます。 どうしても!な場合は希望していただければ記事にしますが。 Redis Quick Start 対象バージョン 2.6系とします。 2.4系でも大方一緒ですが、2.6系に特有な部分があるので、注意です。 対象O

    EC2など 高負荷クラウド環境における Redis のチューニングについて - tech.guitarrapc.cóm
  • RedisをRubyから触ってみた - ごろねこ日記

    前回、多機能高速なキーバリューストアRedisをインストールして、体ソースについてきたクライアントで値を保存したり取得したりしてみました。 前回の記事 今回は同じ事をRubyからやってみたいと思います。 あと、最後の方でRuby+Redisでツイッターのタイムライン的なものを表現してみたり。 インストール ライブラリはgemで提供されています。 $ gem install redis使い方 Redis.newでオブジェクトを生成して、あとはRedisのコマンド(http://redis.shibu.jp/commandreference/index.html)にならってメソッドが実装してあるようです。 ローカルホストの標準ポートでRedisが動いている場合 redis = Redis.new ホストとポートを指定する場合 redis = Redis.new(:host => "10.0.

    RedisをRubyから触ってみた - ごろねこ日記
  • redisドキュメント日本語訳 — redis 2.0.3 documentation

    翻訳について¶ このドキュメントは、RedisのWiki(http://code.google.com/p/redis/wiki/)の内容を参考にしながら、構成などはSphinxに合わせつつ翻訳しています。また、必要に応じて、配布物の中のファイルなども引用しながら訳しています。

    mfham
    mfham 2014/10/14
  • Redis 入門 - 巨人の肩の上に登る

    Redis 使うことになったので,基礎的事項を最速でマスターできるようにまとめてみる. Redis とは Redisは,Key-Value型のNoSQLです. また,In Memory であるため,データ容量に対する制限はあるものの非常に高速に動作します. どのくらい早いのかという benchmark は,ググると結構でてくると思いますので,参考を一つ. redis、それは危険なほどのスピード MongoDB, HBaseなどのNoSQLとの,比較記事があるので参考に. Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase vs Couchbase vs Neo4j vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris comparison 細かい話など

    Redis 入門 - 巨人の肩の上に登る
    mfham
    mfham 2014/10/14
  • Redis入門 インメモリKVSによる高速データ管理

    Redis入門 インメモリKVSによる高速データ管理 Josiah L. Carlson, 長尾高弘(訳) KADOKAWA/アスキー・メディアワークス 3,740円 (3,400円+税) RDBに代わる高速なデータ管理システムであるRedisについて、基礎から、リアルタイムデータの前処理、インメモリ・データセットの管理、pub/sub(パブリッシュ/サブスクライブ)と設定まで解説。 関連サイト書の関連ページが用意されています。 Redis入門Example code from the book内容紹介Redisとは「remote dictionary server」から名付けられたオープンソースのキーバリューストア(KVS)でNoSQLに分類されるものです。すべてのデータをメモリ上に保存するため処理が極めて高速です。VMwareがスポンサーに付き、Salvatore Sanfilipp

    Redis入門 インメモリKVSによる高速データ管理
  • Flickr: RedisをMySQLのセカンダリインデックスにする - ワザノバ | wazanova.jp

    http://code.flickr.net/2013/03/26/using-redis-as-a-secondary-index-for-mysql/ Flickrエンジニアブログで、Redisを利用したDBクエリ最適化の事例を紹介しています。 1) 背景 Yahoo.comのサイトの右側に、直近でアクティブなFlickrコンタクトの写真が10枚掲載 [例] されます。 Yahoo.comのトップページのサイトパフォーマンスを担保するため、このAPIはかなり厳しめのSLA (Service Leve Agreement) が課せられてます。直近に写真をアップロードしたアクティブなユーザのリスト作成の際、コンタクト数が多いユーザが存在すると、SLAを守るパフォーマンスがだせないため、クエリとMySQLのインデックスを改善する必要がでてきた。 2) 最初の試み 直近のコンタクトデータを非

  • conma.me

    This domain may be for sale!

  • Redisを使う時は見積の二倍の容量必要だよね、という話 - Qiita

    [15487] 04 Aug 21:02:37.523 * 1 changes in 900 seconds. Saving... [15487] 04 Aug 21:02:37.523 # Can't save in background: fork: Cannot allocate memory redis-cli infoしても、使用してるメモリは全体の半分ちょっとだったし、空きは十分にある… 答えは Redis Administration http://redis.io/topics/admin に書いてありました。 原因と解決策 redisのバックアップが走る際、おそらく現状使用している量と同じだけのallocateを要求しているために、redis自体はメモリ使用が50%強だとしても、バックアッププロセスが落ちてしまう模様。 解決は簡単で、Redis Administratio

    Redisを使う時は見積の二倍の容量必要だよね、という話 - Qiita
    mfham
    mfham 2013/08/09
  • 1