33
Thiago Custódio Engenheiro de Software – MCT, MCSD, PSD I NoSQL no Microsoft Azure

NoSQL azure

Embed Size (px)

DESCRIPTION

Palestra realizada no 1o Encontro de Tecnologia da Baixada Santista.

Citation preview

  • 1. NoSQL no Microsoft AzureThiago CustdioEngenheiro de Software MCT, MCSD, PSD I

2. @thdotnet/WindowsAzureBrasilthiago.custodio@brsolucoesintegradas.com.brhttp://thiagocustodio.azurewebsites.net 3. NoSQL no AzureHistricoCaractersticasModelos de DadosAzure Table ServiceAzure Redis CacheAzure DocumentDBConcluso 4. Novo projeto? Qual sero Banco de DadosOracle, Sql Server,MySQL? 5. Histrico 6. Nascimento do relacionalLinha do Tempo19701980199020002010 7. Caractersticas 8. Caractersticas NoSQL No Relacional Open Source Habilidade para ser executado em Cluster Flexvel (schema free) 9. Modelo de Dados 10. Chave / Valor Hashmap (persistido em disco) Fcil de particionar Exemplos: Redis, Riak, Memcached 11. Chave / ValorChave ValorPalestra NoSQL noAzurePalestrante Thiago 12. Documento Utilizam JSON Principal problema (soluoimpedance mismatch) Exemplos: MongoDB / CouchDB 13. Documento{nome: Thiago,sobrenome: Custodio,twitter: @thdotnet,tags: [nosql, azure, .NET]} 14. Famlia de Colunas Hashmaps dentro de hashmaps Exemplos: Cassandra, HBASE 15. Famlia de Colunas{tc:{nome: Thiago,sobrenome: Custodio,data-palestra: 02/09/2014}ms:{nome: Microsoft,data-fundacao, 04/04/1975,produtos: Visual Studio, Office}} 16. Grafos Entidades (ns) x relacionamentos Exemplos: OrientDB, Neo4J 17. Grafos 18. Azure Table Service 19. Azure Table Service 20. Azure Table Service 21. Azure Table Servicepublic class Aluno : TableEntity{public Aluno(){}public Aluno(string nome,string sobreNome){this.PartitionKey = sobreNome;this.RowKey = nome;}public int Matricula { get; set; }public string Email { get; set; }} 22. Azure Table ServiceCloudStorageAccount cloudStorageAccount =CloudStorageAccount.Parse(ConfigurationManager.AppSettings["StorageConnectionString"]);CloudTableClient cloudTableClient = cloudStorageAccount.CreateCloudTableClient();//Criar uma nova tabelavar table = cloudTableClient.GetTableReference("alunos");table.CreateIfNotExists();//Entidade que iremos inserirAluno aluno = new Aluno("Thiago", "Custodio");aluno.Email = "[email protected]";aluno.Matricula = 2013001;//Comando para inserirTableOperation insertOperation = TableOperation.Insert(aluno);//executando o comando de insert na nossa tabelatable.Execute(insertOperation); 23. Azure Redis Cache 24. Azure Redis Cache Verso customizada e gerenciadapelo Azure (PaaS) Disponvel no datacenter do Brasil(Preview) Basic - nico n at 26gb Standard - dois ns (master/slave) 25. Cdigopublic class ExemploRedis{ConnectionMultiplexer connection =ConnectionMultiplexer.Connect("contoso5.redis.cache.windows.net,ssl=true,password=...");public void Add(string chave, string valor){IDatabase cache = connection.GetDatabase();cache.StringSet(chave, valor);}public string Get(string chave){IDatabase cache = connection.GetDatabase();return cache.StringGet(chave);}} 26. Azure Redis Cache Armazenar Sesso (asp.net) no Azure RedisCache Compartilhar dados entre mltiplas instncias Pginas mais acessadas Tracking de navegao de pginas por umusurio Mensageria Chat Tokens temporrios(ex: downloads rapidshare, etc) 27. Azure DocumentDB 28. Azure DocumentDB Schema Free Suporte queries / storedprocedures em JavaScript 29. Concluso 30. 2010 e alm... 31. Referncia 32. Dvidas? 33. www.brsolucoesintegradas.com.br