MongoDBのメリット、デメリットについては調べて概要は把握できました。
MongoDBにはトランザクションと排他制御がない。
MongoDBはテーブルのJOINとかできない。
MongoDBはRDBじゃないので集合ベースの思考が向かない。
Cassandraは列のカウントアップもできない。MonogoDBができないかはわからない。
MongoDBはRDBMSと違って、最初から型や制約を定義することがない。だからエンティティに属>性を増やすたびにALTER文を発行する必要がない。つまり、頻繁にテーブル定義を変えたくなる場合に作業が楽。
以下のブログより引用
http://d.hatena.ne.jp/psappho/20111030/1320055924
しかし、私がこれまで携わってきた案件では、リリース後にあまりカラムを変更したり、追加することがなかったです。(実務経験が少ないのと、要件定義がかっちりしているのが原因かとも思いますが)
そのため、MongoDBをはじめ、NoSQLのメリットが魅力に感じません。
とはいえど、ここまで注目されているということは、他社の案件では、
頻繁にカラムを変更、追加したりする需要が高いのかなと思いました。
もし、皆様が携わっている案件でそういった事例がありましたら、
教えて頂けませんか?(質問1)
(可能な範囲で構いません。私は業務系のシステム案件が多かったため、他分野の案件に興味があります。)
頻繁にカラムを変更、追加したりする職場が仮にあったとして、
Mysqlでもテーブル定義の更新が面倒なだけで、対応できるのであれば、Mysqlでいいのではないかと思ってしまいます。
それ以外に何かデメリットがあるのでしょうか?(質問2)
(DB周りはあまり詳しくないのですが、例えば、既存データとの整合性が合わないが故に、エラーが起き、システムが停止しまう?等)
最後に、最初に引用したメリット以外にも、便利だったという事例などありましたら、共有して
頂けると幸いです。(質問3)
以上、お手数ですが、何卒宜しくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。