seminário de andamento de doutorado

30
Um Middleware Semântico e com Suporte à Tempo Real para o Acesso Integrado a Bancos de Dados NoSQL Luiz Henrique Zambom Santana Prof. Dr. Ronaldo dos Santos Mello Seminário de Andamento de Doutorado Florianópolis, 14/06/2016

Upload: luiz-henrique-zambom-santana

Post on 13-Feb-2017

108 views

Category:

Internet


2 download

TRANSCRIPT

Um Middleware Semântico e com Suporte à Tempo Real para o Acesso Integrado a

Bancos de Dados NoSQLLuiz Henrique Zambom Santana

Prof. Dr. Ronaldo dos Santos Mello

Seminário de Andamento de DoutoradoFlorianópolis, 14/06/2016

Agenda

Introdução

Motivação

Fundamentação teórica

Estado da arte

Taxonomia

Comparação

Proposta de solução

Rendezvous

Visão geral

Modelo canônico

Exemplo de transformação entre modelos

Estado atual do trabalho

Trabalhos futuros

Introdução

Os objetivos desse trabalho são:

Apoiar o desenvolvimento de aplicações cujo os dados tenham três requisitos fundamentais:

Volume

Variedade

Velocidade

Para tal, será desenvolvido um middleware chamado Rendezvous

Acesso integrado aos bancos de dados NoSQL;

Visão semântica sobre esse acesso;

Acesso em tempo real com latências abaixo de 1 segundo.

Motivação

Big Data

Roger Magoulas da O'reilly em 2005

dados influenciam seus requisitos de desenvolvimento

3 V’s da Big Data (MANYIKA et al., 2011)

Variedade

Velocidade

Volume

Problema em aberto:

VLDB Endowment (PVLDB) 2016: "S2RDF: RDF Querying with SPARQL on Spark"

NoSQL

Carlo Strozzi em 1998 para seu SGBD que não tinha interface SQL

Atualmente, descreve bancos de dados não relacionais

Preparados Computação em Núvem

Altamente escaláveis

Distribuídos

Não aderem às ACID

Volume da Big Data

NoSQL

“Not only SQL”Sadalage e Fowler, 2012http://martinfowler.com/books/nosql.html

“Relational Database will be a footnote on database history”

Nathan Marz, 2014http://goo.gl/WGXvPy

NoSQL

SQL and NoSQL will merge “Not yet SQL”Michael Stonebraker, 2015https://www.youtube.com/watch?v=KRcecxdGxvQ

O consenso atualNoSQL é um acrônimo para “Not Only SQL”

Existem quatro modelos principais:

chave-valor

colunar

documentos

grafos

NoSQL

“Sem tamanho único”• “a panoply of data models, and

they typically operate on flexible storage formats such as JSON” (DUGGAN et al., 2015).

• “Increasingly, we see applications that deploy multiple engines, resulting in a need to join data across systems” (DUGGAN et al., 2015).

Persistência Poliglota (SADALAGE; FOWLER, 2012)

Tempo real

Em geral, os sistemas de tempo real são definidos por ter uma restrição funcional de em relação ao tempo de resposta

Na Big Data especificamente, são sistemas com uma baixa latência, normalmente menor a 1 segundo.

Tempo real

Em oposição ao MapReduce

Baixa latência para o Velocity da Big Data (LIU; IFTIKHAR; XIE, 2014)

Entre os novos middlewares que atendem esses requisitos estão:

Apache Kafka,

Apache Storm; e

Apache Spark.

Middleware

Pode ser visto como uma “cola” entre aplicações;

Facilita a execução serviços distintos através de uma única interface;

Pode também oferecer requisitos não funcionais como segurança, distribuição, escalabilidade e cache;

Diferentemente dos frameworks não é parte do código das aplicações.

Web Semântica

Consultas complexas significado

Padrões bem definidos pela W3C

RDF

OWL

SPARQL

Permite a criação de sistemas que

lidem com a Variade da Big Data

Integração de Banco de Dados

Longa história em pesquisa em banco de dados

Local-as-View vs. Global-as-View Vs.

Local-as-View Global-as-View

Trabalho Diferencial Limitação Taxonomia

DEY; FEKETE; RöHM, 2013 Transações entre NoSQL Limitado a chave-valor Federation

BÁNHALMI et al., 2013 Modelos intermediários baseados em ontologia

Framework não escalável Schema Unification

DHARMASIRI;GOONETILLAKE, 2013

Middleware Sobrecarga, limitado a colunares e de documentos

Federation

SILVA et al., 2014 Integração de múltiplos NoSQL

Processo offline e dependente de domínio

Aplicational Integration

SERRANO; STROULIA, 2014 Modelo intermediário Local-as-View baseado em ontologia

Processo offline Schema Unification

KIRAN; VIJAYAKUMAR, 2014 Modelos intermediários baseados em ontologia

Processo offline Schema Unification

KAUR; RANI, 2015 Paradigma MapReduce Framework, limitado a grafo e documento e dependente de domínio

Aplicational Integration

DUGGAN et al., 2015 Múltiplos níveis de abstração Ambientes complexos e dependente de domínio

Federation

Taxonomia

Aplicational Integration Schema Unification Federation

BÁNHALMI et al., 2013 SERRANO; STROULIA, 2014 DEY; FEKETE; RöHM, 2013

SILVA et al., 2014 KIRAN; VIJAYAKUMAR, 2014 DHARMASIRI;GOONETILLAKE, 2013

KAUR; RANI, 2015 DUGGAN et al., 2015

Aplicational Integration (KAUR; RANI, 2015)

Schema Unification(BÁNHALMI et al., 2013)

Federation (DUGGAN et al., 2015)

Proposta de solução

Middleware Rendezvous

Potencialmente distribuído

Entre as aplicações e bancos de dados NoSQL

RDF e SPARQL com as aplicações

Proposta de solução

Modelo canônico

Baseado em grafos

Com quatro abstrações principais:

Schema

Data Element

Restriction

Value

Local-as-View

Exemplo transformação

Exemplo transformação (chave e valor)

Exemplo transformação (documento)

Estado atual do trabalhoentities: user: name: type: [string] source:['mongodb','cassandra'] username: type: [string] source: ['cassandra'] password: type: [string] source:['cassandra'] address: type: [string] source:['mongodb','cassandra'] email: type: [string] source: ['cassandra']

post: body: type: [string] source: ['mongodb'] createdAt: type: [date] source: ['mongodb'] author: type: [user] source: [entity]

comment: body: type: [string] source: ['mongodb'] createdAt: type: [date] source: ['mongodb'] parent: type: [post] source: [entity]

ExecutorsManager

InsertInsert

InsertQuery

InsertGet

Plan

Value 1

Value N

Plan

Value 1

FieldNExpeditor

Planner

Get/Query

Endpoint

DictionaryManager

Fast storage

{“post”:{“body”:”hello”}}

InsertEndpoint

StreamingSolution

Asynchronous service

_insert _query

rendezvous_id:x,metadata_id:1….

MongoDBSemantic Access

rendezvous_id:x,metadata_id:1….

Cassandra

rendezvous_id:x,metadata_id:1….

Redis

Semantic Dictionary

FederatorRendezvous

Application

Diferenciais da proposta

Acesso integrado, semântico e em tempo real a NoSQL

Arquitetura independente de domínio

Arquitetura independente de modelo e fornecedor

Middleware que facilita o trabalho de programação de aplicações

Potencialmente tão escalável quanto os NoSQL

Atividades futuras

Referências principais

DUGGAN, J. et al. The bigdawg polystore system. SIGMOD Rec., ACM, New York, NY, USA, v. 44, n. 2, p. 11–16, ago. 2015. ISSN 0163-5808.

LIU, X.; IFTIKHAR, N.; XIE, X. Survey of real-time processing systems for big data. In: Proceedings of the 18th International Database Engineering & Applications Symposium. New York, NY, USA: ACM, 2014

MANYIKA, J. et al. Big data: The next frontier for innovation, competition, and productivity. McKinsey Global Institute San Francisco, 2011.

SADALAGE, P. J.; FOWLER, M. NoSQL distilled: a brief guide to the emerging world of polyglot persistence. [S.l.]: Pearson Education, 2012

Schätzle, Alexander, et al. "S2RDF: RDF Querying with SPARQL on Spark." arXiv preprint arXiv:1512.07021 (2015).

Referências principaisDEY, A.; FEKETE, A.; RöHM, U. Scalable transactions across heterogeneous nosql key-value data stores. Proc. VLDB

Endow., VLDB Endowment, v. 6, n. 12, p. 1434–1439, ago. 2013. ISSN 2150-8097.

BÁNHALMI, A. et al. Development of a novel semantic-based system integration framework. In: IEEE. Engineering of Computer Based Systems (ECBS-EERC), 2013 3rd Eastern European Regional Conference on the. [S.l.], 2013. p. 18–24.

DHARMASIRI, H.; GOONETILLAKE, M. A federated approach on heterogeneous nosql data stores. In: IEEE. Advances in ICT for Emerging Regions (ICTer), 2013 International Conference on. [S.l.], 2013. p. 234–239.

SILVA, D. L. D. et al. A computational framework for integrating and retrieving biodiversity data on a large scale. In: Proceedings of the 2014 IEEE International Congress on Big Data. Washington, DC, USA: IEEE Computer Society, 2014. (BIGDATACONGRESS ’14), p. 786–787. ISBN 978-1-4799-5057-7.

SERRANO, D.; STROULIA, E. Towards a uniform data model in multi-database environments. In: Proceedings of 24th Annual 48 International Conference on Computer Science and Software Engineering. Riverton, NJ, USA: IBM Corp., 2014. (CASCON ’14), p. 347–350.

KAUR, K.; RANI, R. Managing data in healthcare information systems: Many models, one solution. Computer, IEEE, n. 3, p. 52–59, 2015.

KIRAN, V.; VIJAYAKUMAR, R. Ontology based data integration of nosql datastores. In: IEEE. Industrial and Information Systems (ICIIS), 2014 9th International Conference on. [S.l.], 2014. p. 1–6.