Voce ainda não conhece o mongoDb?

34

Transcript of Voce ainda não conhece o mongoDb?

Page 1: Voce ainda não conhece o mongoDb?
Page 2: Voce ainda não conhece o mongoDb?

Você ainda não conhece?

{ nome: ‘Pablo Juan’,

Titulo: ‘Microsoft Student Partner’,

Blog:‘pablojuancruz.wordpress.com’

Códigos: ‘github.com/pablojuancruz’

email: ‘[email protected]’ }

Page 3: Voce ainda não conhece o mongoDb?

Agenda

• Sobre

• NOSql

• Historia MongoDB

• Compreensão

• Crud

• Perguntas

Page 4: Voce ainda não conhece o mongoDb?

4

Apresentação – Pablo Juan

• 1º Torneio de Robótica Lego Brasil

• Técnico em Informática com ênfase em programação(ETEC de Itaquera).

• Graduação em Analise e desenvolvimento de sistemas(FIAP)

• Mais de 6 Anos de experiência

• CEO & Founder For Your System

• Consultor .Net Sênior WorkInside

• Consultor .Net Sênior P3Solutions

• CTO & Founder 29Reais

“Que o teu orgulho e objetivo consistam em pôr no teu trabalho

algo que se assemelhe a um milagre”

Leonardo da Vinci.

Page 5: Voce ainda não conhece o mongoDb?

5

Contatos

• Perfil no Facebook

https://www.facebook.com/PabloJuan.cruz

• Blog Pessoal

https://pablojuancruz.wordpress.com.br

• LinkedIn

http://br.linkedin.com/in/PabloJuanCruz

Page 6: Voce ainda não conhece o mongoDb?

NORel???

Page 7: Voce ainda não conhece o mongoDb?

NOSql

Page 8: Voce ainda não conhece o mongoDb?
Page 9: Voce ainda não conhece o mongoDb?

• Em 1998 com Carlo Strozzi

• 2009, Erick Evans, Johan Oskarsson

• Open source Distribuidos

• Performance

• SubDivisão(Orientação) Wide Column Store / Column Families(Hadoop, Cassandra)

Document Store(MongoDb, CouchDB)

Key Value / Tuple Store(Riak, Redis)

Graph Databases(Neo4j,Cayley, ArangoDB)

Multimodel Databases(OrientDb)

Object Databases(Versant,db4o)

Grid & Cloud Database Solutions(Oracle Coherence)

XML Databases(EMC Documentum xDB)

Multidimensional Databases(Globals)

Multivalue Databases(OpenInsight)

Mas o que é NOSQL?

Page 10: Voce ainda não conhece o mongoDb?

Historia MongoDB

Page 11: Voce ainda não conhece o mongoDb?

Etimologia

HUMONGOuS

MONGODB

Page 12: Voce ainda não conhece o mongoDb?

Historia

– DoubleClick

– 10Gen

– MongoDB INC

Page 13: Voce ainda não conhece o mongoDb?

Compreensão

Page 14: Voce ainda não conhece o mongoDb?

MongoDB

• C++

• Schemaless

• JSON/BSON

• Replica

• Sharding

• GridFS

• Busca Geolocalizão

Page 15: Voce ainda não conhece o mongoDb?
Page 16: Voce ainda não conhece o mongoDb?
Page 17: Voce ainda não conhece o mongoDb?
Page 18: Voce ainda não conhece o mongoDb?

Terminologia SQL MongoDB

database database

table collection

row document or BSON document

column field

index index

table joins embedded documents and linking

primary key

Specify any unique column or column combination as

primary key.

primary key

In MongoDB, the primary key is automatically set to

the _idfield.

aggregation (e.g. group by) aggregation pipeline

See the SQL to Aggregation Mapping Chart.

Page 19: Voce ainda não conhece o mongoDb?

Configuração Windows

Page 20: Voce ainda não conhece o mongoDb?
Page 21: Voce ainda não conhece o mongoDb?
Page 22: Voce ainda não conhece o mongoDb?
Page 24: Voce ainda não conhece o mongoDb?

CRUD

Page 25: Voce ainda não conhece o mongoDb?

Primeiros Comandos

• Listando dataBase

– Show dbs;

• Criando dataBase/usando DataBase já criada.

– Use NomeDataBase()

• Criando e inserindo dado em uma coleção

– db.nomeColecao.insert({dado1:””,dado2:true}

• Listando Colecao

– db.nomeColecao.find()

Page 26: Voce ainda não conhece o mongoDb?

Primeiros Comandos

• Apagando Colecao

– db.nomeColecao.remove({query})

• Apagando a Tabela

– db.nomeColecao.drop()

• Update(Forma basica) var query = db.nomeColecao.findOne()

query.dado1 = 23

db.nomeColecao.save(query)

Page 27: Voce ainda não conhece o mongoDb?

Consultas MongoDb

• Listando

– db.nomeColecao.findOne()

• Find com Regex

– db. nomeColecao.find( { nome : /a/ } );

– db.teste.find({nome:{$regex: /a/}})

Page 28: Voce ainda não conhece o mongoDb?

Operadores

• $eq -- Equal(Igual)

– valores que são iguais a um valor especificado.

• $gt – Great Than(Maior)

– Valores que são maiores do que um valor especificado.

• $gte – Great Than or Equal(Maior ou Igual)

– Valores que são maiores ou igual a um valor especificado.

• $lt - less than

– Valores que são menos que um valor especificado.

• $lte less than or equal

– Valores que são menos ou igual a um valor especificado.

• $ne Not Equal

– Combina todos os valores que não são iguais a um valor especificado

"campo" : { $operador: valor} }

Page 29: Voce ainda não conhece o mongoDb?

Operadaroes array

• $in

– Corresponde a qualquer um dos valores especificados em uma matriz.

• $nin - (Not In)

– Nenhum dos valores especificados em uma matriz.

Page 30: Voce ainda não conhece o mongoDb?

Operadores

• $or

• $nor

• $and

Page 31: Voce ainda não conhece o mongoDb?

Update

• Query – os critérios de selecção para a atualização. Os mesmos seletores de consulta como no

método find () estão disponíveis. O Nosso Where. • Update

– Campo:Valor que queremos alterar. • UpSert

– Opcional. Se definido como verdadeiro, cria um novo documento quando nenhum documento coincide com os critérios de consulta. O valor padrão é falso, o que não inserir um novo documento quando for encontrada nenhuma correspondência

• Multi – Opcional. Se definido como verdadeiro, atualiza vários documentos que atendem aos

critérios de consulta. Se definido como false, atualiza um documento. O valor padrão é falso. Para obter informações adicionais, consulte multi parâmetro.

• WriteResult – Numero de documentos que combinam com a consulta

Page 32: Voce ainda não conhece o mongoDb?

Referencias e Cursos

• nomadev.com.br

• http://docs.mongodb.org/

• http://dagora.net/be-mean/

Page 33: Voce ainda não conhece o mongoDb?
Page 34: Voce ainda não conhece o mongoDb?

Você ainda não conhece?

{ nome: ‘Pablo Juan’,

Titulo: ‘Microsoft Student Partner’,

Blog:‘pablojuancruz.wordpress.com’

Códigos: ‘github.com/pablojuancruz’

email: ‘[email protected]’ }