1.NoSQL
A)非リレーショナルデータベース。高い書き込み性能、記憶装置は、データがメモリに格納され、期限切れします
b)の分類
私。鍵データベース
II。カラムストアデータベース
III。文書データベース
Redisのとmemcachedのは、主に、キャッシュに使用されるキー値のNoSQL、あります
2.Redis
a)は、高性能なオープンソースフィリピンリレーショナルデータベース、データは内部の内部メモリまたはディスクに格納されます。
B)Redisのキー値が格納されており、従来のリレーショナル・データベースは同じではありません。必ずしも例えば、SQL標準、トランザクション、テーブル構造に従わないなど、Redisのは厳密ではないデータベースは、構造化データの格納方法の収集のためにする必要があり、従来のデータベースのためのいくつかの基本的な要件に従っていません。データ構造:配列、リスト、セット、マップなどのRedisは、以下の動作方法を提供し、我々は、データベース構造(文字列、リスト、セット、マップなど)の様々な種類に整理文字列を、堆積させるためにこれらのメソッドを使用することができます。
長所C)Redisのデータベース
Iデータ記憶:メモリに記憶されているが、また、アクセス速度.-永続性をサポートし、並行性の強い、安全なデータは
また、(高い並行性、大量のデータをサポートする)クラスタ(マスタ-スレーブ同期)をサポートし、データは、マスタサーバであってもよいですサーバからの同期からの任意の数、サーバは、プライマリサーバから別のサーバに関連付けられてもよいです。
II型。これは、格納された値をサポートしています
- 文字列、リスト、セット、ソートセット、ハッシュ
- クラスタサポート(サポートマスター・スレーブ同期)
- サポートの永続性
d)のシーンが使用して
、頻繁にデータのクエリの場合、クエリのパフォーマンスを向上させ、データベースの圧力を軽減しますRedisの内側に配置します。私はキャッシュ
II。カウンター参照:マイクロチャネル親指の数
III。リアルタイムの攻撃と守備のシステム
IV。
e)のRedisのサーバーのインストール
私。Redisのサービスを開始
- マニュアルスタート:インストールディレクトリにダブルクリックしてダブルクリックしてRedisの-SERVICE.EXEを開始
- スタートCMD:
Redisのを操作II。Redisのクライアント
- 文字列の値(文字列)操作
a)は、単一のキーを提供します。set
B)複数のキーを提供する:MSET
- キーの操作
A)キー:キーリストのすべてを取得します
b)はDELキー:キーの値を削除します。
c)の有効期限が切れるキーXX //キーの有効期限を設定する(有効期限後にXX秒)
D)TTLキー:有効期限を確認し、キー
E)flushall:データベースのRedisからすべてのデータを消去し
F)flushdb:クリア現在のデータライブラリは、Redisのデータベースのデフォルトは16 0,1 ... 0.15を
- リストのセットで動作する
スタックを達成するためにどのようにRDIS(FILO)とキュー(FIFO)???
同じ側にリストコントロール、それは、スタックの同じ側である
キューの吸気側を制御しながらリストです - コレクションの動作を設定します。
- のにSortedSet(順序集合)の運用
- ハッシュ演算の種類
- Redisのパスワード
a)のパスワード設定コマンド
CONFIGのSETコマンドを再起動せずに、動的に設定Redisのサーバーの再起動の障害を調整することができます
CONFIG SETは、パスワードを設定// 123456をrequirepass 123456
CONFIGのSETのrequirepass "" //パスワードのクリア
認証用のAUTH 123456 //パスワード
b)のパスワードRedisのセットにプロファイルを変更し
、構成ファイルのredis.widows.conf内のコードの行の増加を
requirepass 123456
123456はRedisのは、起動時にファイルをロードし、設定ファイルにパスワードを設定して、パスワードを有効にすることができます
3.Java操作Redisのサーバーは、クライアントJedisを使用しています
a)は、単純なJedis
導入jedisにパッケージ
@Test
ます。public void)テストを(スロー例外{
// 接続Redisのサーバーの作成
文字列のホスト= "127.0.0.1" ;
int型のポート= 6379;
int型のタイムアウト= 1000; // タイムアウト、1秒のタイムアウト
jedis jedis = 新新 jedis(ホスト、ポート、タイムアウト);
//パスワード認証
jedis.auth("ADMIN");
//は。動作設定のキーと値の値の実行
(jedis.setを"yhptest" 、DBL yhptest」 ! ");
システム。OUT .println(jedis.get(" "yhptest));
// 接続を閉じます
jedis.close();
}
b)は、接続プールの設定
。jedisプール、簡単な操作のRedisデータベースによって接続されたI
/ アイデア:あなたがオブジェクトを作成する場合は、彼のために価値の多くを設定するには、それは同様に設定オブジェクトを作成し、設定を完了し、構成オブジェクトを通してそれを作成することができます
// jedispool 1を作成します設定オブジェクト
// 2の構成でください- 4
// 3が作成jedispool
jedispool介して取得した// 4
の操作を実行するために// 5
// 6リリース接続
の接続プールを破棄// 7を-それが本当であるならば、それは、スプリングによるプロジェクトでなければなりませんシングルトン管理
@Test
公共ボイド試験()スロー例外{
// 1。jedispool構成オブジェクト作成
JedisPoolConfigコンフィグ= 新しい新しい JedisPoolConfigを();
// 2 行う構成- 4
config.setMaxIdle(2);
config.setMaxTotal(10) ;
config.setMaxWaitMillis(* 1000年1); // 接続タイムアウト作成
(config.setTestOnBorrowをtrueに); // 接続を取得すると、接続があるかどうかをテストすることで明らか
// 3作成jedispool
// * 1000年1が接続タイムアウトを取得する
JedisPoolプール= 新しい新 JedisPool(設定、
"127.0.0.1"、* 1000年6379,1、"ADMIN");
// 4 接続jedispoolによって得られる
jedis jedis pool.getResource =();
// 5 行う操作
jedis.set("jedispooltest" 、"dbldblddzt ....." )。
システムOUT .println(jedis.get(" 「jedispooltest));
// 6 リリース接続
jedis.close(); // 接続プールの操作が解除された場合は下の操作は、接続閉じることであれば、互換性のある作ら
// 7は、接続プールを破壊する-それは実際のプロジェクトであれば単一の実施形態は、ばねによって管理されるべきである
)(pool.destroy。
}
概要:Jedisは、接続プールの設定オブジェクトを作成し、接続プールを作成して、着信接続プールの設定オブジェクトは、IPアドレスRedisのストレージ、Redisのポート番号は、Redisののユーザ接続タイムアウトと操作を設定すると、接続プールが作成され、接続プールを取得オブジェクト、jedisサーバーオブジェクト操作にjedis。プールと密接な関係がjedisオブジェクト
C)Jedisのデータ構造を操作します
私は。キー値の操作
II。文字列操作
III。リストの操作
IV。操作を設定します。
V。ハッシュ演算
VI。取引
VII。ソート
- デジタルコレクションは、ASCのdescとメソッドを呼び出すことによってソートされ
- 文字列は、メソッドを呼び出し、パラメータアルファでソートされます。
- Redisの永続性構成
a)は永続的で
I。RDBとAOF、Redisのは、設定ファイルconfのを修正することにより構成することができます
II。AはAOFの永続性を開くかどうかを決定し、サーバの実行ローダーを開始するために、AOFをロード上のファイルを開いて、ファイルには、RDBが開いていないロードされています
III。RDBモデル
- RDBモデルは、指定された時間間隔内のデータセットのインタイムスナップショットを生成することができる、デフォルトのモードは、RDB上にあります
- RDB永続途中でデフォルトをオフにする方法:彼女は突然の停電があった場合は、ディスクに永続化することができないコメント内部Redis.confタイムスナップショット・ファイル内の指定した時刻に設定し、生成されたデータ
「」保存
#900 1 //が少なくとも一度変更し、少なくとも900秒が最初の同期期間に格納されて保存
#保存XXX
#セーブ60 10000
IV。AOFモード
- すべてのAOF永続的な記録は、サーバによって実行されたコマンドを書き、サーバはこれらのコマンドを再実行することにより、データ・セットを復元するために開始すると、デフォルトモードをオフにします。
- AOFを開く方法
A)appendonlyはい//オープンYES、NO閉じられません
常に#Appendfsync //新しい書き込みコマンドが一度同期にfsyncを実行されるたびに
#ここでは、everysecを有効にします
fsyncをappendfsync everysec //同期1秒に1回
#Appendfsyncなし//ネヴァーにfsync(処理するために、オペレーティングシステムに、fsyncをを実行するために長いかもしれない)、そのパラメータはredis.conf詳細プロフィールを参照してください。
Vの概要:. Redisのは、データを保存する方法です。
- コンテンツ内のデータを保存します。そして、データのセキュリティを考慮するだけでなく、データの永続性のために、彼らは保持ポリシーを満たしていれば、それはデータファイルのRDBにメモリデータを保存します、効率を考慮するRedisのためには、AOFを更新するために格納されたデータの一部を保存する機会がありましたログインします。負荷時には、2つはデータセットを作ります。
- Redisの除去戦略:適切なデータ消去を選択します
LRUは、揮発性:有効期限は、データセットから設定されている(server.db [i]は.expiresは最低使用データを選択します)に
揮発性-TTL:期限切れすべきデータの選択有効期限は、データセット(server.db [I] .expires)から設定されています
ランダム揮発性:有効期限は、データセット(server.db [I] .expiresから設定された任意のデータの中から選択します)
allkeys-LRU:データセットから出て最低使用頻度のデータの選択(server.db [I] .dict)で
ランダムAllKeys :データセットから(server.db [I] .dict 選択データアウト)任意
無envictionは(除名):追放データを禁止していません
Redisの後にキーと値のペアの追放を決定し、データを削除し、データ変更ローカル(AOF永続性)メッセージとスレーブ(主従接続)を公開します。