Redisの非リレーショナルデータベースの高性能NOSQLシリーズです
1.1。NOSQLは何
「SQLだけでなく、」意味のNoSQL(SQLのNoSQL =だけでなく)、新しいデータベースの概念であり、非リレーショナルデータベースを参照。
インターネットWeb2.0のウェブサイトの台頭によって、Web2.0のサイト、特に大規模とWeb2.0の純粋な動的なサイトの高い同時SNSのタイプに対処する従来のリレーショナルデータベースは、不十分であるように見え克服することは困難な問題の多くを公開しましたではなく、独自の特性に起因するリレーショナルデータベースは、非常に迅速に開発されています。NoSQLデータベースは、特にビッグデータアプリケーションの問題では、もたらされた課題の複数のデータ型の大規模なデータ収集を解決するために生成されます。
1.1.1 NOSQLとリレーショナルデータベースの比較。
利点:
1)コスト:NoSQLのデータベースは、シンプルで使いやすい展開することで、基本的にはオープンソースソフトウェアは、安価なリレーショナルデータベースに比べて、購入および使用のコストとしてOracleを使用してのように多くを費やす必要はありません。
2)クエリの速度:キャッシュ内のデータベースにデータを格納するにNoSQLの、ハードディスク内のリレーショナル・データベースにデータを格納する、はるかに少ない自然なクエリスピードのNoSQLデータベースより。
3)データを格納する形式は:NoSQLの記憶フォーマットは、キー、値の形式等の文書、画像、フォームの形態である、など、オブジェクトまたはコレクションの種類の基礎としてもさまざまな形式で保存することができ、そしてデータベースは、基本的なタイプをサポートします。
4)拡張性:リレーショナルデータベースクエリ機構同様のマルチテーブルは、このような制限が非常に困難な膨張につながる参加します。
短所:
NoSQLのは、新しい技術に属し、同じカテゴリ内のリレーショナルデータベース技術のない10年のためのツールや材料の1)メンテナンス、限定されています。
2)SQLなどの業界標準をサポートしていない場合、それはいくつか学ぶためのユーザーと使用コストを持つことになり、SQLのサポートを提供していません。
3)取引のリレーショナルデータベース処理を提供していません。
1.1.2利点非リレーショナルデータベース:
1)性能NOSQLの鍵に基づいており、それはテーブルの主キーと値との対応関係することが考えられる、と解析されたSQL層を必要とせず、性能が非常に高いです。
データ間の結合は、それが水平に展開することは非常に容易ではないため、2)スケーラビリティもまた、キーと値のペアに基づいています。
リレーショナルデータベースの1.1.3利点:
1)複雑なクエリは、便利なテーブルや複数のテーブルにSQL文の間には非常に複雑なデータクエリを行うことができます。
2)トランザクションのサポートを達成することができる高性能の安全のためのデータアクセス要件を可能にします。データベースのこれらの2つのタイプの場合は、他の利点は、彼らの弱さ、およびその逆です。
1.1.4概要
リレーショナルデータベースとのNoSQLデータベースが対向していないが、補完的な関係は、通常の状況下で、リレーショナルデータベースの使用は、使用のためのNoSQLのNoSQLデータベースの使用はときに
、リレーショナル・データベースの欠如のためのNoSQLデータベースは補償してみましょう。
一般的な店舗のNoSQL、リレーショナルデータベースのデータベースのリレーショナル・データベース、データのバックアップとストレージ内のデータ
1.2 NOSQLの主流製品。
• キー(キー値)ストアデータベース
関連製品:東京キャビネット/暴君、Redisの、ヴォルデモート、Berkeley DBの
代表的な用途:高いアクセスコンテンツのキャッシング、主にデータロードを大量に処理するために使用。
データモデル:キーの一連の
利点:クイッククエリの
弱点:構造化データ・ストレージの不足
•カラムストアデータベース
関連製品:カサンドラ、HBaseの、Riakに
代表的な用途:分散ファイルシステムの
データモデル:列クラスタストレージ、意志同じ列のデータを一緒に中に存在する
利点:高速検索速度は、スケーラブルな分散型より簡単に拡張する
欠点を:比較的限ら機能
•文書データベース
関連製品:CouchDBの、MongoDBの
キー値、値に類似したWebアプリケーション(:典型的なアプリケーションを)構造化された
データモデルは:キーの一連の
利点:データ構造は必須ではありません
短所:クエリのパフォーマンスが高くなく、統一されたクエリ構文の欠如
•グラフィック(グラフ)データベース
、リレーショナルデータベース:のNeo4j、InfoGrid、無限グラフ
典型的なアプリケーション:ソーシャル・ネットワーク・
データ・モデル:図構造の
利点:図、構造的に関連するアルゴリズム。
短所:マップ全体の結果を計算するために行う必要はなく、分散型クラスタプログラムを行うのは簡単。
1.3 Redisのは何
のRedisは、キーのオープンソース、高性能なC言語の発達(キー値)データベースを備えている、公式テストデータ、50 100 000同時実行要求、読み出し速度が書き込み、110 000回/ sであります速度が重要な各種のデータを提供することによって、さまざまなシナリオに対応するために81000回/秒、およびストレージ要件のRedisで、鍵データは、これまでのRedisがサポートされているタイプは次の通りである:
1)型列列
2)ハッシュがハッシュを入力
3。 )リストタイプリスト
4)コレクション型SET
5)タイプにSortedSetの順序付きコレクション
1.3.1 Redisのアプリケーションシナリオ
•キャッシュ(データクエリ、短い接続、ニュースコンテンツ、商品、コンテンツ、など)
、オンラインチャットルーム•フレンドリスト
•タスクキュー。(スパイク、買い、12306、など)
•アプリケーション・チャート
•ウェブサイトの統計情報
•古いデータ処理(ミリ秒まで正確な
セッション分離•分散型クラスタアーキテクチャ
1.4 Redisのダウンロードとインストール
公式サイト:httpsを://redis.io/
中国のネット:https://www.redis.net.cn/
Linuxバージョンをダウンロードして、(5.0.4のリリース2019):http://download.redis.io/releases/
GitHubの上のWindowsのバージョンがあるアドレス(2016年にリリースさは3.0.504)、以下のとおりです。https://github.com/MicrosoftArchive/redis
インストールのLinuxバージョン
$ tar zxvf redis-5.0.4.tar.gz
$ cd redis-5.0.4 $ make
$ src/redis-server #启动服务器端
$ src/redis-cli #启动客户端
redis> set foo bar #存储一个键值对 OK redis> get foo #查看刚刚的键 "bar"