甘いもん好きおやじのブログ

日常の面白いことを描きます。

mongodbとoracle

データベースソフトにも色々有って、主流はリレーショナルタイプのやつだけど、最近はNoSQLっていう新しいのも使われてきてる。

リレーショナルタイプはoracleとかsqlServerとか。
SQLを使ってテーブルって言う表にアクセスする仕組みでデータを取って来る。
トランザクション処理に矛盾が起こらないようにその辺りが厳重に作り込まれてて、有償サポートでしっかり使えるものが多い。
構築や運用の敷居が高い。
oracleなんてRACを導入するのに何時間も勉強して何度もインストール失敗なんてことがあり、かなり熟練してないと難しい。

NoSQLはキーバリューストアタイプと、JSON形式でデータを扱うようなのと分かれてて、MongoDBは後者。
テーブルの結合は出来ないし、トランザクション処理には向いてない。
ただ、大量のデータを格納し素早く持ってくるのには向いている。
多少のデータの欠損は目をつぶって、素早さと拡張性を重視している感じです。
SNSなんかでよく使われているらしい。
LINEで使われてるかは知らないけど、あんな感じのSNSで。
常に書き込むデータ、読みだすデータが先頭で、単純なデータ操作に向いてる感じ。
MongoDBは非常にSQLに似た文法で、リレーショナルタイプに慣れた人でも取っ付き易い印象です。
あと、クラスタの構築がoracleに比べて段違いに容易い。

硬い感じの人がoracleで、柔らかい感じの人がMongoDBって感じ。