TDC2016SP - Trilha NoSQL

Preview:

Citation preview

UTILIZANDO DYNAMODB EM C#

TDC 2016 - Trilha NoSQLJoão Talles Dantas BatistaJulho/2016

AGENDA Visão Geral do DynamoDB Conceitos/analogias Projeto notificações Conclusão

DISCLAIMER

VISÃO GERAL DYNAMODBBanco de dados NOSQLArmazenamento efetuado em SSDSchemalessKey-value / column orientedCobrança por armazenamento/leituras e escritas

CONCEITOSTableItemsAttributesPrimary KeySecondary Indexes

ILANG NOTIFICATION SYSTEMPorque DynamoDB?• Milhões de notificações por dia• Lock no banco de dados relacional• Utilização de espaço em disco• Performance de leitura/escrita o longo do tempo

ILANG NOTIFICATION SYSTEM

ILANG NOTIFICATION SYSTEM

ILANG NOTIFICATION SYSTEM

ILANG NOTIFICATION SYSTEM

NotificationPageID UserID NotificationEventID EventPrimaryKey Text EventDateTime Read

205573 2 1 16386783 CAROLINA LOPES...2014-08-18 16:00:00.000 1

733497 2 66 697614Diego Flores Roberto postou no grupo...

2014-08-28 13:19:00.000 1

734504 2 66 697772Monica Gama Miani postou no grupo....

2014-08-28 14:13:00.000 1

10658771 2 3 611356Mario Sergio Peixer Filho enviou uma..

2015-02-26 14:43:00.000 1

10658786 2 3 611358Mario Sergio Peixer Filho enviou uma...

2015-02-26 14:46:00.000 1

23979671 2 39 89759Carlos Gonçalves publicou um...

2015-08-18 19:18:00.000 1

30512059 2 73 265957

Dashboard Acadêmico atualizado foi postado no seu Feed

2015-11-03 06:02:00.000 0

ILANG NOTIFICATION SYSTEM DynamoDBTable: NotificationPagePrimaryKey: UserIDRangeKey: EventKey (EventDateTime + NotificationEventID + EventPrimaryKey)

Attributes: Text, EventPrimaryKey, DateTime, Read

ILANG NOTIFICATION SYSTEM

DEMONSTRAÇÃO

CONCLUSÃO

Performance de leitura / escrita excelente

Pense nas queries que serão executadas antecipadamente

Desnomalizar é a norma (não existem JOINS)

Entenda arquitetura de escrita/leitura do DynamoDB pois isso afeta cobrança

REFERÊNCIASAWS SDK for .NEThttps://aws.amazon.com/sdk-for-net/

DynamoDB Getting Startedhttp://docs.aws.amazon.com/amazondynamodb/latest/gettingstartedguide/Welcome.html

DynamoDB Developer Guidehttp://docs.aws.amazon.com/amazondynamodb/latest/developerguide/

Dynamo: The Paper That Changed The Worldhttps://vimeo.com/144994937

CONTATOSTwitterhttps://twitter.com/joao_talles

GitHubhttps://github.com/joaotalleshttps://github.com/joaotalles/TDC2016_UtilziandoDynamoDBCSharp

Facebookhttps://www.facebook.com/joao.talles

LinkedInhttps://br.linkedin.com/in/joaotalles