MongoDB チートシート

MongoDB チートシート

  • オーケストレーション
6分で読めます 更新日 May 27, 2020

ポイント: チートシートは、ユーザーがデータベースを効果的に管理する能力を高めるための必須 MongoDB コマンドを提供します。コレクションの作成、インデックス、データ操作、クエリのコマンド構文が含まれています。

  • コレクション管理とデータ操作のコマンドが含まれています。
  • レプリケーション、シャーディング、および集約関数に関する詳細。

MongoDB ガイドの一環として、一般的およびあまり一般的でない MongoDB コマンドのチートシートをまとめました。

目次

プリティプリント

コレクションを作成

インデックスを作成

インデックスを作成

スパースインデックスを作成

複合インデックスを作成

ジオインデックスを作成

部分インデックスを作成

データの追加と削除

1つのデータレコードを追加

配列 (複数) レコードを追加

データを削除

MongoDB ドキュメントをクエリ

属性による検索

ジオロケーションによる検索

より大きいまたは小さい検索

等しくない検索

特定のフィールドのみを検索して返す

正規表現による検索

配列の要素による検索

レプリケーションとシャーディング

レプリケーションを有効化

シャードを追加

サーバーメモリを表示

集約関数

MapReduce

プリティプリント

任意の検索の最後に pretty() を追加します:

複合インデックスを作成

部分インデックスを作成

配列 (複数) レコードを追加

MongoDB ドキュメントをクエリ

属性による検索

ジオロケーションによる検索

より大きいまたは小さい検索

特定のフィールドのみを検索して返す

正規表現による検索

配列の要素による検索

レプリケーションとシャーディング

    db.collection.find({}).pretty()

コレクションを作成

    db.createCollection("")

インデックスを作成

インデックスを作成

フォーマットは {attribute : sortOrder} で、sort order は -1 (降順) または 1 (昇順) です。

    db.cars.createIndex( { make: 1 } )

スパースインデックスを作成

この属性を持たないドキュメントはインデックスされません。

    db.products.createIndex({product:-1},{sparse: true})

複合インデックスを作成

    db.cars.createIndex( { make: 1 , model: -1} )

ジオインデックスを作成

    db.address.createIndex( { "location": "2dsphere"} )

これは、検索条件に一致するドキュメントをインデックスします。

    db.students.createIndex(
{ age: 1},
{ partialFilterExpression: { age: { $gt: 14}}}
)

データの追加と削除

1つのデータレコードを追加

データを削除

    db.cars.insert([
{
vin: 1111111111,
model: 'SK-202',
make: 'Mercedes'
}
])

配列 (複数) レコードを追加

    db.cars.insertMany([
{
vin: 1111111111,
model: 'SK-202',
make: 'Mercedes'
},
{
vin: 2222222,
model: 'Cabriolet',
make: 'Chevrolet' }
])

データを削除

    db.cars.remove({"make": "Chevrolet"})

MongoDB ドキュメントをクエリ

MongoDB ドキュメントをクエリ

    db.cars.find({ "make": "Mercedes"}

ジオロケーションによる検索

    db.address.find ({
location: {
$near: {
$geometry: {
type: "Point" ,
coordinates: [ -72.7738706,41.6332836 ]
},
$maxDistance: 4,
$minDistance: 0
}
}
})

より大きいまたは小さい検索

    db.sales.find({"price": {$gt: 100}})

等しくない検索

    db.cars.find({make: {$not: {$eq: "Mercedes"}}})

これはプロジェクションと呼ばれます。

make フィールドのみを表示:

    db.cars.find({make: "Mercedes"}, {vin: -1})

make フィールドを除くすべてのフィールドを表示:

    db.cars.find({make: "Mercedes"}, {vin: 0})

スラッシュまたは引用符を区切り記号として使用できます。

大文字と小文字を区別しない:

    db.cars.find({"make": {$regex: /^M.*/}})

大文字と小文字を区別しない:

    db.cars.find({"make": {$regex: /^merc.*/, $options: "i"}} )

これらの配列要素をすべて含むドキュメントと一致します:

    db.manufacturers.find({"name": {$all: [ "Mercedes", "Ford" ]}} )

配列内の任意の要素に一致:

    db.manufacturers.find({"name": "Ford"} )

レプリケーションを有効化

設定サーバーに接続してから:

    rs.initiate()

そして、レプリケーションの状態を表示:

    rs.status()

シャードを追加

クエリルーター (mongos) サーバーに接続します。この例では 27018 がシャードサーバーのポート番号です。

    sh.addShard( "ShardReplSet/172.31.47.43:27018")

サーバーメモリを表示

    db.serverStatus().mem

集約関数

これは SQL の select count(*) from words group by word と同じです。これが単語カウントプログラムです。

    db.words.aggregate([ {$group: { _id: "$word", cnt: {$sum: 1} } } ])

MapReduce

map 操作を使用して同じ単語カウント関数を実行できます:

    db.words.mapReduce(
function() { emit(this.word,1); },
function(key, values) {return Array.sum(values)}, {
query:{},
} out:"total_matches"
).find()

MongoDB ガイド

  1. MongoDB 概要: MongoDB の開始
  2. Ubuntu と Mac に MongoDB をインストールする方法
  3. MongoDB でデータベースを作成する
  4. MongoDB シェル基本コマンド
  5. MongoDB Compass: Mongo GUI の使用
  6. MongoDB ロールベースのアクセス制御 (RBAC) の説明
  7. MongoDB プロジェクションとプロジェクションオペレーターの説明
  8. MongoDB 集約関数の説明
  9. MongoDB ソート: sort() メソッドと例
  10. MongoDB でのプッシュとプルオペレーターの使用
  11. MongoDB $unwind の使用方法
  12. 23 の一般的な MongoDB クエリオペレーターとその使用方法
  13. MongoDB ジオロケーションクエリの例
  14. MongoDB トランザクションの紹介
  15. MongoDB インデックス: 主要なインデックスタイプとその管理方法
  16. 知っておくべきトップ MongoDB コマンド
  17. MongoDB レプリケーション: 完全な紹介
  18. MongoDB クラスターのセットアップ方法
  19. MongoDB シャーディング: 概念、例、およびチュートリアル
  20. MongoDB Atlas: 管理された MongoDB の設定と使用
  21. MongoDB を Docker コンテナとして実行する方法
  22. MongoDB メモリ使用量、管理、および要件
  23. MongoDB バックアップのための mongodump の使用方法
  24. MongoDB バックアップを復元するための mongorestore の例
  25. PyMongo の使用方法
  26. MongoDB と NodeJS のための Mongoose の使用方法
  27. MongoDB チートシート
  28. MongoDB と Cassandra: NoSQL データベースの比較
  29. PostgreSQL と MongoDB: データベースの比較
  30. MySQL と MongoDB: データベースの比較
  31. MongoDB 認定: 紹介

これらの投稿は私自身のものであり、必ずしもBMCの立場、戦略、または意見を代表するものではありません。

オーケストレーションの関連記事

The Briefを購読する

このオファーに登録することで、あなたはBMCのプライバシーポリシーを読み、同意したことを確認します。

ありがとう

あなたはThe Briefに登録されました
The Briefはメインフレームとエンタープライズオーケストレーション—BMC AMIとControl-M—および、両者に関するアナリストの研究、顧客の展開、イベントをカバーしています。