OSS紹介

Redis

Redis最新情報

NRIのOpenStandiaが提供するRedis最新情報

Redisの保守サポートサービスの内容はこちら Redisの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

Redis最新トピック

■2016-08-29
[ニュース・市場動向] fossBytes、Redis NoSQLを介して感染する不正なトロイの木馬「Linux.lady」に関する注意喚起を発表
■2016-05-16
[ニュース・市場動向] GEO APIが加わった「Redis 3.2」リリース
■2016-01-18
[セキュリティ情報] NoSQL DBの「Redis」を標的としたアクセスを観測、警察庁が注意喚起
■2015-07-06
[新着] 株式会社野村総合研究所(NRI) OpenStandiaのオープンソースソフトウェア紹介(OSS紹介)でRedisを追加
■2015-07-05
[ニュース・市場動向] NoSQL「Redis」プロバイダーのRedis Labs、1500万ドルの資金を調達

すべてを見る

Redisバージョンアップ情報

■2017-02-20
[VerUP]Redis 3.2.8(リリース日:2017/02/12)
■2017-02-06
[VerUP]Redis 3.2.7(リリース日:2017/01/31)
■2016-12-12
[VerUP]Redis 3.2.6(リリース日:2016/12/06)
■2016-10-31
[VerUP]Redis 3.2.5(リリース日:2016/10/26)
■2016-10-04
[VerUP]Redis 3.2.4(リリース日:2016/09/26)
■2016-08-09
[VerUP]Redis 3.2.3(リリース日:2016/08/02)
■2016-08-01
[VerUP]Redis 3.2.2(リリース日:2016/07/28)
■2016-06-28
[VerUP]Redis 3.2.1(リリース日:2016/06/17)
■2016-05-17
[VerUP]Redis 3.2.0(リリース日:2016/05/06)
■2016-02-22
[VerUP]Redis 3.0.7(リリース日:2016/01/28)

すべてを見る

更新日:2015-06-22

Redisの概要

Redis(レディス)は、C言語で書かれたオープンソースのデータベースです。
従来のRDBMSとは異なり、データをキーとバリューという形式で保存するため、キーバリュー型NoSQLに分類されます。
バリューには文字列や数字の他にリスト、ハッシュ、セット、ソート済みセット、ビットマップを取ることができ、他のキーバリュー型NoSQLと比較しても豊富なデータ構造をサポートしています。

Redisはクエリに対してメモリで応答するため、非常に高速に応答できます。
安価なハードウェアでも1秒間に数万リクエストを処理でき、キャッシュやメッセージングシステムの用途で広く利用されています。

Redisはマスタースレーブ型レプリケーション(データ複製)をすることができ、マスターノードのデータをスレーブノードに複製することができます。
アプリケーションは、スレーブからデータを読むことにより、読み込み負荷分散ができます。

Redisバージョン3からはRedis Clusterという機能が導入され、シャーディング(水平分散)をすることができます。
この方法では、各ノードがどこにデータが格納されているかを知っており、リクエストが来た時に、自分のノードにデータがないときに、クライアントに対してデータの存在するノードを教える動きになります(下図参照)

Redis

他のキーバリュー型NoSQLと比較すると、Redisは軽量・シンプルで扱いやすい一方、水平分散の機能が部分的であるため、比較的小規模で利用するのに適しています。また、データ型が豊富なため、複雑なデータを格納する要件がある場合は適しています。

TOPに戻る

Redisのライセンス

BSDライセンス

TOPに戻る

Redisと同類のソフトウェア

OSSではmemcached, Riak、商用製品ではOracle NoSQL Database、クラウドサービスではAmazon ElastiCache, Microsoft Asure Redis Cache, Google Could Datastoreがあります。

TOPに戻る

Redisの動作環境

ANSI C言語で書かれており、外部依存性もないため、C言語実行環境であれば動作します。

推奨環境
  • ・Linux (最も推奨)
  • ・*BSD,OS XといったPOSIX準拠システム
  • ・SmartOSのようなSolarisシステム(コミュニティはベストエフォート対応)
コミュニティーではサポートしていない環境
  • ・64bit Windows

TOPに戻る

Redisのデータ型と主な操作

格納できるデータ

主な可能な操作
キーバリュー
id : "watanabe"
CRUD、インクリメント、デクリメント、文字列連結、部分文字列
ハッシュ
watanabe :{ name : "watanabe"
            password : "hoge" }

CRUD、インクリメント、存在確認、
配列
tweets :["good-morning", "hello"]
PUSH、POP、要素数、部分取得、部分削除、他の配列への要素渡し
セット
friends : { "Yamada", "Nomura" }
CRUD、和集合、積集合、差集合、存在確認、ランダム取得
ソート済みセット
friends : { "Nomura", "Yamada" }
CRUD、順位取得、部分取得
ビットマップ
flags: 00101000
オフセットを指定した値指定

TOPに戻る

Redisの主な機能

非構造データ格納
事前にデータの構造を定義すること無く、データを格納できます。
高速なレスポンス
データベースに対する問い合わせにはメモリで応答するため、高速なレス ポンスができます。安価なハードウェアでも1秒間に数万リクエストを処理できるため、キャッシュ層として広く利用されています
軽量で簡単
Redisはひとつのバイナリで完結し、サイズも650Kbyteと非 常に軽量です。
出版・購読のサポート
予めクライアントがキー(およびキーパターン)に対して、購読の登録をしていると、そのキー(およびキーパタン)に対してデータの更新(出版)があった際に即座にデータを受診することができます
レプリケーション(データ複製)
Redisはマスタースレーブ型レプリケーション(データ複製)をする ことができ、マスターノードのデータを非同期でスレーブノードに複製することができます。アプリケーションは、スレーブからデータを読むことにより、読み込み負荷分散ができます。
シャーディング(水平分散)
Version 3から実装されたRedis Clusterを用いることにより、シャーディングが可能になります
データ永続化
データに対する変更はメモリで応答し、それとは非同期でディスクに書き込まれます。書き込むタイミングについては、前回書き込みからの経過時間と更新回数の2つの値を設定できます。
またデータの更新を追記型ログに書くモードが選択可能で、その場合必ずデータは永続化されますが、応答速度は下がってしまいます。

パイプライン
サーバの応答を待たずにコマンドを発行することができます。
期限付き保管
データに期限を付けて、期限が切れたデータを自動的に引き落とすことが できます。
データ記憶容量制限
データの記憶容量を定め、それよりも多くなった場合に様々なアルゴリズムに従って、データを自動的に追い出すことができます。利用できるアルゴリズムは、LRU、ランダム選定、生存期間順、などを選択することができます。
トランザクション
複数のオペレーション(データ変更、インクリメント、配列への PUSH)を一貫性を持って実施することができます。
LUAスクリプト
LUAスクリプト言語をクエリ内で評価することができます
セキュリティ
Redisはシンプルなクライアント認証のみを提供し、データの暗号化 や、クエリのエスケープは提供したいません。Redisは信頼されたネットワーク内での利用を前提としており、直接インターネットに晒すことは推奨されて いません。

TOPに戻る

Redisの主な制約

データ容量は物理メモリ量 Redisは物理メモリ以上のデータ量を扱えません。
(Version 2.0~2.4までの間は仮想メモリという機能が話題に上がっていましたが、2.6から削除されました。)

トランザクションのロールバック
トランザクションのロールバックはサポートされていません。「永続化 モード」で利用しており、トランザクション中にサーバがダウンした場合、部分的にデータがディスクに書き込まれた状態になります。この場合「redis- check-aof」ツールを用いて部分的に書き込まれた部分を取り除く必要があります。
ノードを超えた集合演算
水平分散環境において、ノードに分散しているデータに対して集合演算は できません。

TOPに戻る

NRIのRedisサポート(保守/サポートサービス)

NRIでは、これまでにオープンソースシステムの構築・運用・サポートを国内1,000以上の企業数(プロジェクト数)に導入してまいりました。 Redisは本体に加えて「redis sentinel」もサポートしております。 Redisのサポート及び各種サービスについてお気軽にお問い合わせください。
サポート対象バージョン
Redis 2.2、2.4、2.6、2.8、3.0
Redisの各種サービスのお問い合わせはこちら


TOPに戻る

Redisのダウンロード

Redisダウンロードページ http://redis.io/download

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気OpenAM
  • 注目MongoDB
  • OpenIDM
  • Corosync
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • BIND
  • Apache Struts
  • PostgreSQL
  • Pentaho
  • Spring Framework
  • Apache Tomcat
  • Solr
  • Dovecot
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Liferay
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • BIND
  • OpenDJ
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • sendmail
  • Courier-IMAP
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO
?
<--!-->