CASSANDRA: BANCO DE DADOS NÃO RELACIONAL DE ALTO DESEMPENHO

Documentos relacionados
Banco de Dados. Prof. Gleison Batista de Sousa Aula 01

Introdução. O que é um Banco de Dados (BD)?

SGBDs NoSQL Modelos e Sistemas de Colunas e Grafos. Aluno: Jorge Dias Disciplina: IN940

Revisão de Bancos de Dados

Banco de Dados. Banco de Dados

NoSQL Apache Cassandra para DBAs. Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra.

Conceitos e arquitetura do banco de dados. Andre Noel

AULA 1 INTRODUÇÃO A BANCO DE DADOS E VISÃO GERAL DO SQL CONCEITUANDO BANCO DE DADOS MODELO RELACIONAL

Sistema Gestor de Bancos de Dados (SGBD)

BCD29008 Banco de dados

BCD29008 Banco de dados

Utilização de Banco de Dados NoSql em Ambientes Corporativos

LINGUAGEM, TIPOS DE USUÁRIOS DE SGBD E MODELOS DE DADOS

Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.


Sistemas da Informação. Banco de Dados I. Edson Thizon

Banco de Dados - Conceitos. Baseado no material da Profa. Vania Bogorny (UFSC)

DDL). O resultado da compilação dos parâmetros DDLs é

Bancos de Dados Notas de Aula Introdução Prof. Dr. Daniel A. Furtado

Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 2. Prof. Leonardo Vasconcelos

MODELAGEM DE DADOS UNIDADE 1 Visão Geral. Luiz Leão

Introdução a B anco de Dados. INE5206 Introdução à Informática INE/CTC/UFSC Prof. Roberto Willrich

Análise Integrada de Desempenho e Consumo de Energia em Sistemas de Armazenamento de Dados Distribuídos

Aula 2 BD Introdução. Profa. Elaine Faria UFU

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

NoSql Uma Alternativa ao Tradicional Modelo Relacional

Banco de Dados I. Prof. Edson Thizon

Rede de computadores Cliente- servidor. Professor Carlos Muniz

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Prof. Marcelo Machado Cunha

UNIVERSIDADE FEEVALE ANDERSON BUENO TRINDADE CONVERSÃO DE UM DIAGRAMA E-R PARA UMA BASE DE DADOS MONGODB (NOSQL)

Banco de Dados 08/08/2010

ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Técnico em Informática. Banco de Dados. Profª Ana Paula Mandelli

A U L A 1 I N T R O D U Ç Ã O A B A N C O D E D A D O S E V I S Ã O G E R A L D O S Q L

Banco de Dados I Introdução SQL

Modelagem Física e SQL

2. Conceitos e Arquiteturas de um SGBD

DESENVOLVIMENTO DE APLICATIVOS HÍBRIDOS BENEFÍCIOS E PROBLEMAS ENCONTRADOS NA UTILIZAÇÃO DESSAS TECNOLOGIAS

Marcio Victorino. Análise de Informações TCU - TI

Bruno Antunes da Silva UFSCar - Sorocaba

BD e Cloud Gerenciamento de. Dados na Nuvem

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

Aula 01 Conceito de Banco de Dados e SGBD

Oracle Database: Fundamentos de SQL e PL/SQL

BANCO DE DADOS I Atualizado em 13 de maio de 2009

A linguagem SQL

Banco de Dados. Professor: Marcelo Machado Cunha IFS Campus Aracaju

Aula 06 Sistemas Embarcados LT38C

Bancos de Dados NoSQL

AULA 3 Classificação dos Sistemas de Informação

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

O que é o PostgreSQL?

Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.

BIG DATA: UMA INTRODUÇÃO. Prof. Ronaldo R. Goldschmidt

AVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP

Introdução. Bases de Dados (CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Bancos de Dados NoSQL PROF.: DR. LUÍS CARLOS COSTA FONSECA

Informática Parte 5 Prof. Márcio Hunecke

PrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13

Aula 01. Introdução aos sistemas de informação Conceitos de banco de dados Modelos de BD Linguagens de Banco de Dados Usuários de um Banco de Dados

SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD

Banco de Dados Modelo Relacional, Algebra Relacional, SQL

Laboratório de Banco de Dados. Prof. Luiz Vivacqua.

Análise de Linguagem em um Banco de Dados Relacional Comparada ao Modelo NoSQL Analysis of Language in a Relational Database Compared to NoSQL Model

Conceitos de Sistemas de Banco de Dados INE 5323

MATA60 BANCO DE DADOS Aula 2- Sistema Gerenciador de Banco de Dados. Prof. Daniela Barreiro Claro

Faculdade Ieducare 4º Semestre Sistemas de Informação Professor: Rhyan Ximenes

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

Banco de Dados. SGBDs. Professor: Charles Leite

Banco de Dados. Aula 01. Prof. Diemesleno Souza Carvalho

Informática Parte 10 Prof. Márcio Hunecke

O que é um sistema distribuído?

Parte SISTEMAS DE GERÊNCIA DE BANCO DE DADOS 2.1 CARACTERÍSTICAS DE UM BANCO DE DADOS

Banco de Dados e Aplicações em Negócios: Introdução.

CONCEITOS BÁSICOS SOBRE NODE.JS

3 Arquitetura do Sistema

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Pollyanna Gonçalves. Seminário da disciplina Banco de Dados II

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

Sistemas de Informação Gerenciais

LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS

Introdução a Sistemas Gerenciadores de Banco de Dados

Informática Parte 11 Prof. Márcio Hunecke

SGBD NoSQL 1. Dácio Alves Florêncio

Modelagem Física e SQL

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Prof. Luiz Fernando. Unidade I ADMINISTRAÇÃO

Banco de Dados I. Sejam bem-vindos! Prof. Fred Lucena. 1

ANÁLISE COMPARATIVA ENTRE MODELOS DISTINTOS DE SGBD UTILIZANDO PROCESSAMENTO EM GPU E NOSQL

Seqüência da Apresentação Introdução Objetivos Fundamentação teórica Sistema atual Trabalhos correlatos Desenvolvimento do sistema Operacionalidade da

Banco de Dados. Linguagem SQL

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR

Transcrição:

Patrocínio, MG, outubro de 2016 ENCONTRO DE PESQUISA & EXTENSÃO, 3., 2016, Patrocínio. Anais... Patrocínio: IFTM, 2016. CASSANDRA: BANCO DE DADOS NÃO RELACIONAL DE ALTO DESEMPENHO Moises Wesley de Souza (IFTM) 1 ; Vitor Mendes de Souza (IFTM) 2 ; Dênis Henrique de Deus Lima (IFTM) 3 Modalidade: Pesquisa Resumo: Devido o avanço das tecnologias surgiu a necessidade de um banco de dados que pudesse trabalhar com uma grande quantidade de dados e ao mesmo tempo conseguir lidar com uma quantidade muito grande de acessos simultâneos, que geralmente são encontrados em sistemas de redes sociais e E-Commerce. Visto essas necessidades surgiu a proposta do banco de dados Cassandra que e uma solução NoSql ou seja e um banco de dados não relacional, nesse artigo foi abordado as principais características desse sistema, onde é indicado seu uso, alguns de seus pontos fortes, alguns conceitos de SQL e NoSql, além de outras características desse tipo de banco de dados. Palavras-Chave: Banco de Dados; Cassandra; NoSQL. INTRODUÇÃO Com o avanço da tecnologia, juntamente com a grande facilidade com que as pessoas têm acesso a mesma, os usuários produzem uma grande quantidade de terabytes e informações por dia, quantidade essa que não é uma tarefa tão simples de ser gerenciada por um banco de relacional. Devido a esse problema surgiu à necessidade de encontrar uma solução para armazenar e gerenciar essa grande quantidade de dados, de forma a ser mais 1 Estudante do Curso Tecnólogo em Análise e Desenvolvimento de Sistemas. moises.wesley.s@gmail.com 2 Estudante do Curso Tecnólogo em Análise e Desenvolvimento de Sistemas. vitu1221@hotmail.com 3 Professor Orientador, Especialista em Engenharia de Software com Métodos Ágeis. denislima@iftm.edu.br

organizada e de acesso mais rápido, surgindo assim a tecnologia de banco de dados não relacional (NoSQL). A proposta do banco de dados Cassandra segundo a The Apache Software Foundation (2016), é obter escalabilidade e alta disponibilidade sem perder desempenho, assim suprindo a necessidade de armazenamento de grandes volumes de informação. O banco de dados Cassandra é do tipo NoSQL. Esses bancos são considerados banco de dados não relacionais, o Cassandra reúne a arquitetura do Dynamo da Amazon e modelo de dados baseado no Bigtable 4 o Google. Esse banco inicialmente foi desenvolvido pelo Facebook e logo após teve o código aberto para a comunidade, sendo que hoje ele e mantido pela Apache com a colaboração de algumas outras empresas. O objetivo deste artigo será mostrar a principais características do Cassandra, seus pontos fortes e em que tipo de aplicação ele e mais adequado. 619 REFERENCIAL TEÓRICO tratado nesse artigo. Nessa seção será exibido os fundamentos teóricos do assunto SQL (Structured Query Language ) De acordo com Furtado (2016), o SQL é uma linguagem para manipulação de banco de dados relacionais. Essa linguagem interage com o SGBD (Sistema Gerenciador de Banco de Dados) para realizar operações no banco de dados. Essa linguagem e dividida em quatro grupos, sendo eles: DML (Data Manipulation Language) que é a linguagem de manipulação do banco que e usada para inserir, atualizar, excluir e recuperar os dados das tabelas, DDL (Data Definition Language) que e usada para criar a estrutura das tabelas do banco, DCL (Data Control Language) usada para controlar o acesso dos usuários aos dados, DTL (Data Transition Language) que serve para controlar as transações no banco de dados. 4 Banco de Dados orientado a colunas.

NoSQL Segundo Porcelli (2016), NoSQL é uma solução de armazenamento para bancos de dados não relacionais, ele não possui o objetivo de substituir os bancos de dados relacionais e sim propor soluções para algumas situações específicas. Complementado, Ianni (2016) diz que, os bancos não relacionais possuem uma escalabilidade mais barata e menos trabalhosa. A manutenção nesse modelo de banco é considerada mais fácil em relação aos bancos relacionais. Algumas das características dos bancos de dados segundo Ianni (2016) não relacionais são a utilização do processamento paralelo para manipular as informações e a distribuição em escala global. Existem vários tipos de banco de dados não relacionais conforme Lanni, sendo que alguns trabalham no esquema chave/valor, outros orientados a documentos e por fim baseado em grafos. 620 Banco de dados Cassandra Para Gonçalves (2016) o banco de dados Cassandra é normalmente utilizado em sistemas que necessitam de uma alta disponibilidade e escalabilidade, além de poder operar com vários processamentos simultâneos. Devido a esses itens ele vem sendo utilizado por empresas como Amazon, Facebook e Twitter, além de estar virando tendência em sistemas que possuem grande quantidade de dados, que aceitam algumas falhas, necessitam de alta disponibilidade e aceitam que alguns dados sejam fornecidos desatualizados. Conforme Gonçalves (2016), o banco de dados Cassandra e um banco não relacional onde não existe normalização, sua hierarquia e composta pelo KeySpace 5, que e uma família de colunas, sendo que essas colunas são compostas por nome do campo, valor e timestamp 6. Neste banco não existem transações, por que ele foi feito para trabalhar com uma taxa muito alta de 5 :Agrupamento de famílias de colunas. 6 : Conteúdo relacionado a data de criação ou alteração.

acessos, o mesmo aceita que se envie vários registros em uma mesma família de coluna ao mesmo tempo. A busca por informações no banco e feita através de chaves devido a questões de desempenho. O único componente que e obrigatório nesse banco de dados é a chave, pois seus campos são criados por demanda, ou seja, caso algum campo não seja preenchido é como se ele não existisse. METODOLOGIA Primeiramente foram divididos assuntos que seriam de maior importância para o artigo como, características e vantagens do banco de dados Cassandra e em quais tipos de sistemas utilizá-los, logo após foram escolhidos outros temas que eram necessários serem esclarecidos para que se tenha um maior entendimento do artigo. 621 Resultados Para Perera (2016) o Cassandra e um sistema distribuído, onde há vários nos que compartilham dados entre si, em um cluster 7 seus dados são distribuídos entre os nos sendo que qualquer no pode resolver solicitações mesmo que os dados solicitados não estejam armazenados nele. O sistema gerencia a criação e gerenciamento de suas réplicas, ele possui um sistema de gravação mais rápido do que o seu sistema de leitura chegando a taxas de 30 a 360MB/s a cada no, já que utiliza técnicas como manter a maior parte dos dados no nó responsável. Caso o tipo de gravação solicitado seja de consistência total os dados são gravados nos nós, resolvendo os problemas de inconsistências nos dados somente na leitura inicial, já que sua arquitetura e facilmente escalável, ele suporta um grande quantidade de nós. Em relação a bancos relacionais o Cassandra não realiza processos de junção de colunas, por isso ele tenta armazenar o máximo de dados possíveis em uma só linha, não possui chaves estrangeiras e suas chaves não podem ser alteradas, caso algum no do cluster apresentar algum problema o cluster continua a funcionar caso exista réplicas, para reparar o problema e 7 Conjunto de um ou mais servidores.

necessário usar a ferramenta de linha de comando de forma manual e o sistema ficará indisponível enquanto ela e executada. CONCLUSÃO Com a gigantesca gama de usuários conectados a internet geram grandes quantidades de informações que na maioria das vezes necessita de uma base de dados complexa para que se possa suprir essa demanda de armazenamento que muitas vezes as estruturas dos bancos de dados relacionais não consegue suportar em contra partida essa nova forma de organização de dados proposta pelo bando de dados cassandra vem para solucionar a maioria desses problemas. De acordo com esse estudo conclui se que a tecnologia do banco de dados Cassandra possui uma eficiência maior em sistemas que necessitam de uma grande quantidade de acessos simultâneos como sistemas de E- Commerce e redes sociais, além de ter que lidar com uma grande quantidade de dados, além de ser escalável, o que não impede que ele também seja empregado em outros tipos de aplicações. Sendo assim o sistema de banco de dados Cassandra e de essencial importância para o contexto de aplicações de grande escala, já sendo usado em diversas aplicações, o que torna o estudo sobre ele de suma importância para os profissionais da área. 622 REFERÊNCIAS FURTADO, Gustavo. Você precisa saber o que é SQL!. Disponível em: <http://www.dicasdeprogramacao.com.br/o-que-e-sql/>. Acesso em: 30 set. 2016. GONÇALVES, Otávio. Introdução ao banco de dados NoSQL Cassandra. Disponível em: <http://www.devmedia.com.br/introducao-ao-banco-de-dadosnosql-cassandra/30533>. Acesso em: 28 set. 2016. IANNI, Vinicius. Introdução aos bancos de dados NoSQL. Disponível em: <http://www.devmedia.com.br/introducao-aos-bancos-de-dados-nosql/26044 >. Acesso em: 28 set. 2016. PERERA, Srinath. Considerações sobre o Banco de Dados Apache Cassandra. Disponível em:

<https://www.ibm.com/developerworks/br/library/os-apache-cassandra/>. Acesso em: 01 out. 2016. PORCELLI, Alexandre. O que é nosql?. Disponível em: <http://www.devmedia.com.br/o-que-e-nosql-java-magazine-86/18777 >. Acesso em: 28 set. 2016. THE APACHE SOFTWARE FOUNDATION. What is Cassandra? Disponível em: <http://cassandra.apache.org/>. Acesso em: 16 set. 2016. 623