Integrando Big Data ao OLTP com Polybase
Quem Sou
 Diretor da Búfalo Informática
 Líder do PASS Chapter devSQL/RJ
 MCT – Trainer
 MCSE Data e BI
Links
 http://facebook.com/devSQL
 Devsql-subscribe@yahoogroups.com
 http://www.youtube.com/c/dennestorres
 http://www.bufaloinfo.com.br
 http://bufaloinfo.cloudapp.net
 dennes@bufaloinfo.com.br
 @Dennes
Integrando Big Data ao OLTP com Polybase
Big Data é como sexo na adolescência : Todos falam sobre
isso, ninguém sabe realmente como fazer, todos pensam que
todos os outros estão fazendo então todos dizem estar fazendo
Hadoop Cluster
Soluções de Big Data
HDInsight Cluster
Soluções de Big Data
Polybase
Polybase
• Independe do servidor HDInsight
• Processamento no SQL Server
• Servidor precisa estar disponível
• Processamento delegado ao Hadoop -
pushdown
Cluster de Scale-Out com Polybase
Instalação
Configuração
Hadoop Connectivity
Valor Tipo de Conexão
0 Desabilitada
1
Hortonworks HDP 1.3 no Windows Server
Azure blob storage (WASB[S])
2 Hortonworks HDP 1.3 no Linux
3 Cloudera CDH 4.3 no Linux
4
Hortonworks HDP 2.0 no Windows Server
Azure blob storage (WASB[S])
5 Hortonworks HDP 2.0 no Linux
6 Cloudera 5.1 no Linux
7
Hortonworks 2.1 and 2.2 no Linux
Hortonworks 2.2 no Windows Server
Azure blob storage (WASB[S])
Instalação
ACESSO AO BLOB STORAGE
Passo 1: Configurar a Autenticação do Storage
-- Create a db master key if one does not already exist, using your
own password.
CREATE MASTER KEY ENCRYPTION BY
PASSWORD='MyP@ssword31';
--Enter the Azure account name and the acccess key as the secret
CREATE DATABASE SCOPED CREDENTIAL AzureCred
WITH IDENTITY = 'demostorageaccountbf'
, SECRET =
'6xSJxNumUaiyAlXgTSbC/msp0ORv1Qduo8pa+gS3fvzVDPvBPq
+vF36NjKPoqgsQtjNZQJDzyR1h3X8Qf6c0Pw=='
• A criação de uma masterkey é necessária
para a criação de uma credential
• A credential é criada com a chave de
acesso do storage
Passo 2: Criar a External Data Source
CREATE EXTERNAL DATA SOURCE AzureDs
WITH (
TYPE = HADOOP,
LOCATION =
'wasbs://testedto@demostorageaccountbf.blob.core.windows.net/'
,
CREDENTIAL = AzureCred
);
• O Data Source aponta para um blob
container
• Utilizamos a credential criada no espaço
anterior
Passo 3: Criar o File Format
CREATE EXTERNAL FILE FORMAT CommaFormat
WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (FIELD_TERMINATOR =',')
);
• Um objeto File Format determina o formato
do arquivo que será lido
Passo 4: Criar a External Table
CREATE EXTERNAL TABLE Tempo (
[Data] Date,
Hora varchar(15),
Dia varchar(15),
Temperatura int,
Vento int
)
WITH (
--Set the file to be the HVAC sensor sample file
LOCATION='/example/data/Weather.txt',
DATA_SOURCE = AzureDs,
FILE_FORMAT = CommaFormat,
);
• Um objeto File Format determina o formato
do arquivo que será lido
• O LOCATION pode apontar um arquivo ou
uma pasta
• Uso de Schema-On-Read
CONECTANDO AO AZURE STORAGE
Demo
HORTON SANDBOX
O que muda
Configurar o ClassPath para possibilitar o
pushdown
Credencial só necessária se servidor Hadoop usar
Kerberos
Resource Manager Location especificada no Data
Source
yarn.application.classpath
 Abra o arquivo Yarn-site.xml no diretório de configuração do Hadoop
C:appsdisthadoop-2.4.0.2.1.16.0-2374etchadoop
Pode também checar o classpath no Ambari
 Copie o valor da chave de configuração yarn.application.classpath
 Encontre o arquivo Yarn-Site.xml no caminho
C:Program FilesMicrosoft SQL
ServerMSSQL13.MSSQLSERVERMSSQLBinnPolybaseHadoopconf
 Cole o valor copiado na propriedade yarn.application.classpath
Formato do Resource_Manager_Location
Servidor Valor
Hortonworks HDP 2.0, 2.1, 2.2 on Windows NameNode_IP:8032
Hortonworks HDP 1.3 on Windows NameNode_IP:50300
Hortonworks HDP 2.0, 2.1, 2.2 on Linux NameNode_IP:8050
Hortonworks HDP 1.3 on Linux NameNode_IP:50300
Cloudera 4.3 on Linux NameNode_IP:8021
Cloudera 5.1 on Linux NameNode_IP:8032
CREATE EXTERNAL DATA SOURCE HDP WITH
(
TYPE = HADOOP,
LOCATION = 'hdfs://192.168.56.101:8020'
,resource_manager_location='192.168.56.101:8050'
)
CREATE EXTERNAL FILE FORMAT TSV
WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (
FIELD_TERMINATOR = 't',
DATE_FORMAT = 'MM/dd/yyyy'
)
)
create external table sample_07
(
code nvarchar(255),
description nvarchar(255),
total_emp int,
salary nvarchar(255)
)
WITH
( LOCATION = '/apps/hive/warehouse/sample_07',
DATA_SOURCE = HDP,
FILE_FORMAT = TSV)
CONECTANDO A UMA HORTON
SANDBOX
Demo
Links
 http://facebook.com/devSQL
 Devsql-subscribe@yahoogroups.com
 http://www.youtube.com/c/dennestorres
 http://www.bufaloinfo.com.br
 http://bufaloinfo.cloudapp.net
 dennes@bufaloinfo.com.br
 @Dennes
http://bufaloinfo.cloudapp.net
OBRIGADO!

Integrando big data ao oltp com polybase

  • 1.
    Integrando Big Dataao OLTP com Polybase
  • 2.
    Quem Sou  Diretorda Búfalo Informática  Líder do PASS Chapter devSQL/RJ  MCT – Trainer  MCSE Data e BI
  • 3.
    Links  http://facebook.com/devSQL  Devsql-subscribe@yahoogroups.com http://www.youtube.com/c/dennestorres  http://www.bufaloinfo.com.br  http://bufaloinfo.cloudapp.net  dennes@bufaloinfo.com.br  @Dennes
  • 5.
    Integrando Big Dataao OLTP com Polybase
  • 6.
    Big Data écomo sexo na adolescência : Todos falam sobre isso, ninguém sabe realmente como fazer, todos pensam que todos os outros estão fazendo então todos dizem estar fazendo
  • 7.
  • 8.
  • 9.
  • 11.
  • 12.
  • 13.
    Polybase • Independe doservidor HDInsight • Processamento no SQL Server • Servidor precisa estar disponível • Processamento delegado ao Hadoop - pushdown
  • 14.
  • 16.
  • 17.
  • 18.
    Hadoop Connectivity Valor Tipode Conexão 0 Desabilitada 1 Hortonworks HDP 1.3 no Windows Server Azure blob storage (WASB[S]) 2 Hortonworks HDP 1.3 no Linux 3 Cloudera CDH 4.3 no Linux 4 Hortonworks HDP 2.0 no Windows Server Azure blob storage (WASB[S]) 5 Hortonworks HDP 2.0 no Linux 6 Cloudera 5.1 no Linux 7 Hortonworks 2.1 and 2.2 no Linux Hortonworks 2.2 no Windows Server Azure blob storage (WASB[S])
  • 19.
  • 20.
  • 21.
    Passo 1: Configurara Autenticação do Storage -- Create a db master key if one does not already exist, using your own password. CREATE MASTER KEY ENCRYPTION BY PASSWORD='MyP@ssword31'; --Enter the Azure account name and the acccess key as the secret CREATE DATABASE SCOPED CREDENTIAL AzureCred WITH IDENTITY = 'demostorageaccountbf' , SECRET = '6xSJxNumUaiyAlXgTSbC/msp0ORv1Qduo8pa+gS3fvzVDPvBPq +vF36NjKPoqgsQtjNZQJDzyR1h3X8Qf6c0Pw==' • A criação de uma masterkey é necessária para a criação de uma credential • A credential é criada com a chave de acesso do storage
  • 22.
    Passo 2: Criara External Data Source CREATE EXTERNAL DATA SOURCE AzureDs WITH ( TYPE = HADOOP, LOCATION = 'wasbs://testedto@demostorageaccountbf.blob.core.windows.net/' , CREDENTIAL = AzureCred ); • O Data Source aponta para um blob container • Utilizamos a credential criada no espaço anterior
  • 23.
    Passo 3: Criaro File Format CREATE EXTERNAL FILE FORMAT CommaFormat WITH ( FORMAT_TYPE = DELIMITEDTEXT, FORMAT_OPTIONS (FIELD_TERMINATOR =',') ); • Um objeto File Format determina o formato do arquivo que será lido
  • 24.
    Passo 4: Criara External Table CREATE EXTERNAL TABLE Tempo ( [Data] Date, Hora varchar(15), Dia varchar(15), Temperatura int, Vento int ) WITH ( --Set the file to be the HVAC sensor sample file LOCATION='/example/data/Weather.txt', DATA_SOURCE = AzureDs, FILE_FORMAT = CommaFormat, ); • Um objeto File Format determina o formato do arquivo que será lido • O LOCATION pode apontar um arquivo ou uma pasta • Uso de Schema-On-Read
  • 25.
    CONECTANDO AO AZURESTORAGE Demo
  • 26.
  • 27.
    O que muda Configuraro ClassPath para possibilitar o pushdown Credencial só necessária se servidor Hadoop usar Kerberos Resource Manager Location especificada no Data Source
  • 28.
    yarn.application.classpath  Abra oarquivo Yarn-site.xml no diretório de configuração do Hadoop C:appsdisthadoop-2.4.0.2.1.16.0-2374etchadoop Pode também checar o classpath no Ambari  Copie o valor da chave de configuração yarn.application.classpath  Encontre o arquivo Yarn-Site.xml no caminho C:Program FilesMicrosoft SQL ServerMSSQL13.MSSQLSERVERMSSQLBinnPolybaseHadoopconf  Cole o valor copiado na propriedade yarn.application.classpath
  • 29.
    Formato do Resource_Manager_Location ServidorValor Hortonworks HDP 2.0, 2.1, 2.2 on Windows NameNode_IP:8032 Hortonworks HDP 1.3 on Windows NameNode_IP:50300 Hortonworks HDP 2.0, 2.1, 2.2 on Linux NameNode_IP:8050 Hortonworks HDP 1.3 on Linux NameNode_IP:50300 Cloudera 4.3 on Linux NameNode_IP:8021 Cloudera 5.1 on Linux NameNode_IP:8032
  • 30.
    CREATE EXTERNAL DATASOURCE HDP WITH ( TYPE = HADOOP, LOCATION = 'hdfs://192.168.56.101:8020' ,resource_manager_location='192.168.56.101:8050' ) CREATE EXTERNAL FILE FORMAT TSV WITH ( FORMAT_TYPE = DELIMITEDTEXT, FORMAT_OPTIONS ( FIELD_TERMINATOR = 't', DATE_FORMAT = 'MM/dd/yyyy' ) ) create external table sample_07 ( code nvarchar(255), description nvarchar(255), total_emp int, salary nvarchar(255) ) WITH ( LOCATION = '/apps/hive/warehouse/sample_07', DATA_SOURCE = HDP, FILE_FORMAT = TSV)
  • 31.
    CONECTANDO A UMAHORTON SANDBOX Demo
  • 32.
    Links  http://facebook.com/devSQL  Devsql-subscribe@yahoogroups.com http://www.youtube.com/c/dennestorres  http://www.bufaloinfo.com.br  http://bufaloinfo.cloudapp.net  dennes@bufaloinfo.com.br  @Dennes
  • 34.
  • 35.