ユーザ用ツール

サイト用ツール


mongodb

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
mongodb [2017/03/26 10:01] – [インストール] nullponmongodb [2020/02/26 02:55] (現在) – [リレーショナルDBとの差異] nullpon
行 12: 行 12:
 |トランザクション|あり|なし| |トランザクション|あり|なし|
  
-MongoDBのドキュメントはBSON(Binary JSON)形式で保存される。JSONで定義されているデータ(オブジェクト・配列・文字列・数値・真偽値・null)と日付(ISODate)を保存できる。トランザクションは存在しないがドキュメント単位でアトミックな操作が保証されている。+MongoDBのドキュメントはBSON(Binary JSON)形式で保存される。JSONで定義されているデータ(オブジェクト・配列・文字列・数値・真偽値・null)と日付(ISODate)、バイナリを保存できる。
  
 +トランザクションは存在しないがドキュメント単位でアトミックな操作が保証されている。ロックもドキュメント単位で行われる(mongoDB 3.0以降のwiredTigerエンジン使用時)
 ===== インストール ===== ===== インストール =====
 MacOSX MacOSX
行 23: 行 24:
   $ sudo port load mongodb   $ sudo port load mongodb
      
-Linuxで使う場合はのディスクを xfs でフォーマット。特に3系(WiredTiger)では必須、ext4ではパフォーマンスと安定性がかなり損なわれる。+
 ===== 起動 ===== ===== 起動 =====
 自身の権限で起動してみる 自身の権限で起動してみる
行 31: 行 32:
 dbpathはデータ保存場所、自身の権限で起動するので自分のホームディレクトリ以下のなど書き込み可能な適当な場所を指定する。dbpathのデフォルトは /data/db 。保存場所が存在しない場合や、読み書き権限が無い場合は起動に失敗するので予め作成しておく。デフォルトでPort 27017を使用する。 dbpathはデータ保存場所、自身の権限で起動するので自分のホームディレクトリ以下のなど書き込み可能な適当な場所を指定する。dbpathのデフォルトは /data/db 。保存場所が存在しない場合や、読み書き権限が無い場合は起動に失敗するので予め作成しておく。デフォルトでPort 27017を使用する。
  
 +Linuxでは、 **xfs でフォーマットされたディスク上のディレクトリ**を dbpath とする事。特に3系(WiredTiger)では必須、ext4ではパフォーマンスと安定性がかなり損なわれるため production環境では特に注意してください。ext4でサービスインしてひどい目にあっている話もちらほら聞きます。
 ===== インタラクティブシェル ===== ===== インタラクティブシェル =====
  
行 233: 行 235:
 </code> </code>
  
 +==== cannot use the part (hoge of hoge.fuga) to traverse the element ({hoge: 1.0}) ====
 +
 +オブジェクトではない値に対して、オブジェクトとしてアクセスしようとした
 +
 +<code javascript>
 +mongos> db.Test.find({_id: "a"})
 +{ "_id" : "a", "hoge" : 1 }
 +mongos> db.Test.update({_id: "a"}, {$set: {"hoge.fuga": 1}})
 +WriteResult({
 + "nMatched" : 0,
 + "nUpserted" : 0,
 + "nModified" : 0,
 + "writeError" : {
 + "code" : 16837,
 + "errmsg" : "cannot use the part (hoge of hoge.fuga) to traverse the element ({hoge: 1.0})"
 + }
 +})
 +</code>
 +
 +hogeオブジェクトのfugaプロパティを更新する操作を行ったが、hogeはオブジェクトではないためエラー
mongodb.1490522467.txt.gz · 最終更新: 2017/03/26 10:01 by nullpon