本記事では,MongodbをPythonから操作して,ビッグデータ分析を実施する際に役立つ情報を,Mongodbのインストールから説明していく.
Installation
Mongodbのインストール (Ubuntu)
下記の公式サイトの通りに実施
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
Pymongoのインストール (Ubuntu)
python3 -m pip install pymongo
上手くインストールできず、インストールできたように見えても実行するとpymongoがimportできないと文句言われるような状況が生じることがある。
色々と試したが、今回に限っては、apt-get remove python3-pipを実施してからapt-get install python3-pip, python3 -m pip install|pythonを実施して、うまくいった。
Usage
sudo service mongod start -dbpath /warpdrive/data/mongodb
上記のように–dbpathを指定することで、利用するdbファイルの場所を指定可能。
何故か上記でうまくいかないときは、下記でしのぐこともできるので、下記を実行して問題切り分けをしていくのがおすすめ。
/warpdrve/data/mongodbのpermissionがしっかりとmongodbユーザに与えられていることも確認。
それでもうまくいかないときは、おそらくだが、mongodをすべてしっかりと停止できていない段階で、mongodを新たに起動しようとしている事象が発生している気がする。
/etc/mongod.confの方も変更しておくと、うまくいっているようである。
mongod –dbpath /warpdrive/data/mongodb &
mongo shellの使い方
https://qiita.com/rubytomato@github/items/390cdead677a851550e8
db一覧表示
show dbs
db削除
db.dropDatabase()
dbの選択
use warpdrive
Collection一覧表示
show collections
collection削除
db.COL.drop()
db.browse.drop()
collectionの中身を表示
db.COL.find()
db.browse.find()
MongoDBが起動しないとき
再起動したら、なぜかうまくいかなくなった。
結局、var/log/mongodbの中身を強制的にすべて消したら、ゼロスタートすることが可能になった。
https://qiita.com/gy57/items/7b892d9a59632d168360
https://qiita.com/momota10/items/cbe5c7e20b6f8d27e391
Mongo shellにて、jsonをきれいに表示
pretty()を利用。具体的には、"find({…},{…}),pretty()"のように利用。
https://qiita.com/rubytomato@github/items/390cdead677a851550e8