Sync - Junior Galvão – MVP – SQL Server

Download Report

Transcript Sync - Junior Galvão – MVP – SQL Server

SETEMBRO, 2010 | SÃO PAULO
CÓDIGO DA SESSÃO: DBP308
Sincronizando dados com a
nuvem através do SQL Azure
Data Sync e Sync Framework
2.0
Luciano Condé
Arquiteto de Soluções
Microsoft
[email protected]
blog.msdn.com/conde
twitter.com/luconde
Agenda
Por que sincronizar ?
Como sincronizar ?
Futuro e roadmap
3
POR QUE SINCRONIZAR?
4
Conectando com a nuvem
On-Premises
Aplicações
Windows Azure Platform
5
Sincronização
6
Disponibilidade
Aplicações precisam sempre estão disponíveis
Utilização da rede
Aplicações podem funcionar em offline e recebem
apenas a informação necessária
Redução de custos no
servidores
Armazena em cache informação comumente usada
Uso das capacidades
dos clientes
Resposta rápidas
Rica experiência para o usuário
Independência
Acesso e atualização de qualquer lugar
Colaboração
Topologias ponto-a-ponto quando os servidores estão
indisponíveis
Por que precisamos de um framework ?
Todos os tipos de locais de armazenamento são
diferentes
Conflitos são difíceis para detectar
Sincronizações ineficientes representam custos
Loops em sincronização são fatos da vida
Garantia de entrega e recuperação em cada de
falhas de uma rede
7
O que é o Sync Framework
Framework de programação para promover
colaboração, sincronização dentro de aplicações e
seus bancos de dados
8
Por que Microsoft Sync Framework ?
Equilíbrio entre poder e flexibilidade
Poderoso
Detecção e resolução de conflitos
Suporta indisponibilidade de redes
Controle de Loops
Fácil de implementar
Flexível
9
Determina quem são os locais
Determina quais protocolos
Determina os tipos de dados
Escolha a topologia
Exemplos Sync Framework Customers
Uma Rede
Varejo
Relational
PIM Data
SyncToy
Files
SharePoint 2010
Lists
SharePoint Workspace 2010
(Groove)
10
Favorites
Relational
Uma Consultoria
COMO SINCRONIZAR ?
11
Arquitetura do Sync Framework
Configure
Sync Application
Configure
Sync()
Sync Orchestrator
Store
12
Sync
Provider
Sync
Provider
Sync
Runtime
Sync
Runtime
Store
CENÁRIO 1
13
Cenário 1
On-Premises
Windows Azure Platform
App de Sinc.
Sync Orchestrator
SQL
Server
SQL Server
Sync Provider
SQL Azure
Sync Provider
TDS
SQL Azure
Sync Runtime
Disponível – SQL Azure Data Sync Novembro CTP
14
Sincronizando entre SQL Server e
SQL Azure
Luciano Condé
Arquiteto de Soluções | Microsoft
[email protected]
15
Participantes
O que é ?
Devices que fornecem ou recebem as informações
Cada participante deve ter o seu provider associado
Há 4 tipos de participantes
Full
Partial
Simple
Proxy
16
Full Participant
Configure
P1
App de Sinc.
Configure
P2
Sync()
Sync Orchestrator
Data
Store
Metadata
17
Data
Store
Sync
Provider
Sync
Provider
Sync
Runtime
Sync
Runtime
Metadata
Partial Participant
Configure
P1
App de Sinc.
Configure
P2
Sync()
Sync Orchestrator
Data
Store
Metadata
18
Data
Store
Sync
Provider
Sync
Provider
Sync
Runtime
Sync
Runtime
Metadata
Simple Participant
Configure
P1
App de Sinc.
Configure
P2
Sync()
Sync Orchestrator
Data
Store
Metadata
19
Data
Store
Sync
Provider
Sync
Provider
Sync
Runtime
Sync
Runtime
Proxy Participant
Configure
P1
App de Sinc.
Configure
Sync()
Sync Orchestrator
P2
Data
Store
Metadata
20
Sync
Provider
Sync
Provider
Sync
Runtime
Sync
Runtime
Sync
Provider
Sync
Runtime
Data
Store
Metadata
SQL Azure Data Sync
Mecanismo pronto para
sincronizar base de
dados entre com o SQL
Azure e SQL Server
Precisa de:
Sync Framework 2.0
Presente no
Sync Framework Power
Pack para for SQL Azure
CTP
21
CENÁRIO 2
22
Capacidades Offline
Windows Azure
Platform
Offline-Capable
Cached Mode
Applications
Por que?
23
Disponibilidade parcial da
rede
Clientes precisam do
mínimo de latência
Reduz carga do servidor
Reduz uso da rede
Sync
Exemplos:
Força de vendas
Auditorias
Outlook Exchange
Cached Mode
Capacidades offline
Windows Azure Platform
Client
Windows Azure
Application
Application
Browser or Native
Queries /
Updates
Queries / Updates
ASP.NET / WCF
Endpoint
Sync()
WCF
Sync Endpoint
Store
24
Changes
Sync
Changes
Cenário 2
Windows Azure Platform
Cliente offline
Aplicação
Sync Orchestrator
SQL
Compact
SQL Compact
Sync Provider
SQL Azure
Provider
TDS
Sync Runtime
• Clientes autenticados diretamente no SQL Azure
• Limites para a lógica de negócio do lado do servidor
25
SQL
Azure
Sincronizando entre SQL Azure e
SQL Compact
Luciano Condé
Arquiteto de Soluções | Microsoft
[email protected]
26
Primeira Dica !
O Sync Framework Power Pack for SQL Azure
CTP somente funciona no Visual Studio 2008
Para funcionar no Visual Studio 2010
Entre na pasta :
C:\Users\<Usuário>\Documents\Visual Studio
2010\Templates\ItemTemplates\Visual C#
Copie o arquivo
“AddSqlAzureDataSyncCacheTemplate.zip”
Pasta de destino:
C:\Users\<Usuário>\Documents\Visual Studio
2010\Templates\ItemTemplates\Visual C#
27
Um outro cenário
Windows Azure Platform
Cliente
Windows Azure
Application
Application
Browser or Native
Queries /
Updates
Queries / Updates
ASP.NET / WCF
Endpoint
Sync()
WCF
Sync Endpoint
Store
Changes
Sync
Changes
• Mais controle da autenticação
• Mais suporte para lógica de negócio do lado do servidor
28
FUTURO
29
Futuro – Sync Framework 3.0
Sinc. via
protocolo HTTP
Facilidade para
construção de
endpoints
Windows Azure
Outras Plataformas
Sync FX
Sync
Mais suporte
para .NET
Windows
30
Mais suporte
para .NET
Silverlight
Sync
Endpoints
Store
Auth / Mgmt /
Bus Logic
Mínimo de
requisitos no
cliente
Sinc. no servidor,
ao invés do
cliente
HTML
SQL Azure Data Sync Service
Serviço
Aplicação para usuário final
Pouco ou nenhum desenvolvimento
Modelo “out-of-the-box”
Pago pelo uso
Cenários
Conectividade com Access, Compact
Capacidades para clientes offline
Integração B2B
Capacidades
31
Distribuição de dados, gerenciamento de clientes,
monitoramento
SQL Data Sync Service
Luciano Condé
Arquiteto de Soluções | Microsoft
[email protected]
32
Conclusões
33
Para saber mais, confira a sessão!!!
COS302
Palestrante: Waldemir Cambiucci
SQL Azure – Cenários de Uso, Migração e
Operação
Data: 14/09 Horário: 09:00 - 10:15
Conclusões
Sincronização é um processo difícil de fazer
Sync Framework
Framework pronto para ser incorporado nas
aplicações.
Suporta várias fontes
Pode criar providers para outros bancos
SQL Azure Data Sync
Ferramenta pronta para sincronizar SQL Azure com
SQL Server
On-premises <-> Nuvem
35
SQL Azure Data Sync Service - Teste
Offline-Capable
Cached Mode
Applications
Browser
Clients
On-Premises
Applications
Sync
Windows Azure Platform
BusinesstoBusiness
Desafio: HelloCloud
Minha primeira aplicação na nuvem
•
•
•
•
Construa e publique sua aplicação no Windows Azure
Mostre sua aplicação no estande Windows Azure
Preencha o formulário
Concorra a 10 assinaturas MSDN Premium
Visite o estande de
Windows Azure e saiba
todos os detalhes
deste Desafio!
38
Capacidades da plataforma Windows Azure
COS303 | Movendo
Aplicativos para a Nuvem
COS304 | Projetando Aplicativos para a
Escalabilidade - Tirando o melhor da
Plataforma Windows Azure
SIA305 | Segurança no
Desenvolvimento para
Windows Azure
Application Services
Frameworks
“Dublin”
Security
Access Control
Connectivity
Service Bus
COS201 | Plataforma
Azure
“Geneva”
AppFabric - utilizando o Service
Bus e o Access Control Services
Project
“Sydney”
DBP308 | Sincronizando
dados com a nuvem através
do SQL Azure Data Sync e
Sync Framework 2.0
COS302 | SQL Azure - Cenários
SQL Azure
de Uso, Migraçao e Operaçao
Data
Data Sync
Compute
COS301 | Desenvolvendo para o
Azure
Storage
39
Table Storage
“Velocity”
COS401 | Trace, Log,
Provisionamento e Monitoraçao
no Azure
Blob Storage
Queue
INT303 | Integrando Moodle com
plataforma Microsoft
Drive
Content
Delivery
Network
Referências
Sync Framework 2.1 SDK http://www.microsoft.com/downloads/details.aspx?familyid=EE6AF14179D0-4351-A4A0-EA89BB29DCF5&displaylang=en
Sync Framework Power Pack for SQL Azure CTP
http://www.microsoft.com/downloads/details.aspx?FamilyID=bce4ad615b76-4101-8311-e928e7250b9a&displaylang=en
Blog do Time Sync Framework– http://blogs.msdn.com/sync
Blog do Time SQL Azure – http://blogs.msdn.com/sqlazure
Artigo interessante http://blogs.msdn.com/b/sync/archive/2010/08/31/sql-server-to-sql-azuresynchronization-using-sync-framework-2-1.aspx
40
© 2008 Microsoft Corporation. Todos os direitos reservados. Microsoft, Windows, Windows Vista e outros nomes de produtos são ou podem ser marcas registradas e/ou marcas comerciais nos EUA e/ou outros países.
Este documento é meramente informativo e representa a visão atual da Microsoft Corporation a partir da data desta apresentação. Como a Microsoft deve atender a condições de mercado em constante alteração, este
documento não deve ser interpretado como um compromisso por parte da Microsoft, e a Microsoft não pode garantir a precisão de qualquer informação fornecida após a data desta apresentação. A MICROSOFT NÃO DÁ
QUALQUER GARANTIA, SEJA ELA EXPRESSA, IMPLÍCITA OU ESTATUTÁRIA, REFERENTE ÀS INFORMAÇÕES DESTA APRESENTAÇÃO.
Por favor preencha a
avaliação