sql server heterogêneo: sql server + bigdata

33
November 2015 SQL Server Heterogêneo SQL Server + BigData

Upload: rodrigo-dornel

Post on 16-Apr-2017

488 views

Category:

Data & Analytics


10 download

TRANSCRIPT

Page 1: SQL Server Heterogêneo: SQL Server + BigData

November 2015

SQL Server HeterogêneoSQL Server + BigData

Page 2: SQL Server Heterogêneo: SQL Server + BigData

PASS Chapter LeaderRodrigo Ramos Dornel “Dornel”

MTAC Lead da Região SULProfessor UniversitárioMais de 10 anos como consultor em SQL ServerMCT e MCSARDornel Data Platform Experts

Page 3: SQL Server Heterogêneo: SQL Server + BigData

Upcoming SQLSaturdaysSouth America International

• Novembro, 21 em Brasília• http://www.sqlsaturday.com/469/eventhome.aspx• Abril, 09 Joinville (2016)• http://www.sqlsaturday.com/488/eventhome.aspx

Visit www.sqlsaturday.com to register for a event near you!

Page 4: SQL Server Heterogêneo: SQL Server + BigData

Local Chapter - MCITPSChttp://www.mcitpsc.com.br - @mcitpsc

Page 5: SQL Server Heterogêneo: SQL Server + BigData

Agenda

Introdução XML JSON

PolyBase SISS

Page 6: SQL Server Heterogêneo: SQL Server + BigData

6

Introdução

Porque banco de dados Heterogêneo?

• XML• SQL + NoSQL• Hadoop• MapReduce• HDFS• Hive• DocumentDB

Page 7: SQL Server Heterogêneo: SQL Server + BigData

7

Introdução

XML

• O que é XML

• Linguagem de marcação

• Capaz de descrever diversos tipos de dados. Seu propósito principal é a facilidade de compartilhamento de informações através da internet.

Page 8: SQL Server Heterogêneo: SQL Server + BigData

8

Introdução

Onde tudo começou

• Alterou alguns paradigmas de banco de dados

• Primeira experiência com dados não estruturados

• Introdução do tipo de dados XML

Page 9: SQL Server Heterogêneo: SQL Server + BigData

9

Introdução

• SQL + NoSQL

• SQL, fortemente ligado ao mundo relacional, consultas bem definidas, esquemas rígidos e ACID.

• NoSQL,  termo genérico para uma classe definida de banco de dados não-relacionais. Não apresenta estrutura rígida, alguns chamam de livre de esquema, pouco ou nenhum controle ACID.

Page 10: SQL Server Heterogêneo: SQL Server + BigData

10

Introdução

• SQL + NoSQL

• NoSQL, extremamente orientado a solução, ou seja, flexível, escalável e customizado.

• Trabalhar em arquitetura em nuvem e escalabilidade horizontal.

Page 11: SQL Server Heterogêneo: SQL Server + BigData

11

Introdução

• Hadoop

• Plataforma feita em Java para processamento distribuído de grandes massas de dados.

• Basicamente composto pelo HDFS, Yarn e MapReduce.

• Projeto é mantido pela fundação Apache.

• Para nós o mais familiar ou conhecido é o HDInsight feito pela Hortomworks para a Microsoft.

• Azure ou Local (só um nó)

Page 12: SQL Server Heterogêneo: SQL Server + BigData

12

Introdução

• HDFS

• Sistemas de arquivos feito para rodar em hardware básico.

• Feito para trabalhar com grandes quantidades de dados.

• Tolerante a falha.

• Não leva em consideração aspectos tradicionais de acesso a dados e sim um estilo de acesso como um streaming de dados.

Page 13: SQL Server Heterogêneo: SQL Server + BigData

13

Introdução

Page 14: SQL Server Heterogêneo: SQL Server + BigData

14

Introdução

• MapReduce

• MapReduce é um modelo de programação desenhado para processar grandes volumes de dados em paralelo, dividindo o trabalho em um conjunto de tarefas independentes

Page 15: SQL Server Heterogêneo: SQL Server + BigData

15

Introdução

Page 16: SQL Server Heterogêneo: SQL Server + BigData

16

Introdução

• Hive

• Basicamente uma infraestrutura de datawarehouse para rodar no topo da arquitetura do Hadoop para oferecer sumarização dos dados, consultas e análise.

• Ele oferece uma linguagem SQL-like chamada de HiveQL com leitura e esquemas que permitem que consultemos os dados MapReduce como se consultássemos banco tradicionais.

• Por causa dessa bendita possibilidade que estamos aqui Hoje .

Page 17: SQL Server Heterogêneo: SQL Server + BigData

17

Introdução

• DocumentDB

• É o banco de dados da Microsoft para JSON e JavaScript (Java Script Object Notation).

• No site do DocumentDB ele comenta que é possível fazer consultas parecidas com SQL ou usar UDF, funções para essas conversões.

• Seria o concorrente da Microsoft para o mongoDB

Page 19: SQL Server Heterogêneo: SQL Server + BigData

19

XML

• SQL Server e XML

• Introduzido na versão 2005.

• Possibilita transformar linhas do banco de dados em fragmentos de XML.

• Permite carregar e armazenar dados XML dentro SQL Server.

• Usa a linguagem XQuery para manipular dados dentro do XML, baseado em expressões XPath (árvore do XML, navegação).

Page 20: SQL Server Heterogêneo: SQL Server + BigData

20

XML

• Demo

• XML Auto• XQuery• XQuery Update

Page 21: SQL Server Heterogêneo: SQL Server + BigData

21

JSON

• DocumentDB

• O DocumentDB do Azure é um serviço de banco de dados de documento NoSQL projetado desde o início para suportar, de forma nativa, JSON e JavaScript diretamente dentro do mecanismo de banco de dados.

Page 22: SQL Server Heterogêneo: SQL Server + BigData

22

JSON

• JSON e o SQL Server 2016

• JSON Auto, cria uma hierarquia automaticamente

• JSON Path, você especifica as hierarquias• ISJSON(), valida se a coluna está no padrão

JSON• JSON_QUERY() “SUB CONSULTA”• JSON_VALUE(), retorna o valor do nó• JSON_MODIFY()???• OPENJSON(), carrega um campo “texto”

convertendo ele para JSON. OPENJSON é uma função (TVF), imagina um CAST ou CONVERT.

• INCLUDE_NULL_VALUES

Page 23: SQL Server Heterogêneo: SQL Server + BigData

23

JSON

• JSON e o SQL Server 2016

• Indexação

• ALTER TABLE Sales.SalesOrder_json• ADD vCustomerName AS

JSON_VALUE(Info, '$.Customer.Name')

• CREATE INDEX idx_SalesOrder_json_CustomerName

• ON Sales.SalesOrder_json(vCustomerName)

• Ou crie um índice Full Text!!!CREATE FULLTEXT INDEX ON Person.Person_json(EmailAddresses)

KEY INDEX PK_Person_json_PersonIDON jsonFullTextCatalog;

GO

Page 25: SQL Server Heterogêneo: SQL Server + BigData

25

PolyBase

O que é PolyBase?

• A tecnologia PolyBase permite consultar e unir dados de várias fontes, tudo usando os comandos Transact-SQL.

Page 27: SQL Server Heterogêneo: SQL Server + BigData

27

PolyBase

O que é PolyBase?

• Fonte de dados Externa, Hadoop, Azure Blob.

• Definição de como os dados estão organizados, ou seja, separadores de colunas.

• Um esquema que represente esses dados, colunas, tipos de dados e localização desse arquivo dentro do seu sistema de arquivos.

• Necessário ter o Java JDK antes de instalar e/ou pode ser interessante instalar um drive ODBC para Hive.

Page 28: SQL Server Heterogêneo: SQL Server + BigData

28

PolyBase

O que é PolyBase?

• Fonte de dados Externa, Hortomworks.• Definição dos dados• Localização dele no File System

Page 29: SQL Server Heterogêneo: SQL Server + BigData

29

PolyBase

• Demo• Criar o Source, File, Table• ODBC, OpenQuery• Azure Blob

Page 30: SQL Server Heterogêneo: SQL Server + BigData

30

SSIS

• Pacote de Integração SSIS + HDInsight + Azure Blob

• Conjunto de ferramentas para conexão e tarefas dentro do SSIS.

Page 32: SQL Server Heterogêneo: SQL Server + BigData

32

Quem vai cuidar disso tudo?

Você mesmo belesão!!!

Page 33: SQL Server Heterogêneo: SQL Server + BigData

Stay Involved!• Sign up for a free membership today at sqlpass.org

• Linked In: http://www.sqlpass.org/linkedin• Facebook: http://www.sqlpass.org/facebook• Twitter: @SQLPASS• PASS: http://www.sqlpass.org

• @rdornel• [email protected]