Relatório em bancos de dados de nuvem dimensionados (visualização)
Aplica-se a:Banco de Dados SQL do Azure
Você pode criar relatórios de vários bancos de dados a partir de um único ponto de conexão usando uma consulta elástica. Os bancos de dados devem ser particionados horizontalmente (também conhecidos como "fragmentados").
Se você tiver um banco de dados existente, consulte Migrando bancos de dados existentes para bancos de dados expandidos.
Para entender os objetos SQL necessários para consultar, consulte Consulta em bancos de dados particionados horizontalmente.
Pré-requisitos
Baixe e execute o Exemplo de Introdução às ferramentas do Banco de Dados Elástico.
Criar um gerenciador de mapas de estilhaços usando o aplicativo de exemplo
Aqui você criará um gerenciador de mapas de estilhaços junto com vários fragmentos, seguido pela inserção de dados nos fragmentos. Se acontecer de você já ter configurado fragmentos com dados fragmentados neles, você pode ignorar as etapas a seguir e passar para a próxima seção.
Crie e execute o aplicativo de exemplo Introdução às ferramentas do Elastic Database seguindo as etapas na seção do artigo Baixar e executar o aplicativo de exemplo. Depois de concluir todas as etapas, você verá o seguinte prompt de comando:
Na janela de comando, digite "1" e pressione Enter. Isso cria o gerenciador de mapa de estilhaços e adiciona dois fragmentos ao servidor. Em seguida, digite "3" e pressione Enter, repita a ação quatro vezes. Isso insere linhas de dados de exemplo em seus fragmentos.
O portal do Azure deve mostrar três novos bancos de dados em seu servidor:
Neste ponto, as consultas entre bancos de dados são suportadas por meio das bibliotecas de cliente do Elastic Database. Por exemplo, use a opção 4 na janela de comando. Os resultados de uma consulta multi-estilhaços são sempre uma UNIÃO TODOS os resultados de todos os fragmentos.
Na próxima seção, criamos um ponto de extremidade de banco de dados de exemplo que oferece suporte a consultas mais avançadas dos dados entre fragmentos.
Criar um banco de dados de consulta elástico
Abra o portal do Azure e inicie sessão.
Crie um novo banco de dados no Banco de Dados SQL do Azure no mesmo servidor da configuração do estilhaço. Nomeie o banco de dados "ElasticDBQuery".
Nota
Você pode usar um banco de dados existente. Se você puder fazer isso, não deve ser um dos fragmentos em que você gostaria de executar suas consultas. Esse banco de dados será usado para criar os objetos de metadados para uma consulta de banco de dados elástico.
Criar objetos de banco de dados
Chave mestra e credenciais com escopo de banco de dados
Estes são usados para se conectar ao gerenciador de mapas de estilhaços e aos fragmentos:
Abra o SQL Server Management Studio ou o SQL Server Data Tools no Visual Studio.
Conecte-se ao banco de dados ElasticDBQuery e execute os seguintes comandos T-SQL:
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master_key_password>'; CREATE DATABASE SCOPED CREDENTIAL ElasticDBQueryCred WITH IDENTITY = '<username>', SECRET = '<password>';
"nome de usuário" e "senha" devem ser os mesmos que as informações de login usadas na etapa 3 da seção Baixar e executar o aplicativo de exemplo no artigo Introdução às ferramentas do Elastic Database.
Origens de dados externas
Para criar uma fonte de dados externa, execute o seguinte comando no banco de dados ElasticDBQuery:
CREATE EXTERNAL DATA SOURCE MyElasticDBQueryDataSrc WITH
(TYPE = SHARD_MAP_MANAGER,
LOCATION = '<server_name>.database.windows.net',
DATABASE_NAME = 'ElasticScaleStarterKit_ShardMapManagerDb',
CREDENTIAL = ElasticDBQueryCred,
SHARD_MAP_NAME = 'CustomerIDShardMap'
) ;
"CustomerIDShardMap" é o nome do mapa de estilhaços, se você criou o mapa de estilhaços e o gerenciador de mapas de estilhaços usando o exemplo de ferramentas de banco de dados elástico. No entanto, se você usou sua configuração personalizada para este exemplo, então ele deve ser o nome do mapa de estilhaços que você escolheu em seu aplicativo.
Tabelas externas
Crie uma tabela externa que corresponda à tabela Customers nos fragmentos executando o seguinte comando no banco de dados ElasticDBQuery:
CREATE EXTERNAL TABLE [dbo].[Customers]
( [CustomerId] [int] NOT NULL,
[Name] [nvarchar](256) NOT NULL,
[RegionId] [int] NOT NULL)
WITH
( DATA_SOURCE = MyElasticDBQueryDataSrc,
DISTRIBUTION = SHARDED([CustomerId])
) ;
Executar uma consulta T-SQL de banco de dados elástico de exemplo
Depois de definir sua fonte de dados externa e suas tabelas externas, agora você pode usar o T-SQL completo sobre suas tabelas externas.
Execute esta consulta no banco de dados ElasticDBQuery:
select count(CustomerId) from [dbo].[Customers]
Você notará que a consulta agrega resultados de todos os fragmentos e fornece a seguinte saída:
Importar resultados de consulta de banco de dados elástico para o Excel
Você pode importar os resultados de uma consulta para um arquivo do Excel.
Inicie o Excel 2013.
Navegue até a faixa de opções Dados.
Clique em De Outras Fontes e clique em Do SQL Server.
No Assistente para Conexão de Dados, digite o nome do servidor e as credenciais de login. Clique depois em Seguinte.
Na caixa de diálogo Selecione o banco de dados que contém os dados desejados, selecione o banco de dados ElasticDBQuery .
Selecione a tabela Clientes na exibição de lista e clique em Avançar. Em seguida, clique em Concluir.
No formulário Importar Dados, em Selecione como deseja exibir esses dados na pasta de trabalho, selecione Tabela e clique em OK.
Todas as linhas da tabela Clientes , armazenadas em fragmentos diferentes, preenchem a folha do Excel.
Agora você pode usar as poderosas funções de visualização de dados do Excel. Você pode usar a cadeia de conexão com o nome do servidor, o nome do banco de dados e as credenciais para conectar suas ferramentas de BI e integração de dados ao banco de dados de consulta elástica. Verifique se o SQL Server tem suporte como uma fonte de dados para sua ferramenta. Você pode se referir ao banco de dados de consulta elástica e às tabelas externas como qualquer outro banco de dados do SQL Server e tabelas do SQL Server às quais você se conectaria com sua ferramenta.
Custo
Não há cobrança adicional pelo uso do recurso Consulta de Banco de Dados Elástico.
Para obter informações sobre preços, consulte Detalhes de preços do Banco de dados SQL.
Próximos passos
- Para obter uma visão geral da consulta elástica, consulte Visão geral da consulta elástica.
- Para obter um tutorial de particionamento vertical, consulte Introdução à consulta entre bancos de dados (particionamento vertical).
- Para consultas de sintaxe e exemplo para dados particionados verticalmente, consulte Consultando dados particionados verticalmente)
- Para consultas de sintaxe e exemplo para dados particionados horizontalmente, consulte Consultando dados particionados horizontalmente)
- Consulte sp_execute _remote para obter um procedimento armazenado que executa uma instrução Transact-SQL em um único Banco de Dados SQL remoto do Azure ou conjunto de bancos de dados que servem como fragmentos em um esquema de particionamento horizontal.