redis_intro
Redis Introduction
Redis Server 教育 Redis Developer Course |
Redis 定期点検/技術支援 Redis Technical Support |
Redis エンタープライズサーバ Redis Enterprise Server |
---|
Redis Introduction
主な特徴
- データ保存所でディスクではなくメモリを使用します。
しかし、データの安全な保存とバックアップのために他のサーバーのメモリにリアルタイムにコピーを残すことができるが、ディスクに保存する方法を提供します。 - 性能は最高の場合、毎秒10万回実行します。 サーバーによって異なると一般的に毎秒2万~10万回実行します。
- 基本的にkey-value保存方式ですが、Lists、Sets、Sorted Sets、Hashesのような多様な保存方式を提供します。
したがって、多様な方式でデータを活用することができます。 - Redis Server Instanceは1 threadで実行され、したがってCPU 1 coreのみ使用します。
したがって、サーバ一つに複数のRedis Serverを立ち上げて使用することができます。
開発
- 開発者: Salvatore Sanfilippo, from Sicily, Italy
- 2009年に初期バージョン発表
- 開発した動機: SalvatoreはGoogle Analyticsのようなリアルタイムウェブログ分析のアプリケーション(lloogg.com)を MySQLで開発中だったが、性能に限界を感じて直接Redisを開発するようになりました。
- 現在、安定的なバージョンに3.0が出ており、3.0からクラスター機能が提供されます。
Memory DBに対する考え
Microsoft Research's eScience Group manager Jim Gray
- Jim Grayは2006年にすでに、メモリがディスクの役割をするものであり、ディスクはテープになるだろうと言いました。
そしてメインメモリーDBが一般的なDBになるだろうと言いました。 - Memory is the New Disk, Disk is the new tape.
Main Memory DB is going to be common.
관련 기사: infoQ, wired, slideshare - メモリーDBに対する一般的な考えは早いということとデータ紛失に対する心配でしょう。
早いということはRedisの大きな長所です。 データの紛失も心配することはありません。 RedisのMaster-slave機能は、リアルタイムでデータを他のサーバに複製することができます。
この機能を利用すれば、Master serverがdownされても、slave serverに接続すればすぐにサービスを継続することができます。
そしてRedisの性能をほぼ劣化させずにディスクを書く機能を提供します。
Redis開始時にこのデータを読み込むため、データ紛失の危険はほとんどないと見てもいいです。
DB Engines Ranking
- Redisが全世界のデータベースの順位で9位を占めています。
Redisがこんなにたくさん使われているかよく知らなかったなら、これは驚くべき便りになることです。
- Key-Value Store部分では圧倒的な1位を占めています。
Redisを使用するところ
国内はもとより、世界有数の企業でRedisを使用しています。
下のイメージをクリックすれば詳しい内容を見ることができます。
ここに紹介されたサイト以外でYahoo!、the guardian、tumblr、stackoverflow、viacom、GitHub、Instagram、 flickr、snapchatなど多くのサイトで使用しています。
Twitter ツイッター
- Redisを利用して毎秒30万tweetを処理できるよう構築
- 下はRedisを利用したTwitter Timeline architectureです。
- Real-Time Delivery Architecture at Twitter 動画: infoQ
- 30 Billion Redis Updates Per Day 記事: Pivotal
- Scaling Redis at Twitter 動画:
Weibo 微博
- 微博は中国版ツイッターです。 中国インターネット使用者の70%以上が、微博を最も重要な情報手段と考える ものと調査されました。
- 2013年1月23日、中国のお正月(チュンジョル)には、ツイッターを抜いて毎秒のメッセージ32,312件突破して記録も立てました。
- 微博はRedisを利用して、毎日の5千億ツイート読みと5百億ツイート書きをできるように構築しており、
500代以上のサーバー(マシン)で2000個以上Redisサーバー(インスタンス)を運営して18TB以上のメモリを使用します。 - Redisを利用した微博アーキテクチャ
- 関連記事: Largest Redis Cluster Ever(Eng.)
- RedisはTop 10 listのようなものを選ぶのにとても適合して、経験上Redis・インスタンスの一つのメモリ使用量を30GB以下に維持しているそうです。
LINE
- LINE Redis使用・アーキテクチャ:2011年
- 使用者が急激に増加し、ネイバーのラインでは、新しいDBアーキテクチャを設計して、
メインDBをRedisでHBaseに変更しました。
しかし、前方Queueの用途でRedis使用しています。 - 関連文(LINE Engineers' Blog) LINE Storage: Storing billions of rows in Shareded-Redis and HBase per Month
KakaoTalk
- 韓国でたくさん使用しているKakaoTalkもRedisを使用しています。
'2015年インターネットトレンド報告書'によると、KakaoTalk平均実行回数は毎秒55回で全世界のアプリケーション(以下アプリ)のうち1位を占めました。
次は公開SWのポータルサイトに紹介されたKakaoTalkのアーキテクチャです。
アトランストーリー
- モバイルゲームの中でRedisをメインシステムで使用した事例
- 下記の図は、2010年から2012年までPinterest日ごとのページビューグラフです。
2012年10月Pinterestのデータベース構成はMySQL 80台、Redis110台、memcached 200台です。
もちろん、今は訪問者がはるかに多いため、この構成よりはるかに大きくなったのです。 - この文はpivotalにあるものとPinterestで数十億個の関係(follow users nd boards)をRedisを使用しているように紹介しています。 Using Redis at Pinterest for Billions of Relationships
- この文はPinterestエンジニアリングブログにあるものとfollowの関係をRedis SortedSet、Setなどを利用して開発したという内容です。 Building a follower model from scratch
- この動画はInfoQにあるものと2010年3月MySQL一台で始めて2012年10月までアーキテクチャが拡張されていく過程を説明しています。 Scaling Pinterest
Redis Data TypeとCommand
5 Data TypeとCommand 要約説明のアニメーション
Strings紹介とコマンドリスト
Lists紹介とコマンドリスト
Sets紹介とコマンドリスト
Sorted Sets紹介とコマンドリスト
Hashes紹介とコマンドリスト
Common keys紹介とコマンドリスト
<< Consulting コンサルティング | Introduction | Release Notes 6 >> |
---|
クリック件数 :
Email
返事がかかってなれば、メールでお知らせします。