Obter dados a partir de origens de dados relacionais

Concluído

Se a sua organização utilizar uma base de dados relacional para registar as respetivas transações de vendas, pode utilizar o Power BI Desktop para estabelecer uma ligação com a base de dados relacional da sua organização, em vez de obter dados a partir de ficheiros simples individuais.

Ligar o Power BI à sua base de dados irá ajudar a monitorizar o progresso do seu negócio e a identificar tendências, para que possa prever volumes de vendas, planear orçamentos e definir indicadores e objetivos de desempenho.   O Power BI Desktop pode ligar-se a muitas bases de dados relacionais, quer estejam na cloud ou no local.

Scenario

A equipa de vendas na Tailwind Traders pediu-lhe que estabeleça ligação com a base de dados do SQL Server no local da organização e transfira os dados de vendas para o Power BI Desktop para que possa criar relatórios de vendas.

Captura de ecrã a mostrar o Fluxo de dados da base de dados SQL para o Power BI.

Ligar a dados numa base de dados relacional

Pode utilizar a funcionalidade Obter dados no Power BI Desktop e selecionar a opção aplicável para a sua base de dados relacional. Neste exemplo, selecione a opção SQL Server, conforme mostrado na seguinte captura de ecrã.

Dica

Junto ao botão Obter Dados estão opções de origens de dados de acesso rápido, como o SQL Server.

Captura de ecrã do menu Obter Dados expandido para mostrar SQL Server.

O próximo passo é introduzir o nome do servidor da sua base de dados e o nome de uma base de dados na janela Base de dados do SQL Server.  As duas opções no modo de conectividade de dados são: Importar (selecionada por predefinição, recomendada) e DirectQuery. Na maior parte das vezes, seleciona Importar. Também estão disponíveis outras opções avançadas na janela SQL Server base de dados, mas pode ignorá-las por enquanto.

Captura de ecrã a mostrar os detalhes da base de dados SQL Server.

Após ter adicionado os nomes do servidor e da base de dados, ser-lhe-á pedido que inicie sessão com um nome de utilizador e palavra-passe.  Terá três opções de início de sessão:

  • Windows – utilize a sua conta do Windows (credenciais do Azure Active Directory).

  • Base de dados – utilize as credenciais da base de dados.   Por exemplo, o SQL Server tem o seu próprio sistema de autenticação e início de sessão que é utilizado por vezes.   Se o administrador da base de dados lhe tiver fornecido um único início de sessão para a base de dados, poderá ter de introduzir essas credenciais no separador Base de dados.

  • Microsoft conta – utilize as credenciais da sua conta Microsoft.  Esta opção é muitas vezes utilizada nos serviços do Azure.

Selecione uma opção de início de sessão, introduza o seu nome de utilizador e palavra-passe e, em seguida, selecione Ligar.

Captura de ecrã a mostrar os detalhes de autorização da base de dados.

Selecione os dados a importar

Depois de a base de dados ter sido ligada a Power BI Desktop, a janela Navegador apresenta os dados disponíveis na sua origem de dados (a base de dados SQL neste exemplo). Pode selecionar uma tabela ou entidade para pré-visualizar os respetivos conteúdos e certificar-se de que os dados corretos são carregados no modelo do Power BI.

Selecione as caixas de verificação das tabelas que pretende trazer para Power BI Desktop e, em seguida, selecione a opção Carregar ou Transformar Dados.

  • Carregar – carregue automaticamente os seus dados para um modelo do Power BI no estado atual.

  • Transformar Dados – abra os seus dados no Microsoft Power Query, onde pode realizar ações como eliminar linhas ou colunas desnecessárias, agrupar os seus dados, remover erros e muitas outras tarefas de qualidade de dados.

    Captura de ecrã da janela Navegador com tabelas disponíveis.

Importar dados ao escrever uma consulta SQL

Também pode importar dados ao escrever uma consulta SQL para especificar apenas as tabelas e colunas necessárias.

Para escrever a consulta SQL, na janela SQL Server base de dados, introduza os nomes do servidor e da base de dados e, em seguida, selecione a seta junto a Opções avançadas para expandir esta secção e ver as suas opções. Na caixa Instrução SQL , escreva a instrução de consulta e, em seguida, selecione OK. Neste exemplo, irá utilizar a instrução Select SQL para carregar as colunas ID, NAME e SALESAMOUNT da tabela SALES.

Captura de ecrã a mostrar a caixa de diálogo SQL Server base de dados com uma consulta SQL.

Alterar as definições da origem de dados

Após criar uma ligação de origem de dados e carregar os dados para o Power BI Desktop, pode regressar e alterar as definições da sua ligação em qualquer altura.  Esta ação é muitas vezes necessária devido à política de segurança da organização. Por exemplo, quando a palavra-passe precisa de ser atualizada a cada 90 dias.  Pode alterar a origem de dados, editar permissões ou limpar permissões.

No separador Base , selecione Transformar dados e, em seguida, selecione a opção Definições da origem de dados.

Captura de ecrã a mostrar o menu Transformar dados expandido com as definições da Origem de dados realçadas.

Na lista de origens de dados que é apresentada, selecione a origem de dados que pretende atualizar.  Em seguida, pode clicar com o botão direito do rato nessa origem de dados e ver as opções de atualização disponíveis ou pode utilizar os botões de opção de atualização no canto inferior esquerdo da janela.  Selecione a opção de atualização necessária, altere as definições conforme necessário e, em seguida, aplique as suas alterações.

Captura de ecrã a mostrar as opções de Definições da origem de dados.

Também pode alterar as definições da origem de dados a partir do Power Query. Selecione a tabela e, em seguida, selecione a opção Definições da origem de dados no friso Base. Em alternativa, pode aceder ao painel Definições da Consulta no lado direito do ecrã e selecionar o ícone de definições junto a Origem (ou duplo Selecionar Origem). Na janela apresentada, atualize os detalhes do servidor e da base de dados e, em seguida, selecione OK.

Captura de ecrã a mostrar o botão Definições da origem de dados.

Depois de efetuar as alterações, selecione Fechar e Aplicar para aplicar essas alterações às definições da origem de dados.

Escrever uma instrução SQL

Tal como mencionado anteriormente, pode importar dados para o seu modelo do Power BI ao utilizar uma consulta SQL.  A linguagem SQL (Structured Query Language) é uma linguagem de programação utilizada para gerir bases de dados relacionais e desempenhar várias operações de gestão de dados.

Considere o cenário em que a sua base de dados tem uma grande tabela composta por dados de vendas ao longo de vários anos.   Os dados de vendas de 2009 não são relevantes para o relatório que está a criar.  É nesta situação que o SQL é benéfico, porque permite-lhe carregar apenas o conjunto de dados necessário ao especificar colunas e linhas exatas na sua instrução SQL e importá-las para o seu modelo de dados.  Também pode unir tabelas diferentes, efetuar cálculos específicos, criar instruções lógicas e filtrar dados na sua consulta SQL.

O seguinte exemplo mostra uma consulta simples em que o ID, NAME e SALESAMOUNT são selecionados na tabela SALES.

A consulta SQL começa com uma instrução Select , que lhe permite escolher os campos específicos que pretende extrair da base de dados.  Neste exemplo, quer carregar as colunas ID, NAME e SALESAMOUNT.

SELECT
ID
, NAME
, SALESAMOUNT
FROM

FROM especifica o nome da tabela da qual pretende solicitar dados. Neste caso, é a tabela SALES. O seguinte exemplo é a consulta SQL completa:

SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES

Ao utilizar uma consulta SQL para importar dados, tente evitar utilizar o caráter universal (*) na consulta. Se utilizar o caráter universal (*) na instrução SELECT, importa todas as colunas de que não precisa da tabela especificada.

O seguinte exemplo mostra a consulta com o caráter universal.

SELECT *
FROM
SALES

O caráter universal (*) importará todas as colunas na tabela Vendas . Este método não é recomendado porque leva à existência de dados redundantes no seu modelo de dados, o que irá causar erros de desempenho e fazer com que seja necessário efetuar passos adicionais para normalizar os seus dados para relatórios.

Todas as consultas devem ter uma cláusula WHERE. Esta cláusula irá filtrar as linhas para escolher apenas os registos filtrados que pretende. Neste exemplo, se quiser obter dados de vendas recentes após 1 de janeiro de 2020, adicione uma cláusula WHERE. A consulta evoluída teria o aspeto do seguinte exemplo.

SELECT
ID
, NAME
, SALESAMOUNT
FROM
SALES
WHERE
OrderDate >= ‘1/1/2020’

É uma prática recomendada evitar fazê-lo diretamente no Power BI. Em vez disso, considere escrever uma consulta como esta numa vista. Uma vista é um objeto numa base de dados relacional semelhante a uma tabela. As vistas têm linhas e colunas e contêm quase todos os operadores em linguagem SQL. Se o Power BI utilizar uma vista, quando devolve dados participa numa dobragem de consultas, uma funcionalidade do Power Query. A dobragem de consultas será explicada mais tarde, mas, resumidamente, o Power Query irá otimizar a obtenção de dados de acordo com a forma como os dados serão utilizados mais tarde.