Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Resumo
| Elemento | Descrição |
|---|---|
| Estado de liberação | Beta |
| Produtos com suporte | Power BI (modelos semânticos) Power BI (fluxos de dados) Fabric (Fluxo de dados Gen2) |
| Tipos de autenticação com suporte | Básico (nome de usuário/senha) para todo o Power BI Desktop, Power Query Online com gateway e Power Query Online |
| Documentação de referência da função |
Suporte à função de consulta direta Referência de função do Power Query M |
Pré-requisitos
Capacidades suportadas
- Modo de Importação
- Modo de Consulta Direta (modelos semânticos do Power BI)
- Consultas do MongoDB Nativas
Conectar ao banco de dados do Azure Cosmos DB for MongoDB vCore a partir do Power Query Desktop
Para se conectar a um Azure Cosmos DB for MongoDB vCore a partir do Power Query Desktop, siga estas etapas:
Selecione o Azure Cosmos DB para MongoDB vCore na experiência Obter Dados. A experiência obter dados no Power Query Desktop varia entre aplicativos. Para obter mais informações sobre a experiência obter dados do Power Query Desktop para seu aplicativo, acesse Onde obter dados.
No Azure Cosmos DB para MongoDB vCore, forneça o endereço de endpoint do Cosmos DB. Opcionalmente, forneça um nome de banco de dados e um nome de coleção. Se um nome de banco de dados não for fornecido, a próxima tela do Navegador mostrará todos os bancos de dados e suas respectivas coleções. Especificar nomes de banco de dados e de coleção mostra apenas essa coleção. Especificar um nome de coleção sem um nome de banco de dados resulta em um erro de conexão.
Selecione o modo de conectividade de dados Importação ou DirectQuery.
Selecione OK.
Se você estiver se conectando a esse banco de dados pela primeira vez, insira seu nome de usuário e senha antes de selecionar Conectar.
No Navegador, selecione as informações de banco de dados desejadas. Uma lista de coleções aparece em cada banco de dados. Selecione uma ou mais coleções e selecione Carregar para carregar os dados ou Transformar Dados para continuar transformando os dados no Editor do Power Query. A lista de bancos de dados e coleções será afetada se o Nome do Banco de Dados opcional e o Nome da Coleção tiverem sido fornecidos anteriormente.
Conectar ao banco de dados do Azure Cosmos DB for MongoDB vCore a partir do Power Query Online
Para se conectar ao banco de dados Azure Cosmos DB vCore para MongoDB no Power Query Online:
Selecione a opção azure Cosmos DB para MongoDB vCore na experiência de obtenção de dados. Diferentes aplicativos têm maneiras distintas de acessar a experiência de obter dados no Power Query Online. Para obter mais informações sobre como acessar a experiência de dados do Power Query Online a partir do seu aplicativo, acesse Onde obter dados.
No diálogo Azure Cosmos DB for MongoDB vCore exibido, insira o ponto de extremidade do Cosmos DB. Opcionalmente, forneça um nome de banco de dados e um nome de coleção. Se um nome de banco de dados não for fornecido, a próxima tela do Navegador mostrará todos os bancos de dados e suas respectivas coleções. Especificar nomes de banco de dados e de coleção mostra apenas essa coleção. Especificar um nome de coleção sem um nome de banco de dados resulta em um erro de conexão.
Você pode selecionar uma conexão existente ou um gateway de dados. Você pode se conectar especificando o tipo de autenticação básica que especifica o nome de usuário e a senha associados ao ponto de extremidade na seção de credenciais de conexão e selecione Avançar.
Selecione uma ou várias tabelas para importar e usar e, em seguida, selecione Transformar Dados para transformar dados no editor do Power Query.
Consultas nativas do MongoDB
A função personalizada Value.NativeQuery permite que consultas nativas do MongoDB sejam enviadas à fonte de dados. O exemplo a seguir mostra como usar a função para criar uma tabela ao carregar dados inicialmente. No entanto, essa função pode ser invocada a qualquer momento em que a opção Transformar Dados estiver disponível.
As consultas nativas do Mongo só têm suporte no modo de Consulta Direta .
Usando o Navegador, selecione pelo menos uma coleção e escolha Transformar Dados.
Escolha Editor Avançado. A caixa de diálogo Editor Avançado aparece para mostrar a consulta inicial que seria usada para buscar todos os dados na coleção selecionada.
A função Value.NativeQuery usa dois argumentos: uma origem e a própria consulta. A
sourcevariável é preenchida com todas as informações necessárias para se conectar ao banco de dados. Se desejar, atualize o nome da coleção na qual a consulta será executada. A coleção não precisa ser a mesma selecionada no Navegador.O segundo argumento é uma consulta válida do MongoDB, entre aspas duplas. As aspas dentro da consulta são precedidas por outra aspa, por exemplo,
"num1"para""$num1""Escolha Concluído para transformar os dados.
Como nenhuma informação de esquema é retornada do Cosmos DB após a execução da consulta, a tabela resultante identifica todos os tipos de coluna como qualquer um. Transforme as colunas usando Detectar Tipo de Dados ou altere manualmente o tipo de dados para colunas de interesse. Atualize o nome da tabela resultante, se desejado.
Depois que o Editor do Power Query for fechado e as alterações aplicadas, a tabela resultante será exibida no painel Dados .
Consulte solução de problemas e limitações para limitações da Value.NativeQuery função.
Suporte para consulta direta
O Direct Query dá suporte às seguintes funções do Power Query:
-
Date.From,DateTime.From,DateTimeZone.From,Date.Day, ,Date.DayOfWeek,Date.DayOfYear,Date.Month, ,Date.WeekOfYearDate.Year -
List.Average,List.Contains,List.First,List.Last, ,List.Max,List.Min,List.Sum -
Int64.From,Currency.From,Percentage.From,Text.From, ,Logical.From,Logical.FromText,Logical.ToText -
Number.Abs,Number.Mod,Number.Round,Number.RoundAwayFromZero, ,Number.RoundDown,Number.RoundTowardZero,Number.RoundUp Table.RowCount-
Time.Hour,Time.Minute,Time.Second -
Value.Add,Value.Divide,Value.Equals,Value.Multiply,Value.NullableEquals, ,Value.Subtract
Solução de problemas e limitações
Como as funções de Texto do Power Query ainda não têm suporte, também não é possível usar Filtros de Texto em uma coluna ao Transformar Dados no modo DirectQuery.
- Exemplos desses filtros: Começa com, Termina com, Contém, etc.
- Uma mensagem de erro semelhante a Operação sem Suporte: a invocação de função sem suporte: 'Text.StartsWith' é exibida
Como nem todas as funções do Power Query têm suporte ao usar a Consulta Direta, alterne para o Modo de Importação ou emita uma Consulta Nativa do Mongo que realize a intenção de uma ou mais funções ausentes do Power Query.
Nenhuma informação de esquema é retornada ao usar consultas nativas do Mongo. Todas as colunas são consideradas
anye precisam ser transformadas manualmente no tipo de dados desejado.A função personalizada
Value.NativeQueryamostra apenas o primeiro documento retornado da consulta para construir a tabela resultante. A consequência é que, se houver mais campos em documentos subsequentes, esses campos não serão incluídos na tabela resultante. Projete colunas específicas do projeto ou consulte uma exibição de compensação específica.A função personalizada
Value.NativeQuerysó pode ser usada com a Consulta Direta e não com o Modo de Importação.O Power BI remove os milissegundos dos tipos de data ao aplicar um filtro interno. Portanto, se um tipo de data contiver milissegundos, esses filtros internos não funcionarão.
Datas OLE negativas (anteriores a 30 de dezembro de 1899) para
Date.From,DateTime.FromeDateTimeZone.Fromnão funcionam.Usar a função do Power BI
DateTimeZone.Fromresulta em um (400): erro de solicitação incorreta do servidor Cosmos DB, pois adateFromStringfuncionalidade não é adicionada ao Cosmos DB para MongoDB.Não há suporte para nomes de campo que contêm caracteres especiais (por exemplo,
$,., etc@.).Quando uma divisão por 0 é encontrada usando a Consulta Direta, a consulta falha. Ele difere do resultado habitual
#infinitydo Power BI, mas se alinha ao comportamento do MongoDB.Os tipos de dados a seguir são atualmente considerados como cadeias de caracteres. Dessa forma, o uso de valores com esses tipos de dados não pode ser usado para filtragem na Consulta Direta, pois o push para baixo falha:
- decimal128
- regularExpression
- carimbo de data/hora
A recomendação para qualquer campo que você deseja usar no Power BI é garantir que o campo esteja em todos os documentos de sua coleção. Isso garante que ele sempre apareça no Power BI.