スモールデータで使うPowerShellとmongoDB

最近良く耳にするmongoDB。NoSQL、スキーマレスって何? 良くわからないのでちょこっと使ってみることにしました。

mongoDB重複データの削除

PowerShellコンソールでファイル数をカウント。

  • 14ファイルあります。

PS > $files = Get-ChildItem $pathname -Recurse | Where-Object {$_.Extension -eq ".jpg"}
PS > $files.length
14

PowerShellスクリプトでmongoDBを更新。

  • mongoDBクライアントでカウントした結果も14です。

> db.exifcollection.count()
14

再度、同じファイル(14ファイル)をmongoDBに書き込む。

  • mongoDBクライアントでカウント。

> db.exifcollection.count()
28

重複データを削除します。

  • 重複する値があるキーに dropDups オプションをつけてユニークインデックスを作成すると重複データが削除されます。

> db.exifcollection.ensureIndex({"FileFname" : 1}, {unique : true, dropDups : true})

  • カウント。

> db.exifcollection.count()
14

これは、便利です。