NoSQLデータベース ファーストガイド [Kindle]

著者 :
  • 秀和システム
0.00
  • (0)
  • (0)
  • (0)
  • (0)
  • (0)
本棚登録 : 4
感想 : 1
本ページはアフィリエイトプログラムによる収益を得ています
  • Amazon.co.jp ・電子書籍

感想・レビュー・書評

並び替え
表示形式
表示件数
絞り込み
  • RDBの弱み
    ・大量データ格納
    ・スキーマ変更
    ・単純/高速な処理




    NoSQLの特徴
    ・KVS
    memcached: 揮発性,典型的KVS
    Redis: 揮発性だけど定期的にディスクに書き込み
    Tokyo Tyrant: ディスクに書き込み

    ・ドキュメント指向
    MongoDB: スキーマを定義しなくていい,定義するならするでインデクス張ったりできる

    ・列指向
    (この本では具体的解説なし.HBaseとか.)




    memcached
    特徴
     揮発性
     めっちゃ速い
     ハッシュ.そのものズバリ,ハッシュ.
     consistent hashingで簡単にスケールする

    弱み
     範囲指定して検索したりは無理

    プログラムからの使用
     ハッシュ.ただハッシュ.
     .set()を使うなら,expiresを指定できる.

    使用例
     RDBのキャッシュ.キャッシュされてたら読み出す,されていなければRDBから読み出してキャッシュする.
      キャッシュの粒度は,大きい方がいい.細かく分けすぎると,キャッシュ効率は良くなるけど,捨てるタイミングが難しくなる.

     外部APIのキャッシュ.

     データ量が小さくて,1日に1回くらいしか更新されず,更新前のデータは捨てても別に良い,デイリーランキングみたいなサイトは,データを全部memcachedに載せとけばいい.
      RSSとかAPIとかをプログラムから使う良い例が載ってる.




    Redis
    特徴
     数値,配列に強い
     アトミックな処理
     スナップショットで永続化

    プログラムからの使用
     配列に特化したコマンドがいろいろある.

    使用例
     タイムラインの表示
      incrでIDを生成
      「時系列に先頭10件」は,配列のlrangeで取り出せる

     検索履歴の記録




    MongoDB
    特徴
     スキーマレス
     embedで,コレクションを結びつけた問い合わせができる(embedされたコレクションは直接問い合わせられなくなる)

    弱み
     トランザクションができない

    使用例
     アンケートの解答データの保存
      「アンケート全体」のコレクションに,「質問」のコレクションを埋め込める.

     解析データのストレージ





    Tokyo Tyrant
    特徴
     4種類のデータ型がある
      オンメモリ:オンメモリのKVS
      ハッシュ:ディスク上のKVS
      B-tree:範囲検索が得意
      テーブル:RDBっぽい感じ

    プログラムからの使用
     ハッシュ.(オンメモリ,ハッシュなら)
     RDB風.(テーブルなら)





    CAS操作(memcached)
     アトミックな処理を実現するための仕組み
     getsで読み出し,casで保存
     cas idでデータの更新を確認する
     (Redisはこの辺り簡単にできる,memcachedは失敗時のリトライとか書かないとダメ)

    キャッシュは,データの捨て方をキッチリ考えるのが重要.

    JSONをシリアライズしてvalueとしたらKVSにも放り込めるけど,JSONのスキーマに基づく問い合わせをできない.

    HandlerSocketという,MySQLをNoSQL化するモノがある.

全1件中 1 - 1件を表示

著者プロフィール

東北医科薬科大学脳神経外科教授

「2019年 『改訂2版 「超」入門 脳神経外科術中モニタリング』 で使われていた紹介文から引用しています。」

佐々木達也の作品

  • 話題の本に出会えて、蔵書管理を手軽にできる!ブクログのアプリ AppStoreからダウンロード GooglePlayで手に入れよう
ツイートする
×