Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save chroju/6cbcd1e8b2f624a0c897 to your computer and use it in GitHub Desktop.

Select an option

Save chroju/6cbcd1e8b2f624a0c897 to your computer and use it in GitHub Desktop.
読書メモ

目的

データベース知識が全くないので手広くまずは基礎をさらいたい。会社で使っているMySQL、Redisがいずれも載っているということで選択。この2つを軸に基本操作、運用方法あたり学びたい。1週間以内に片付ける。

メモ

  • Redis, MongoDB, HBase, Hive, RedShift, MySQL
  • 各DB(というまとめ方でいいのかわからない)の差異みたいのがわかってよさげ。
  • 運用ベストプラクティスは正直足りないので何か他で補完。
  • あとはどこかで実践を。。。

RDBとNoSQL

  • RDBは遅いがきっちりしたデータ型が作れる。整合性が担保される。
  • NoSQLは速いがRDBのような複雑な設計には向かない。
  • ホットデータにはNoSQL、そうでないのにはRDBという使い分け。NoSQL万能ではない。

MySQL

  • mysqldumpとREP
  • memchachedはMySQLの一機能、メモリでキャッシュして高速化を図るKVSのNoSQL
  • InnoDB=データベースエンジン

Redis

  • KVS形式のNoSQL
  • 特に理由はないが個人的に今試したいDB筆頭
  • インメモリタイプ
  • データ型が5種類ぐらいあり、特にSorted Setというのがリアルタイムランキング作るのに便利で多用されるらしい

RedShift

  • AWSのサービス、安価にデータウェアハウスが使えるらしい(といっても個人で使えるレベルではない)
  • 今後関わることはない気がするけど、そういうものってどう押さえといたらいいんだろう

MongoDB

  • BJSONによりデータ形式を問わないNoSQL。
  • シャーディングにデフォルトで対応していたり。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment