Slide 1

Slide 1 text

com com Pymongo Pymongo MongoDB MongoDB CRUD CRUD (Create, Read, Update e Delete) (Create, Read, Update e Delete)

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

Alguns motivos que me fizeram Alguns motivos que me fizeram gostar do MongoDB gostar do MongoDB - Muito rápido de se desenvolver qualquer coisa!! - Muito rápido de se desenvolver qualquer coisa!! ● Linguagem simples! Linguagem simples! - Schemaless – ótimo para lidar com dados não estruturados - Schemaless – ótimo para lidar com dados não estruturados ● Livros que possuem N autores e autores que possuem N livros Livros que possuem N autores e autores que possuem N livros ● Categorias que possuem mais categorias Categorias que possuem mais categorias ● “ “Nuvem” de tags em tópicos de um blog Nuvem” de tags em tópicos de um blog - Escalável – ReplicaSets/Shards! - Escalável – ReplicaSets/Shards! - GridFS – armazene arquivos grandes! - GridFS – armazene arquivos grandes!

Slide 4

Slide 4 text

Instalando MongoDB Instalando MongoDB - Doc oficial: - Doc oficial: ● http://docs.mongodb.org/manual/installation/ http://docs.mongodb.org/manual/installation/ ● https://docs.docker.com/examples/mongodb/ https://docs.docker.com/examples/mongodb/ - Minha doc: - Minha doc: # docker pull mongo # docker run -t -i -p 27017:27017 -v /data_mongodb/db:/data/db mongo /bin/bash # mongod & diretório “local” diretório container portas local:container opções para mostrar o que está rolando image

Slide 5

Slide 5 text

Instalando Pymongo Instalando Pymongo - Doc oficial: - Doc oficial: ● http://api.mongodb.org/python/current/installation.html http://api.mongodb.org/python/current/installation.html - Minha doc: - Minha doc: $ mkvirtualenv -p /usr/bin/python3.4 grupymongo (grupymongo)$ pip install pymongo

Slide 6

Slide 6 text

Ops… mudando o título da LT… Ops… mudando o título da LT… Como aprender Pymongo no Como aprender Pymongo no World of Warcraft!?? World of Warcraft!??

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Mas tudo hoje são apis….. Mas tudo hoje são apis….. http://us.battle.net/api/wow/auction/data/goldrinn { "files": [ { "lastModified": 1440200012000, "url": "http://us.battle.net/auction-data/207e97cc61cceeb5bc451a260cf898cd/auctions.json" } ] } http://us.battle.net/auction-data/207e97cc61cceeb5bc451a260cf898cd/auctions.json { "auctions": [ { "auc": 488323241, "bid": 90029, "buyout": 94746, "context": 0, "item": 107528, "owner": "Nitkity", "ownerRealm": "Goldrinn", "quantity": 12, "rand": 0, "seed": 0, "timeLeft": "VERY_LONG" }, { Só não é fácil ler 499380 linhas!!! :-o

Slide 9

Slide 9 text

insert_one e insert_many insert_one e insert_many

Slide 10

Slide 10 text

insert_one e insert_many insert_one e insert_many

Slide 11

Slide 11 text

insert_one e insert_many insert_one e insert_many # Saída do script $ python inserts.py Inserted id: 55d67d9576467c3b8663162d Qty Auctions: 41143 Finish: 0.6341726779937744 Inserted 41143 new ids

Slide 12

Slide 12 text

fine_one e find fine_one e find

Slide 13

Slide 13 text

fine_one e find fine_one e find # Saída do script com 152 gems $ python find_gems.py {'bid': 485450, 'rand': 0, 'timeLeft': 'VERY_LONG', '_id': ObjectId('55d67d9976467c3b866316c8'), 'auc': 486939890, 'buyout': 511000, 'context': 0, 'owner': 'Manndrake', 'ownerRealm': 'Goldrinn', 'seed': 1044495360, 'quantity': 1, 'item': 76694} Finish: 2.0742416381835938e-05 Owner Manndrake Buyout 511000 Item 76694 -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~ Owner Ogartitopulo Buyout 500000 Item 76689 -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~ Owner Oldmate Buyout 970900 Item 76694 -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~

Slide 14

Slide 14 text

update_many update_many

Slide 15

Slide 15 text

update_many update_many # Saída do script com 152 gems $ python update_gems.py Finish: 0.02341437339782715 Matched count: 87 Modified count: 87

Slide 16

Slide 16 text

Console mongo/pymongo Console mongo/pymongo

Slide 17

Slide 17 text

delete_many delete_many

Slide 18

Slide 18 text

delete_many delete_many # Saída do script $ python delete_many.py Finish: 0.17556357383728027 Deleted count: 41056

Slide 19

Slide 19 text

OBRIGADO! OBRIGADO! Referências: Referências: Tutorial Pymongo: Tutorial Pymongo: http://api.mongodb.org/python/current/tutorial.html http://api.mongodb.org/python/current/tutorial.html Curso de MongoDB DE GRAÇA! Usando Python! Curso de MongoDB DE GRAÇA! Usando Python! https://university.mongodb.com/courses/M101P/about https://university.mongodb.com/courses/M101P/about API World of Warcraft: API World of Warcraft: https://dev.battle.net/io-docs https://dev.battle.net/io-docs Repositório github: Repositório github: https://github.com/rafaelhenrique/pymongo_crud https://github.com/rafaelhenrique/pymongo_crud Contato: Contato: http://abraseucodigo.com.br http://abraseucodigo.com.br