SlideShare uma empresa Scribd logo
1 de 12
Embarcadero Technologies Copyright 2016
Introdução a NoSQL com MongoDB e
FireDAC
Fernando Rizzato
Lead Software Consultant, Latin America
Embarcadero Technologies Copyright 2016
O QUE SERÁ COBERTO POR ESTE WEBINAR?
 O que é NoSQL
 O que é MongoDB
 Iniciando com MongoDB
 FireDAC + MongoDB
Embarcadero Technologies Copyright 2016
O QUE É NOSQL?
• Não usa SQL
• Utiliza uma linguagem de consulta customizada
• É um banco de dados “não-relacional”
• Significa coisas diferentes em
implementações diferentes
• Favorece a velocidade e escalabilidade mais
que qualquer outro recurso
• Não substitui o tradicional RDBMS
A concept,
not a standard.
O QUE É
• Uma base de dados orientada a “documentos”
• Documentos são representados como pares de
Name : Value
• Documentos aninhados e arrays reduzem a
necessidade de joins
• Esquemas dinâmicos – permitem dados não
estruturados e complexos
Embarcadero Technologies Copyright 2016
MONGODB – DOCUMENTO EXEMPLO
 {
 "firstName":"Jack",
 "secondName":"Jones",
 "age":30,
 "phoneNumbers":[
 {fixedLine:"1234"},
 {mobile:"5678"}
 ],
 "residentialAddress":{
 lineOne:"…",
 lineTwo:"…",
 city:"…",
 state:"…",
 zip:"…",
 country:"…"
 }
 }
• Nomes sempre entre aspas
• Valores string sempre entre aspas
• Separado por virgulas
• Chaves representam objetos
• residentalAddress é um objeto aninhado
• Colchetes representam arrays
• phoneNumbers é um array de objetos
Embarcadero Technologies Copyright 2016
MONGODB - VOCABULÁRIO
RDMS/SQL
 Database
 Table
 Record / Row
 Column
 Primary Key
 Index
 Cursor
 Schema
MongoDB
 Database
 Collection
 Document
 Field
 Primary Key
 Index
 Cursor
 Schema
MONGODB - OUTROS DETALHES
• Todos os documentos tem um campo _id
• Uma collection somente existe quando há dados
• Documentos em uma collection não necessitam
um esquema rígido, mas tipicamente são
similares
• A linguagem de consulta suporta estruturas
complexas, incluindo expressões regulares
MONGODB - INSTALAÇÃO
• Instaladores
• https://www.mongodb.org/downloads (32-bit & 64-bit)
• https://www.turnkeylinux.org/mongodb
• Configurações de Ambiente – Pasta do Database
• O padrão é c:datadb
• Iniciando MongoDB: mongod.exe [options]
• Ou configure como um serviço...
• Tutorial
• http://embt.co/install-mongodb-windows [MongoDB.org]
• http://embt.co/connect-mongodb [DocWiki]
MONGODB - UNITS & COMPONENTES
• Units
• FireDAC.Phys.MongoDB – Driver FireDAC
• FireDAC.Phys.MongoDBCli – Interface cliente
• FireDAC.Phys.MongoDBWrapper – Classes de alto nível
• FireDAC.Phys.MongoDBDef – Definição de conexão
• Componentes
• TFDConnection – Usado para estabelecer uma conexão
• TFDMongoQuery – Executa queries em uma collection
• TFDMongoDataSet – Conecta um cursor MongoDB
• TFDMongoPipeline – Executa pipelines em uma collection
Embarcadero Technologies Copyright 2016 10
Mãos a Obra!
Embarcadero Technologies Copyright 2016
Recursos Adicionais
 Documentação:
 http://embt.co/connect-mongodb [DocWiki]
 http://embt.co/install-mongodb-windows [MongoDB.org]
 https://docs.mongodb.org/manual/core/crud-introduction [MongoDB.org]
 Blogs:
 http://delphi.org/2015/10/new-delphi-seattle-mongodb-sample/ [+ Exemplos]
 https://derickrethans.nl/managing-schema-changes.html [Alteração de Esquema]
 Books
 Instant MongoDB, by Amol Nayak
 MongoDB: The Definitive Guide, by Kristina Chodorow
Embarcadero Technologies Copyright 2016 12
OBRIGADO!
Perguntas?
Você pode me encontrar em:
@FernandoRizzato
fernando.rizzato@embarcadero.com
Siga-nos em
fb.com/DelphiBrasil
fb.com/EmbarcaderoBR

Mais conteúdo relacionado

Mais procurados

Apresentação - MongoDB
Apresentação - MongoDBApresentação - MongoDB
Apresentação - MongoDBJDSBD
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Thiago de Azeredo
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb javaFabiano Modos
 
Lições Aprendidas MongoDB
Lições Aprendidas MongoDBLições Aprendidas MongoDB
Lições Aprendidas MongoDBFabiano Modos
 
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017Renato Groff
 
Conhecendo o mongodb e clusterização de dados - ReplicaSet
Conhecendo o mongodb e clusterização de dados - ReplicaSetConhecendo o mongodb e clusterização de dados - ReplicaSet
Conhecendo o mongodb e clusterização de dados - ReplicaSetJhonathan de Souza Soares
 
No sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbNo sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbfabio perrella
 
Rails: Porque programar deve ser divertido
Rails: Porque programar deve ser divertidoRails: Porque programar deve ser divertido
Rails: Porque programar deve ser divertidoLuiz Carvalho
 
Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Rodolfo Fadino Junior
 
Arquitetura de banco de dados
Arquitetura de banco de dadosArquitetura de banco de dados
Arquitetura de banco de dadosFelipe Correia
 
NOSQL uma breve introdução
NOSQL uma breve introduçãoNOSQL uma breve introdução
NOSQL uma breve introduçãoWise Systems
 
Desenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDesenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDjanilson Alves
 
MongoDB: introdução à sua próxima base de dados
MongoDB:  introdução à sua próxima base de dadosMongoDB:  introdução à sua próxima base de dados
MongoDB: introdução à sua próxima base de dadosJordan Kobellarz
 
Bancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureBancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureJoel Rodrigues
 
Curso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e AjaxCurso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e AjaxTiago Antônio da Silva
 
Escalabilidade com Redis
Escalabilidade com Redis Escalabilidade com Redis
Escalabilidade com Redis Mario Guedes
 

Mais procurados (20)

Apresentação - MongoDB
Apresentação - MongoDBApresentação - MongoDB
Apresentação - MongoDB
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)
 
Mongo
MongoMongo
Mongo
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb java
 
Lições Aprendidas MongoDB
Lições Aprendidas MongoDBLições Aprendidas MongoDB
Lições Aprendidas MongoDB
 
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
 
Conhecendo o mongodb e clusterização de dados - ReplicaSet
Conhecendo o mongodb e clusterização de dados - ReplicaSetConhecendo o mongodb e clusterização de dados - ReplicaSet
Conhecendo o mongodb e clusterização de dados - ReplicaSet
 
No sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbNo sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodb
 
Rails: Porque programar deve ser divertido
Rails: Porque programar deve ser divertidoRails: Porque programar deve ser divertido
Rails: Porque programar deve ser divertido
 
Introdução ao NoSql
Introdução ao NoSqlIntrodução ao NoSql
Introdução ao NoSql
 
Performance Codificando Night Week 2016
Performance Codificando Night Week 2016Performance Codificando Night Week 2016
Performance Codificando Night Week 2016
 
[Sass] Aula 01
[Sass] Aula 01[Sass] Aula 01
[Sass] Aula 01
 
Arquitetura de banco de dados
Arquitetura de banco de dadosArquitetura de banco de dados
Arquitetura de banco de dados
 
NOSQL uma breve introdução
NOSQL uma breve introduçãoNOSQL uma breve introdução
NOSQL uma breve introdução
 
Desenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDesenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript Fulll
 
MongoDB: introdução à sua próxima base de dados
MongoDB:  introdução à sua próxima base de dadosMongoDB:  introdução à sua próxima base de dados
MongoDB: introdução à sua próxima base de dados
 
Bancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureBancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft Azure
 
Curso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e AjaxCurso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e Ajax
 
Escalabilidade com Redis
Escalabilidade com Redis Escalabilidade com Redis
Escalabilidade com Redis
 
MongoDB e Bancos de Dados Orientados a Documentos
MongoDB e Bancos de Dados Orientados a DocumentosMongoDB e Bancos de Dados Orientados a Documentos
MongoDB e Bancos de Dados Orientados a Documentos
 

Semelhante a Introdução a NoSQL com MongoDB e FireDAC

FireDAC para BigDATA: Teradata e MongoDB
FireDAC para BigDATA: Teradata e MongoDBFireDAC para BigDATA: Teradata e MongoDB
FireDAC para BigDATA: Teradata e MongoDBAlan Glei
 
Utilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesUtilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesChristiano Anderson
 
MongoDB também no Azure? SIM! - DevOps Summit 2017
MongoDB também no Azure? SIM! - DevOps Summit 2017MongoDB também no Azure? SIM! - DevOps Summit 2017
MongoDB também no Azure? SIM! - DevOps Summit 2017Renato Groff
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documentoAlex Martins
 
Introdução ao NoSQL e modelagem de dados com MongoDB
Introdução ao NoSQL e modelagem de dados com MongoDBIntrodução ao NoSQL e modelagem de dados com MongoDB
Introdução ao NoSQL e modelagem de dados com MongoDBJhonathan de Souza Soares
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloRenato Groff
 
NoSQL com Zend Framework 2
NoSQL com Zend Framework 2NoSQL com Zend Framework 2
NoSQL com Zend Framework 2Flávio Lisboa
 
Alinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQLAlinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQLpichiliani
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosJoão Helis Bernardo
 
Mongodb praquer-usar-uaijugcloudday2014
Mongodb praquer-usar-uaijugcloudday2014Mongodb praquer-usar-uaijugcloudday2014
Mongodb praquer-usar-uaijugcloudday2014Rogerio Fontes
 
MongoDB com Java - SouJava
MongoDB com Java - SouJavaMongoDB com Java - SouJava
MongoDB com Java - SouJavaFernando Boaglio
 
Desenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBDesenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBAri Stopassola Junior
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...iMasters
 
MongoDB com Java - GUOB 2018
MongoDB com Java  - GUOB  2018MongoDB com Java  - GUOB  2018
MongoDB com Java - GUOB 2018Fernando Boaglio
 
Minicurso Epoca mongoDB
Minicurso Epoca mongoDBMinicurso Epoca mongoDB
Minicurso Epoca mongoDBLelyBarros
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkGuilherme Carlos
 

Semelhante a Introdução a NoSQL com MongoDB e FireDAC (20)

FireDAC para BigDATA: Teradata e MongoDB
FireDAC para BigDATA: Teradata e MongoDBFireDAC para BigDATA: Teradata e MongoDB
FireDAC para BigDATA: Teradata e MongoDB
 
Utilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesUtilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentes
 
#1 Introdução ao MongoDB
#1   Introdução ao MongoDB#1   Introdução ao MongoDB
#1 Introdução ao MongoDB
 
MongoDB também no Azure? SIM! - DevOps Summit 2017
MongoDB também no Azure? SIM! - DevOps Summit 2017MongoDB também no Azure? SIM! - DevOps Summit 2017
MongoDB também no Azure? SIM! - DevOps Summit 2017
 
No sql Orientado a documento
No sql Orientado a documentoNo sql Orientado a documento
No sql Orientado a documento
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
mongodb.pdf
mongodb.pdfmongodb.pdf
mongodb.pdf
 
Introdução ao NoSQL e modelagem de dados com MongoDB
Introdução ao NoSQL e modelagem de dados com MongoDBIntrodução ao NoSQL e modelagem de dados com MongoDB
Introdução ao NoSQL e modelagem de dados com MongoDB
 
Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
 
NoSQL com Zend Framework 2
NoSQL com Zend Framework 2NoSQL com Zend Framework 2
NoSQL com Zend Framework 2
 
Alinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQLAlinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQL
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
 
Mongodb praquer-usar-uaijugcloudday2014
Mongodb praquer-usar-uaijugcloudday2014Mongodb praquer-usar-uaijugcloudday2014
Mongodb praquer-usar-uaijugcloudday2014
 
MongoDB com Java - SouJava
MongoDB com Java - SouJavaMongoDB com Java - SouJava
MongoDB com Java - SouJava
 
Desenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBDesenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDB
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
 
MongoDB com Java - GUOB 2018
MongoDB com Java  - GUOB  2018MongoDB com Java  - GUOB  2018
MongoDB com Java - GUOB 2018
 
Minicurso Epoca mongoDB
Minicurso Epoca mongoDBMinicurso Epoca mongoDB
Minicurso Epoca mongoDB
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao Framework
 

Mais de Fernando Rizzato

Todos os recursos do RAD Studio 10.3 RIO
Todos os recursos do RAD Studio 10.3 RIOTodos os recursos do RAD Studio 10.3 RIO
Todos os recursos do RAD Studio 10.3 RIOFernando Rizzato
 
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2Fernando Rizzato
 
Programa Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoPrograma Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoFernando Rizzato
 
Programa Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoPrograma Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoFernando Rizzato
 
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDER
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDERO BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDER
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDERFernando Rizzato
 
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIO
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIOBERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIO
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIOFernando Rizzato
 
Modelado y Arquitectura de Datos con ER/Studio
Modelado y Arquitectura de Datos con ER/StudioModelado y Arquitectura de Datos con ER/Studio
Modelado y Arquitectura de Datos con ER/StudioFernando Rizzato
 
Uso de efectos, animaciones y transiciones en FireMonkey
Uso de efectos, animaciones y transiciones en FireMonkey Uso de efectos, animaciones y transiciones en FireMonkey
Uso de efectos, animaciones y transiciones en FireMonkey Fernando Rizzato
 
Usando efeitos, animações e transições no FireMonkey
Usando efeitos, animações e transições no FireMonkey Usando efeitos, animações e transições no FireMonkey
Usando efeitos, animações e transições no FireMonkey Fernando Rizzato
 
Comprender y utilizar layouts FireMonkey
Comprender y utilizar layouts FireMonkey Comprender y utilizar layouts FireMonkey
Comprender y utilizar layouts FireMonkey Fernando Rizzato
 
Compreendendo e utilizando FireMonkey Layouts
Compreendendo e utilizando FireMonkey Layouts Compreendendo e utilizando FireMonkey Layouts
Compreendendo e utilizando FireMonkey Layouts Fernando Rizzato
 
Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...
 Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win... Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...
Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...Fernando Rizzato
 
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...Fernando Rizzato
 
Introducción a NoSQL con MongoDB y FireDAC
Introducción a NoSQL con MongoDB y FireDAC Introducción a NoSQL con MongoDB y FireDAC
Introducción a NoSQL con MongoDB y FireDAC Fernando Rizzato
 
Integración de servicios en la nube con REST/JSON
Integración de servicios en la nube con REST/JSONIntegración de servicios en la nube con REST/JSON
Integración de servicios en la nube con REST/JSONFernando Rizzato
 
Integração de Serviços Cloud com REST/JSON
Integração de Serviços Cloud com REST/JSON Integração de Serviços Cloud com REST/JSON
Integração de Serviços Cloud com REST/JSON Fernando Rizzato
 
LiveBindings: desde lo básico hasta técnicas avanzadas
LiveBindings: desde lo básico hasta técnicas avanzadas LiveBindings: desde lo básico hasta técnicas avanzadas
LiveBindings: desde lo básico hasta técnicas avanzadas Fernando Rizzato
 
LiveBindings - de Formulários Visuais ao Código
LiveBindings - de Formulários Visuais ao Código LiveBindings - de Formulários Visuais ao Código
LiveBindings - de Formulários Visuais ao Código Fernando Rizzato
 
Control de una aplicación Windows desde una aplicación móvil con AppTethering
Control de una aplicación Windows desde una aplicación móvil con AppTethering Control de una aplicación Windows desde una aplicación móvil con AppTethering
Control de una aplicación Windows desde una aplicación móvil con AppTethering Fernando Rizzato
 

Mais de Fernando Rizzato (20)

Todos os recursos do RAD Studio 10.3 RIO
Todos os recursos do RAD Studio 10.3 RIOTodos os recursos do RAD Studio 10.3 RIO
Todos os recursos do RAD Studio 10.3 RIO
 
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2
Conoce lo nuevo en RAD Studio, C++ Builder y Delphi 10.2.2
 
Programa Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero GratuítoPrograma Acadêmico Embarcadero Gratuíto
Programa Acadêmico Embarcadero Gratuíto
 
Programa Acadêmico Embarcadero
Programa Acadêmico EmbarcaderoPrograma Acadêmico Embarcadero
Programa Acadêmico Embarcadero
 
RAD Studio 10.2 Tokyo
RAD Studio 10.2 TokyoRAD Studio 10.2 Tokyo
RAD Studio 10.2 Tokyo
 
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDER
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDERO BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDER
O BACK-END PERFEITO PARA APLICAÇÕES DELPHI E C++ BUILDER
 
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIO
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIOBERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIO
BERLIN 10.1 UPDATE 2 EDIÇÃO DE ANIVERSÁRIO
 
Modelado y Arquitectura de Datos con ER/Studio
Modelado y Arquitectura de Datos con ER/StudioModelado y Arquitectura de Datos con ER/Studio
Modelado y Arquitectura de Datos con ER/Studio
 
Uso de efectos, animaciones y transiciones en FireMonkey
Uso de efectos, animaciones y transiciones en FireMonkey Uso de efectos, animaciones y transiciones en FireMonkey
Uso de efectos, animaciones y transiciones en FireMonkey
 
Usando efeitos, animações e transições no FireMonkey
Usando efeitos, animações e transições no FireMonkey Usando efeitos, animações e transições no FireMonkey
Usando efeitos, animações e transições no FireMonkey
 
Comprender y utilizar layouts FireMonkey
Comprender y utilizar layouts FireMonkey Comprender y utilizar layouts FireMonkey
Comprender y utilizar layouts FireMonkey
 
Compreendendo e utilizando FireMonkey Layouts
Compreendendo e utilizando FireMonkey Layouts Compreendendo e utilizando FireMonkey Layouts
Compreendendo e utilizando FireMonkey Layouts
 
Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...
 Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win... Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...
Uso del Windows Runtime (WinRT) y la Universal Windows Platform (UWP) en Win...
 
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...
Utilizando o Windows Runtime (WinRT) e o Universal Windows Platform (UWP) no ...
 
Introducción a NoSQL con MongoDB y FireDAC
Introducción a NoSQL con MongoDB y FireDAC Introducción a NoSQL con MongoDB y FireDAC
Introducción a NoSQL con MongoDB y FireDAC
 
Integración de servicios en la nube con REST/JSON
Integración de servicios en la nube con REST/JSONIntegración de servicios en la nube con REST/JSON
Integración de servicios en la nube con REST/JSON
 
Integração de Serviços Cloud com REST/JSON
Integração de Serviços Cloud com REST/JSON Integração de Serviços Cloud com REST/JSON
Integração de Serviços Cloud com REST/JSON
 
LiveBindings: desde lo básico hasta técnicas avanzadas
LiveBindings: desde lo básico hasta técnicas avanzadas LiveBindings: desde lo básico hasta técnicas avanzadas
LiveBindings: desde lo básico hasta técnicas avanzadas
 
LiveBindings - de Formulários Visuais ao Código
LiveBindings - de Formulários Visuais ao Código LiveBindings - de Formulários Visuais ao Código
LiveBindings - de Formulários Visuais ao Código
 
Control de una aplicación Windows desde una aplicación móvil con AppTethering
Control de una aplicación Windows desde una aplicación móvil con AppTethering Control de una aplicación Windows desde una aplicación móvil con AppTethering
Control de una aplicación Windows desde una aplicación móvil con AppTethering
 

Introdução a NoSQL com MongoDB e FireDAC

  • 1. Embarcadero Technologies Copyright 2016 Introdução a NoSQL com MongoDB e FireDAC Fernando Rizzato Lead Software Consultant, Latin America
  • 2. Embarcadero Technologies Copyright 2016 O QUE SERÁ COBERTO POR ESTE WEBINAR?  O que é NoSQL  O que é MongoDB  Iniciando com MongoDB  FireDAC + MongoDB
  • 3. Embarcadero Technologies Copyright 2016 O QUE É NOSQL? • Não usa SQL • Utiliza uma linguagem de consulta customizada • É um banco de dados “não-relacional” • Significa coisas diferentes em implementações diferentes • Favorece a velocidade e escalabilidade mais que qualquer outro recurso • Não substitui o tradicional RDBMS A concept, not a standard.
  • 4. O QUE É • Uma base de dados orientada a “documentos” • Documentos são representados como pares de Name : Value • Documentos aninhados e arrays reduzem a necessidade de joins • Esquemas dinâmicos – permitem dados não estruturados e complexos
  • 5. Embarcadero Technologies Copyright 2016 MONGODB – DOCUMENTO EXEMPLO  {  "firstName":"Jack",  "secondName":"Jones",  "age":30,  "phoneNumbers":[  {fixedLine:"1234"},  {mobile:"5678"}  ],  "residentialAddress":{  lineOne:"…",  lineTwo:"…",  city:"…",  state:"…",  zip:"…",  country:"…"  }  } • Nomes sempre entre aspas • Valores string sempre entre aspas • Separado por virgulas • Chaves representam objetos • residentalAddress é um objeto aninhado • Colchetes representam arrays • phoneNumbers é um array de objetos
  • 6. Embarcadero Technologies Copyright 2016 MONGODB - VOCABULÁRIO RDMS/SQL  Database  Table  Record / Row  Column  Primary Key  Index  Cursor  Schema MongoDB  Database  Collection  Document  Field  Primary Key  Index  Cursor  Schema
  • 7. MONGODB - OUTROS DETALHES • Todos os documentos tem um campo _id • Uma collection somente existe quando há dados • Documentos em uma collection não necessitam um esquema rígido, mas tipicamente são similares • A linguagem de consulta suporta estruturas complexas, incluindo expressões regulares
  • 8. MONGODB - INSTALAÇÃO • Instaladores • https://www.mongodb.org/downloads (32-bit & 64-bit) • https://www.turnkeylinux.org/mongodb • Configurações de Ambiente – Pasta do Database • O padrão é c:datadb • Iniciando MongoDB: mongod.exe [options] • Ou configure como um serviço... • Tutorial • http://embt.co/install-mongodb-windows [MongoDB.org] • http://embt.co/connect-mongodb [DocWiki]
  • 9. MONGODB - UNITS & COMPONENTES • Units • FireDAC.Phys.MongoDB – Driver FireDAC • FireDAC.Phys.MongoDBCli – Interface cliente • FireDAC.Phys.MongoDBWrapper – Classes de alto nível • FireDAC.Phys.MongoDBDef – Definição de conexão • Componentes • TFDConnection – Usado para estabelecer uma conexão • TFDMongoQuery – Executa queries em uma collection • TFDMongoDataSet – Conecta um cursor MongoDB • TFDMongoPipeline – Executa pipelines em uma collection
  • 10. Embarcadero Technologies Copyright 2016 10 Mãos a Obra!
  • 11. Embarcadero Technologies Copyright 2016 Recursos Adicionais  Documentação:  http://embt.co/connect-mongodb [DocWiki]  http://embt.co/install-mongodb-windows [MongoDB.org]  https://docs.mongodb.org/manual/core/crud-introduction [MongoDB.org]  Blogs:  http://delphi.org/2015/10/new-delphi-seattle-mongodb-sample/ [+ Exemplos]  https://derickrethans.nl/managing-schema-changes.html [Alteração de Esquema]  Books  Instant MongoDB, by Amol Nayak  MongoDB: The Definitive Guide, by Kristina Chodorow
  • 12. Embarcadero Technologies Copyright 2016 12 OBRIGADO! Perguntas? Você pode me encontrar em: @FernandoRizzato fernando.rizzato@embarcadero.com Siga-nos em fb.com/DelphiBrasil fb.com/EmbarcaderoBR

Notas do Editor

  1. RDBMS features are great, but they come at a price of speed. NoSQL databases are an answer to the question “What would a database look like if it didn’t use SQL?”