Ir para o conteúdo

Detalhes da Conexão do Azure Analysis Services

Introdução

Versão do conector

Esta documentação é baseada na versão 22.0.8510 do conector.

Começando

Suporte à versão do Azure Analysis Services

O conector envolve a complexidade da conexão com o Azure Analysis Services em um driver padrão: execute consultas SQL-92 ou passe por consultas MDX de ferramentas relacionais.

Estabelecendo uma Conexão

Conectando-se ao Azure Analysis Services

Para conectar, defina o URL propriedade para um servidor válido do Azure Analysis Services, por exemplo, asazure://southcentralus.asazure.windows.net/server, além de autenticar.

Opcionalmente, defina Database para distinguir a qual banco de dados do Azure no servidor se conectar.

Autenticação no Azure Analysis Services

Azure AD

O Azure AD é um tipo de conexão que utiliza OAuth para autenticação. OAuth requer que o usuário autenticado interaja com o Azure Analysis Services usando um navegador da Internet. O conector facilita isso de várias maneiras, conforme descrito abaixo. Defina seu AuthScheme para AzureAD. Todos os fluxos do AzureAD assumem que você fez isso.

Aplicativos de Área de Trabalho

fornece um aplicativo OAuth incorporado que simplifica a autenticação de área de trabalho OAuth. Como alternativa, você pode criar um aplicativo OAuth personalizado. Consulte Criando um aplicativo personalizado do AzureAD para obter informações sobre como criar aplicativos customizados e os motivos para fazê-lo.

Para autenticação, a única diferença entre os dois métodos é que você deve definir duas propriedades de conexão adicionais ao usar aplicativos OAuth personalizados.

Depois de definir as seguintes propriedades de conexão, você está pronto para se conectar:

  • InitiateOAuth: Defina para GETANDREFRESH. Você pode usar InitiateOAuth para evitar repetir a troca de OAuth e configurar manualmente o OAuthAccessToken.
  • OAuthClientId: (somente aplicativos personalizados) Defina isso como o ID do cliente nas configurações do seu aplicativo.
  • OAuthClientSecret: (apenas aplicativos personalizados) Defina isso como o segredo do cliente nas configurações do aplicativo.
  • CallbackURL: Defina isso para o URL de redirecionamento nas configurações do aplicativo.

Quando você conecta, o conector abre o endpoint OAuth em seu navegador padrão. Faça login e conceda permissões ao aplicativo. O conector então conclui o processo OAuth:

  1. Extrai o token de acesso da URL de retorno de chamada e autentica as solicitações.
  2. Obtém um novo token de acesso quando o antigo expira.
  3. Salva valores OAuth em OAuthSettingsLocation que persistem nas conexões.
Entidade de Serviço do Azure

A Entidade de Serviço do Azure é um tipo de conexão que passa por OAuth. Defina seu AuthScheme para AzureServicePrincipal. A autenticação como Entidade de Serviço do Azure é tratada por meio do fluxo de Credenciais do Cliente OAuth e não envolve autenticação direta do usuário. Em vez disso, as credenciais são criadas apenas para o próprio aplicativo. Todas as tarefas executadas pelo aplicativo são feitas sem um contexto de usuário padrão, mas com base nas funções atribuídas. O acesso do aplicativo aos recursos é controlado por meio das permissões das funções atribuídas.

Observação: Você deve criar um aplicativo personalizado antes de atribuir uma papel. Consulte Criando um aplicativo personalizado do AzureAD Para maiores informações.

Ao autenticar usando uma entidade de serviço do Azure, você deve registrar um aplicativo com um locatário do Azure AD. Siga as etapas abaixo para criar uma nova entidade de serviço que pode ser usada com o controle de acesso baseado em função.

Atribuir uma Papel ao Aplicativo

Para acessar recursos em sua assinatura, você deve atribuir uma papel ao aplicativo.

  1. Abra o Subscriptions pesquisando e selecionando o serviço Assinaturas na barra de pesquisa.
  2. Selecione a assinatura específica à qual atribuir o aplicativo.
  3. Abra o Access control (IAM) e selecione Add > Add role assignment para abrir o Add role assignment página.
  4. Selecione Owner como a papel a ser atribuída ao aplicativo criado do Azure AD.
Conclua a Autenticação

Você está pronto para se conectar após definir um dos grupos de propriedades de conexão abaixo, dependendo da autenticação de aplicativo configurada (segredo ou certificado do cliente).

Em ambos os métodos

Antes de escolher o segredo do cliente ou autenticação de certificado, siga estas etapas e continue na seção relevante abaixo:

  1. AuthScheme: Defina isso como AzureServicePrincipal nas configurações do aplicativo.
  2. InitiateOAuth: Defina para GETANDREFRESH. Você pode usar InitiateOAuth para evitar repetir a troca OAuth e definir manualmente o OAuthAccessToken.
  3. AzureTenant: Defina isso para o inquilino ao qual você deseja se conectar.
  4. OAuthClientId: Defina isso como o ID do cliente nas configurações do aplicativo.

Autenticando usando um segredo do cliente

Continue com o seguinte:

  1. OAuthClientId: Defina isso como o ID do cliente nas configurações do aplicativo.
  2. OAuthClientSecret: Defina isso como o segredo do cliente nas configurações do aplicativo.

Autenticando usando um certificado

Continue com o seguinte:

  1. OAuthJWTCert: Defina isso para o armazenamento de certificados JWT.
  2. OAuthJWTCertType: Defina isso para o tipo de armazenamento de certificado especificado por OAuthJWTCert.
Senha do Azure

Para se conectar usando suas credenciais do Azure diretamente, especifique as seguintes propriedades de conexão:

  • AuthScheme: Defina para AzurePassword.
  • User: Defina isso para sua conta de usuário que você usa para se conectar ao Azure.
  • Password: Defina isso como a senha que você usa para se conectar ao Azure.
  • AzureTenant: Defina isso como Directory (tenant) ID, encontrado na página Visão geral do aplicativo OAuth usado para autenticação no Azure Analysis Services no Azure.
MSI

Se você estiver executando o Azure Analysis Services em uma VM do Azure, poderá aproveitar as credenciais de identidade de serviço gerenciado (MSI) para se conectar:

  • AuthScheme: Defina para AzureMSI.

As credenciais MSI são obtidas automaticamente para autenticação.

Criando um Aplicativo Personalizado do AzureAD

Existem dois tipos de aplicativos personalizados do AzureAD: AzureAD e AzureAD com uma entidade de serviço do Azure. Ambos são baseados em OAuth.

Quando Criar um Aplicativo Personalizado

incorpora credenciais de aplicativos OAuth com marcas que podem ser usadas ao se conectar por meio de um aplicativo de desktop ou de uma máquina sem periféricos.

Você pode optar por usar suas próprias credenciais de aplicativo AzureAD quando quiser

  • marca de controle da caixa de diálogo de autenticação
  • controlar o URI de redirecionamento para o qual o aplicativo redireciona o usuário após a autenticação do usuário
  • personalize as permissões que você está solicitando do usuário

Aplicativos Personalizados do AzureAD

Você pode usar um aplicativo AzureAD personalizado para autenticar uma conta de serviço ou uma conta de usuário. Você sempre pode criar um aplicativo personalizado do AzureAD, mas observe que as conexões de desktop e headless oferecem suporte a OAuth incorporado, o que simplifica o processo de autenticação. Consulte "Estabelecendo uma conexão" para obter informações sobre como usar o aplicativo OAuth incorporado.

Criar um Aplicativo Personalizado do AzureAD

Siga as etapas abaixo para obter os valores do AzureAD para seu aplicativo, o OAuthClientId e OAuthClientSecret.

  1. Faça login em <https://portal.azure.com>.
  2. No painel de navegação à esquerda, selecione Azure Active Directory, então applicationRegistrations, e clique em New registration.
  3. Insira um nome de aplicativo e selecione a configuração de locatário desejada. Ao criar um aplicativo personalizado do AzureAD no Azure Active Directory, você pode definir se o aplicativo é único ou multilocatário. Se você selecionar a opção padrão, "Somente contas neste diretório organizacional", deverá definir o AzureTenant propriedade de conexão para a ID do locatário do Azure AD ao estabelecer uma conexão com o conector Jitterbit para Azure Analysis Services. Caso contrário, a tentativa de autenticação falhará com um erro. Se seu aplicativo for apenas para uso privado, "Apenas contas neste diretório da organização" deve ser suficiente. Caso contrário, se você deseja distribuir seu aplicativo, escolha uma das opções multilocatário.
  4. Defina o URL de redirecionamento para http://localhost:33333, o padrão do conector. Ou especifique uma porta diferente e defina CallbackURL para o URL de resposta exato que você definiu.
  5. Clique em Register para registrar o novo aplicativo. Isso abre uma tela de gerenciamento de aplicativos. Anote o valor em Application (client) ID Enquanto o OAuthClientId e a Directory (tenant) ID Enquanto o AzureTenant.
  6. Navegue até "Certificados e Segredos" e defina o tipo de autenticação do aplicativo. Existem dois tipos de autenticação disponíveis: segredo do cliente ou certificado. O método de autenticação recomendado é usar um certificado.
    • Opção 1: Carregar um certificado: Em "Certificates & Secrets", selecione Upload certificate e o certificado para carregar de sua máquina local.
    • Opção 2: Criar um novo segredo de aplicativo: Em "Certificados e Segredos", selecione New Client Secret para a aplicação e especificar a sua duração. Depois de salvar o segredo do cliente, o valor da chave é exibido. Copie este valor, pois ele é exibido apenas uma vez. Você precisará dele como OAuthClientSecret.
  7. Selecione API Permissions > Add > Delegated permissions.
  8. Salve suas alterações.
  9. Se você optou por usar permissões que exigem consentimento do administrador, pode concedê-las do locatário atual na página Permissões de API.

Usando a Autenticação Principal de Serviço do Azure

A autenticação como Entidade de Serviço do Azure é tratada por meio do fluxo de Credenciais do Cliente OAuth e não envolve autenticação direta do usuário. Em vez disso, as credenciais são criadas apenas para o próprio aplicativo. Todas as tarefas executadas pelo aplicativo são feitas sem um contexto de usuário padrão, mas com base nas funções atribuídas. O acesso do aplicativo aos recursos é controlado por meio das permissões das funções atribuídas.

Crie um Aplicativo do AzureAD e uma Entidade de Serviço do Azure

Ao autenticar usando uma entidade de serviço do Azure, você deve registrar um aplicativo com um locatário do Azure AD.

Atribuir uma Papel ao Aplicativo

Para acessar recursos em sua assinatura, você deve atribuir uma papel ao aplicativo.

  1. Abra o Subscriptions pesquisando e selecionando o serviço Assinaturas na barra de pesquisa.
  2. Selecione a assinatura específica à qual atribuir o aplicativo.
  3. Abra o Access control (IAM) e selecione Add > Add role assignment para abrir o Add role assignment página.
  4. Selecione Owner como a papel a ser atribuída ao aplicativo criado do Azure AD.

Conclua a Autenticação

Você está pronto para se conectar após definir um dos grupos de propriedades de conexão abaixo, dependendo da autenticação de aplicativo configurada (segredo ou certificado do cliente).

Em ambos os métodos

Antes de escolher o segredo do cliente ou autenticação de certificado, siga estas etapas e continue na seção relevante abaixo:

  1. AuthScheme: Defina isso como AzureServicePrincipal nas configurações do aplicativo.
  2. InitiateOAuth: Defina para GETANDREFRESH. Você pode usar InitiateOAuth para evitar repetir a troca OAuth e definir manualmente o OAuthAccessToken.
  3. AzureTenant: Defina isso para o inquilino ao qual você deseja se conectar.
  4. OAuthClientId: Defina isso como o ID do cliente nas configurações do aplicativo.

Autenticando usando um segredo do cliente

Continue com o seguinte:

  1. OAuthClientId: Defina isso como o ID do cliente nas configurações do aplicativo.
  2. OAuthClientSecret: Defina isso como o segredo do cliente nas configurações do aplicativo.

Autenticando usando um certificado

Continue com o seguinte:

  1. OAuthJWTCert: Defina isso para o armazenamento de certificados JWT.
  2. OAuthJWTCertType: Defina isso para o tipo de armazenamento de certificado especificado por OAuthJWTCert.

Recuperando Dados do Analysis Services

Azure Analysis Services é um banco de dados OLAP que expõe dados como cubos, que você consultar com MDX (expressões multidimensionais). O conector modela esses cubos em exibições relacionais que você pode consultar com o SQL-92. O seguinte mapeamento é para o layout do modelo:

  • Catalog - Exibido no conector como um Catálogo.
  • Cube - Exibido no conector como um esquema.
  • Measure - Disponível no conector na visualização Medidas especiais.
  • Dimension - Cada dimensão é exposta como uma visualização.
  • Level - Cada nível individual de uma hierarquia é exposto como uma coluna na exibição de dimensão apropriada.

Unindo Medidas e Dimensões

Para recuperar medidas por valor de nível específico, emita uma junção entre a visualização Medida e qualquer dimensão ou conjunto de dimensões. Por exemplo, emitir o seguinte recuperará o número de clientes em cada cidade:

SELECT m.[Customer Count], c.[City]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Observe que não há nenhuma condição ON necessária. Isso ocorre porque as tabelas já estão relacionadas adequadamente no Azure Analysis Services. Se você estiver usando uma ferramenta que requer condições ON, defina IncludeJoinColumns para verdadeiro. Isso anexará várias colunas de chave estrangeira a cada exibição, que as relacionará umas com as outras. Essas colunas não retornarão dados por conta própria, mas podem ser selecionadas automaticamente com ferramentas para construir as condições ON para junções quando necessário.

Agregando Dados

Os dados armazenados no Azure Analysis Services já estão agregados. Em muitos casos, tentar recuperar um agregado pode ser sintaticamente equivalente a não especificar nada. Por exemplo, a consultar a seguir retornará exatamente os mesmos dados da anterior:

SELECT SUM(m.[Customer Count]), c.[City]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m
GROUP BY c.[City]

A exceção a esta regra é quando uma agregação de resultados filtrados é solicitada. Nesses casos, um cálculo será solicitado do Azure Analysis Services. Por exemplo, para calcular a soma e a média dos clientes na França e na Alemanha:

SELECT SUM(m.[Customer Count]), AVG(m.[Customer Count]), c.[Country]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m
WHERE c.[Country] IN ('France', 'Germany')
GROUP BY c.[Country]

Selecionando Múltiplas Hierarquias

No Azure Analysis Services, as dimensões individuais são compostas por hierarquias que podem ter um ou mais níveis. Por exemplo, a tabela AdventureWorks Customers tem City, Country e Gender. Cidade e País fazem parte da mesma hierarquia enquanto Gênero é sua própria hierarquia.

Ao selecionar várias hierarquias, o método para oferecer suporte a isso é unir os valores em MDX. Embora não seja óbvio a partir de um modelo de tabela relacional dos dados como o conector apresenta, isso pode resultar na execução de consultas muito caras. Por exemplo, executando o seguinte:

SELECT c.[Country], m.[Customer Count]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Vai resultar em 6 linhas. No entanto, selecionando Gênero também:

SELECT c.[Country], c.[Gender], m.[Customer Count]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Agora resultará em 12 linhas. É porque Gênero e País estão em hierarquias diferentes, portanto, uma união cruzada é necessária para retornar os dois juntos. Cada hierarquia adicional adicionada ao SELECT multiplicará os resultados totais pelo número de valores disponíveis nessa hierarquia. Assim, para obter uma contagem de quantas linhas esperar, pode-se executar o seguinte:

SELECT (Count(c.[Country])*Count(c.[Gender])) AS totalrows
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 

Limite de Linha de Resposta

Devido à forma como a seleção de várias hierarquias multiplicará o número total de linhas de resultado, é possível aumentar o número de linhas de resposta muito rapidamente, o que resultará em tempos limite. Para tentar dar alguma visibilidade de quais consultas serão muito caras, o ResponseRowLimit a propriedade de conexão foi adicionada como um mecanismo para tentar orientar os usuários em melhores práticas. Quando definido, ele calculará quantas linhas esperar antes que qualquer consultar seja executada. Se o número de linhas previstas exceder o limite, um erro será lançado indicando quantas linhas esperar de volta com a consultar.

Recomenda-se selecionar apenas as colunas necessárias ou aplicar um critério WHERE. Ambos podem reduzir significativamente o número de linhas de resposta, o que terá um grande impacto no desempenho. Se você já está familiarizado com o conector e quais consultas podem ser caras, ResponseRowLimit pode ser desativado definindo-o como 0.

Acesso a Dados de Ajuste Fino

Acesso a Dados de Ajuste Fino

Definir as seguintes outras propriedades também pode ser útil em determinadas situações:

  • UseMDX: Indica se as consultas MDX estão sendo enviadas. Por padrão, isso é falso, o que fará com que o driver aceite apenas consultas compatíveis com SQL-92. Definir essa propriedade como true fará com que todas as consultas sejam passadas diretamente para o Azure Analysis Services.

  • ExtraProperties: Propriedades adicionais a serem enviadas junto com uma consultar MDX. Apenas significativo se UseMDX é verdade.

  • IncludeJoinColumns: Booleano indicando se devem ser adicionadas colunas extras usadas para fazer condições ON com junções. Eles não retornam com nenhum valor - eles são adicionados apenas para habilitar as ferramentas que os exigem para configurar automaticamente os relacionamentos entre as tabelas ao criar junções.

  • ResponseRowLimit: Define um limite calculado no número de linhas para permitir que o usuário selecione antes de retornar um erro. Como as consultas estão sendo convertidas para MDX, selecionar apenas algumas colunas pode multiplicar exponencialmente o número de resultados esperados.

    Por este motivo, ResponseRowLimit está disponível para tentar fornecer algumas orientações sobre quais tipos de consultas provavelmente resultarão em um tempo limite. Pode ser desativado definindo como 0.

Características Avançadas

Esta seção detalha uma seleção de recursos avançados do conector do Azure Analysis Services.

Visualizações definidas pelo usuário

O conector permite definir tabelas virtuais, denominadas visões definidas pelo usuário, cujo conteúdo é decidido por uma consultar pré-configurada. Essas exibições são úteis quando você não pode controlar diretamente as consultas enviadas aos drivers. Consulte Visualizações definidas pelo usuário para obter uma visão geral da criação e configuração de exibições personalizadas.

Configuração SSL

Use Configuração SSL para ajustar como o conector lida com as negociações de certificado TLS/SSL. Você pode escolher entre vários formatos de certificado; Veja o SSLServerCert propriedade em "Opções de cadeia de conexão" para obter mais informações.

Procurador

Para configurar o conector usando configurações de proxy do Agente Privado, selecione os Use Proxy Settings caixa de seleção na tela de configuração da conexão.

Processamento de consulta

O conector descarrega o máximo possível do processamento da instrução SELECT para o Azure Analysis Services e, em seguida, processa o restante da consultar na memória (do lado do cliente).

Consulte Processamento de consultas Para maiores informações.

Visualizações Definidas pelo Usuário

O Conector Jitterbit para Azure Analysis Services permite definir uma tabela virtual cujo conteúdo é decidido por uma consultar pré-configurada. Elas são chamadas de Visualizações Definidas pelo Usuário, que são úteis em situações onde você não pode controlar diretamente a consultar que está sendo emitida para o driver, por exemplo, ao usar o driver do Jitterbit. As Visualizações Definidas pelo Usuário podem ser usadas para definir predicados que são sempre aplicados. Se você especificar predicados adicionais na consultar para a visualização, eles serão combinados com a consultar já definida como parte da visualização.

Há duas maneiras de criar exibições definidas pelo usuário:

  • Crie um arquivo de configuração em formato JSON definindo as visualizações desejadas.
  • declarações DDL.

Definindo Visualizações Usando um Arquivo de Configuração

As visualizações definidas pelo usuário são definidas em um arquivo de configuração formatado em JSON chamado UserDefinedViews.json. O conector detecta automaticamente as visualizações especificadas neste arquivo.

Você também pode ter várias definições de exibição e controlá-las usando o UserDefinedViews propriedade de conexão. Quando você usa essa propriedade, apenas as exibições especificadas são vistas pelo conector.

Este arquivo de configuração de exibição definida pelo usuário é formatado da seguinte forma:

  • Cada elemento raiz define o nome de uma visualização.
  • Cada elemento raiz contém um elemento filho, chamado query, que contém a consultar SQL personalizada para a exibição.

Por exemplo:

{
    "MyView": {
        "query": "SELECT * FROM [adventureworks].[Model].Customer WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Use o UserDefinedViews propriedade de conexão para especificar a localização do seu arquivo de configuração JSON. Por exemplo:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"

Definindo Exibições Usando Instruções DDL

O conector também é capaz de criar e alterar o esquema por meio de instruções DDL, como CREATE LOCAL VIEW, ALTER LOCAL VIEW e DROP LOCAL VIEW.

Criar uma Visualização

Para criar uma nova visualização usando instruções DDL, forneça o nome da visualização e a consultar da seguinte forma:

CREATE LOCAL VIEW [MyViewName] AS SELECT * FROM Customers LIMIT 20;

Se não existir nenhum arquivo JSON, o código acima criará um. A exibição é então criada no arquivo de configuração JSON e agora pode ser descoberta. O local do arquivo JSON é especificado pelo UserDefinedViews propriedade de conexão.

Alterar uma Visualização

Para alterar uma exibição existente, forneça o nome de uma exibição existente ao lado da nova consultar que você gostaria de usar:

ALTER LOCAL VIEW [MyViewName] AS SELECT * FROM Customers WHERE TimeModified > '3/1/2020';

A visualização é então atualizada no arquivo de configuração JSON.

Solte uma Visualização

Para descartar uma exibição existente, forneça o nome de um esquema existente ao lado da nova consultar que você gostaria de usar.

DROP LOCAL VIEW [MyViewName]

Isso remove a visualização do arquivo de configuração JSON. Não pode mais ser consultado.

Esquema para Exibições Definidas pelo Usuário

As visualizações definidas pelo usuário são expostas no UserViews esquema por padrão. Isso é feito para evitar que o nome da exibição entre em conflito com uma entidade real no modelo de dados. Você pode alterar o nome do esquema usado para UserViews definindo o UserViewsSchemaName propriedade.

Trabalhando com Exibições Definidas pelo Usuário

Por exemplo, uma instrução SQL com uma Visualização Definida pelo Usuário chamada UserViews.RCustomers lista apenas clientes em Raleigh:

SELECT * FROM Customers WHERE City = 'Raleigh';

Exemplo de consultar ao driver:

SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';

Resultando na consultar efetiva à fonte:

SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';

Esse é um exemplo muito simples de uma consultar a uma exibição definida pelo usuário que é efetivamente uma combinação da consultar de exibição e da definição de exibição. É possível compor essas consultas em padrões muito mais complexos. Todas as operações SQL são permitidas em ambas as consultas e são combinadas quando apropriado.

Configuração SSL

Personalizando a Configuração SSL

Por padrão, o conector tenta negociar SSL/TLS verificando o certificado do servidor em relação ao armazenamento de certificados confiáveis do sistema.

Para especificar outro certificado, consulte o SSLServerCert propriedade para os formatos disponíveis para fazê-lo.

Certificados SSL do Cliente

O conector do Azure Analysis Services também dá suporte à configuração de certificados de cliente. Defina o seguinte para se conectar usando um certificado de cliente.

  • SSLClientCert: O nome do armazenamento de certificados para o certificado do cliente.
  • SSLClientCertType: O tipo de armazenamento de chaves que contém o certificado de cliente TLS/SSL.
  • SSLClientCertPassword: A senha para o certificado do cliente TLS/SSL.
  • SSLClientCertSubject: O assunto do certificado de cliente TLS/SSL.

Modelo de Dados

Azure Analysis Services é um banco de dados OLAP que expõe dados como cubos, que você consultar com MDX (expressões multidimensionais). O conector modela esses cubos em exibições relacionais que você pode consultar com o SQL-92. O seguinte mapeamento é para o layout do modelo:

  • Catalog - Exibido no conector como um Catálogo.
  • Cube - Exibido no conector como um esquema.
  • Measure - Disponível no conector na visualização Medidas especiais.
  • Dimension - Cada dimensão é exposta como uma visualização.
  • Level - Cada nível individual de uma hierarquia é exposto como uma coluna na exibição de dimensão apropriada.

Atributos de medida

Por padrão, todos os atributos de medida são listados em uma exibição 'Medidas'. No entanto, você pode definir SplitMeasures para 'true' para dividir a exibição de medidas; o resultado é que cada atributo de medida é incluído em sua respectiva exibição com base no valor do Grupo de medidas. Classificação adicional baseada em 'Diretórios de Medidas' não está incluída.

Medidas e Dimensões de União

Para recuperar medidas por valor de nível específico, emita uma junção entre a visualização Medida e qualquer dimensão ou conjunto de dimensões. Por exemplo, emitir o seguinte recuperará o número de clientes em cada cidade:

SELECT m.[Customer Count], c.[City]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Observe que não há nenhuma condição ON necessária. Isso ocorre porque as tabelas já estão relacionadas adequadamente no Azure Analysis Services. Se você estiver usando uma ferramenta que requer condições ON, defina IncludeJoinColumns para verdadeiro. Isso anexará várias colunas de chave estrangeira a cada exibição, que as relacionará umas com as outras. Essas colunas não retornarão dados por conta própria, mas podem ser selecionadas automaticamente com ferramentas para construir as condições ON para junções quando necessário.

Agregando dados

Os dados armazenados no Azure Analysis Services já estão agregados. Em muitos casos, tentar recuperar um agregado pode ser sintaticamente equivalente a não especificar nada. Por exemplo, a consultar a seguir retornará exatamente os mesmos dados da anterior:

SELECT SUM(m.[Customer Count]), c.[City]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m
GROUP BY c.[City]

A exceção a esta regra é quando uma agregação de resultados filtrados é solicitada. Nesses casos, um cálculo será solicitado do Azure Analysis Services. Por exemplo, para calcular a soma e a média dos clientes na França e na Alemanha:

SELECT SUM(m.[Customer Count]), AVG(m.[Customer Count]), c.[Country]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m
WHERE c.[Country] IN ('France', 'Germany')
GROUP BY c.[Country]

Selecionando Múltiplas Hierarquias

No Azure Analysis Services, as dimensões individuais são compostas por hierarquias que podem ter um ou mais níveis. Por exemplo, a tabela AdventureWorks Customers tem City, Country e Gender. Cidade e País fazem parte da mesma hierarquia enquanto Gênero é sua própria hierarquia.

Ao selecionar várias hierarquias, o método para oferecer suporte a isso é unir os valores em MDX. Embora não seja óbvio a partir de um modelo de tabela relacional dos dados como o conector apresenta, isso pode resultar na execução de consultas muito caras. Por exemplo, executando o seguinte:

SELECT c.[Country], m.[Customer Count]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Vai resultar em 6 linhas. No entanto, selecionando Gênero também:

SELECT c.[Country], c.[Gender], m.[Customer Count]
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 
INNER JOIN [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Measures AS m

Agora resultará em 12 linhas. É porque Gênero e País estão em hierarquias diferentes, portanto, uma união cruzada é necessária para retornar os dois juntos. Cada hierarquia adicional adicionada ao SELECT multiplicará os resultados totais pelo número de valores disponíveis nessa hierarquia. Assim, para obter uma contagem de quantas linhas esperar, pode-se executar o seguinte:

SELECT (COUNT(c.[Country])*COUNT(c.[Gender])) AS totalrows
FROM [AdventureWorksDW2012Multidimensional-SE].[Adventure Works].Customer AS c 

Limite de linha de resposta

Devido à forma como a seleção de várias hierarquias multiplicará o número total de linhas de resultado, é possível aumentar o número de linhas de resposta muito rapidamente, o que resultará em tempos limite. Para tentar dar alguma visibilidade de quais consultas serão muito caras, o ResponseRowLimit a propriedade de conexão foi adicionada como um mecanismo para tentar orientar os usuários em melhores práticas. Quando definido, ele calculará quantas linhas esperar antes que qualquer consultar seja executada. Se o número de linhas previstas exceder o limite, um erro será lançado indicando quantas linhas esperar de volta com a consultar.

Recomenda-se selecionar apenas as colunas necessárias ou aplicar um critério WHERE. Ambos podem reduzir significativamente o número de colunas de resposta, o que terá um grande impacto no desempenho. Se você já está familiarizado com o conector e quais consultas podem ser caras, ResponseRowLimit pode ser desativado definindo-o como 0.

Tabelas do Sistema

Você pode consultar as tabelas do sistema descritas nesta seção para acessar informações de esquema, informações sobre a funcionalidade da fonte de dados e estatísticas de operação em lote.

Tabelas de Esquema

As tabelas a seguir retornam metadados de banco de dados para Azure Analysis Services:

Tabelas de Fonte de Dados

As tabelas a seguir retornam informações sobre como se conectar e consultar a fonte de dados:

  • sys_connection_props: Retorna informações sobre as propriedades de conexão disponíveis.
  • sys_sqlinfo: Descreve as consultas SELECT que o conector pode descarregar para a fonte de dados.

Consultar Tabelas de Informações

A tabela a seguir retorna estatísticas de consultar para consultas de modificação de dados:

  • sys_identity: Retorna informações sobre operações em lote ou atualizações únicas.

Sys_catalogs

Lista os bancos de dados disponíveis.

A consultar a seguir recupera todos os bancos de dados determinados pela string de conexão:

SELECT * FROM sys_catalogs
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.

Sys_schemas

Lista os esquemas disponíveis.

A consultar a seguir recupera todos os esquemas disponíveis:

SELECT * FROM sys_schemas
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.
SchemaName String O nome do esquema.

Sys_tables

Lista as tabelas disponíveis.

A consultar a seguir recupera as tabelas e exibições disponíveis:

SELECT * FROM sys_tables
Colunas
Nome Tipo Descrição
CatalogName String O banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou visualização.
TableType String O tipo de tabela (tabela ou exibição).
Description String Uma descrição da tabela ou exibição.
IsUpdateable Boolean Se a tabela pode ser atualizada.

Sys_tablecolumns

Descreve as colunas das tabelas e exibições disponíveis.

A consultar a seguir retorna as colunas e os tipos de dados para a tabela [adventureworks].[Model].Customer:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Customer' AND CatalogName='adventureworks' AND SchemaName='Model'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou exibição que contém a coluna.
ColumnName String O nome da coluna.
DataTypeName String O nome do tipo de dados.
DataType Int32 Um número inteiro indicando o tipo de dados. Esse valor é determinado no tempo de execução com base no ambiente.
Length Int32 O tamanho de armazenamento da coluna.
DisplaySize Int32 A largura máxima normal da coluna designada em caracteres.
NumericPrecision Int32 O número máximo de dígitos em dados numéricos. O comprimento da coluna em caracteres para caracteres e dados de data e hora.
NumericScale Int32 A escala da coluna ou o número de dígitos à direita do ponto decimal.
IsNullable Boolean Se a coluna pode conter null.
Description String Uma breve descrição da coluna.
Ordinal Int32 O número de sequência da coluna.
IsAutoIncrement String Se o valor da coluna é atribuído em incrementos fixos.
IsGeneratedColumn String Se a coluna é gerada.
IsHidden Boolean Se a coluna está oculta.
IsArray Boolean Se a coluna é uma matriz.

Sys_procedures

Lista os procedimentos armazenados disponíveis.

A consultar a seguir recupera os procedimentos armazenados disponíveis:

SELECT * FROM sys_procedures
Colunas
Nome Tipo Descrição
CatalogName String O banco de dados que contém o procedimento armazenado.
SchemaName String O esquema que contém o procedimento armazenado.
ProcedureName String O nome do procedimento armazenado.
Description String Uma descrição do procedimento armazenado.
ProcedureType String O tipo do procedimento, como PROCEDURE ou FUNCTION.

Sys_procedureparameters

Descreve procedimento armazenado* parâmetros.

A consultar a seguir retorna informações sobre todos os parâmetros de entrada para o procedimento armazenado SelectEntries:

SELECT * FROM sys_procedureparameters WHERE ProcedureName='SelectEntries' AND Direction=1 OR Direction=2
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém o procedimento armazenado.
SchemaName String O nome do esquema que contém o procedimento armazenado.
ProcedureName String O nome do procedimento armazenado* contendo o parâmetro.
ColumnName String O nome do procedimento armazenado* parâmetro.
Direction Int32 Um número inteiro correspondente ao tipo do parâmetro: entrada (1), entrada/saída (2) ou saída (4). parâmetros de tipo de entrada/saída podem ser parâmetros de entrada e saída.
DataTypeName String O nome do tipo de dados.
DataType Int32 Um número inteiro indicando o tipo de dados. Esse valor é determinado no tempo de execução com base no ambiente.
Length Int32 O número de caracteres permitido para dados de caractere. O número de dígitos permitidos para dados numéricos.
NumericPrecision Int32 A precisão máxima para dados numéricos. O comprimento da coluna em caracteres para caracteres e dados de data e hora.
NumericScale Int32 O número de dígitos à direita do ponto decimal em dados numéricos.
IsNullable Boolean Se o parâmetro pode conter null.
IsRequired Boolean Se o parâmetro é necessário para a execução do procedimento.
IsArray Boolean Se o parâmetro é uma matriz.
Description String A descrição do parâmetro.
Ordinal Int32 O índice do parâmetro.

Sys_keycolumns

Descreve as chaves primárias e estrangeiras. A consultar a seguir recupera a chave primária da tabela [adventureworks].[Model].Customer:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Customer' AND CatalogName='adventureworks' AND SchemaName='Model'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
IsKey Boolean Se a coluna é uma chave primária na tabela referenciada no campo TableName.
IsForeignKey Boolean Se a coluna é uma chave estrangeira referenciada no campo TableName.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.

Sys_foreignkeys

Descreve as chaves estrangeiras. A consultar a seguir recupera todas as chaves estrangeiras que se referem a outras tabelas:

SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.
ForeignKeyType String Designa se a chave estrangeira é uma chave de importação (aponta para outras tabelas) ou de exportação (referenciada de outras tabelas).

Sys_primarykeys

Descreve as chaves primárias. A consultar a seguir recupera as chaves primárias de todas as tabelas e exibições:

SELECT * FROM sys_primarykeys
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
KeySeq String O número de sequência da chave primária.
KeyName String O nome da chave primária.

Sys_indexes

Descreve os índices disponíveis. Ao filtrar por índices, você pode escrever consultas mais seletivas com tempos de resposta de consultar mais rápidos.

A consultar a seguir recupera todos os índices que não são chaves primárias:

SELECT * FROM sys_indexes WHERE IsPrimary='false'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém o índice.
SchemaName String O nome do esquema que contém o índice.
TableName String O nome da tabela que contém o índice.
IndexName String O nome do índice.
ColumnName String O nome da coluna associada ao índice.
IsUnique Boolean True se o índice for exclusivo. Falso caso contrário.
IsPrimary Boolean Verdadeiro se o índice for uma chave primária. Falso caso contrário.
Type Int16 Um valor inteiro correspondente ao tipo de índice: estatística (0), clusterizado (1), hash (2) ou outro (3).
SortOrder String A ordem de classificação: A para crescente ou D para decrescente.
OrdinalPosition Int16 O número de sequência da coluna no índice.

Sys_connection_props

Retorna informações sobre as propriedades de conexão disponíveis e as definidas na string de conexão.

Ao consultar esta tabela, a string de conexão de configuração deve ser usada:

jdbc:cdata:aas:config:

Esta string de conexão permite que você consultar esta tabela sem uma conexão válida.

A consultar a seguir recupera todas as propriedades de conexão que foram definidas na string de conexão ou definidas por meio de um valor padrão:

SELECT * FROM sys_connection_props WHERE Value <> ''
Colunas
Nome Tipo Descrição
Name String O nome da propriedade de conexão.
ShortDescription String Uma breve descrição.
Type String O tipo de dados da propriedade de conexão.
Default String O valor padrão, se não houver um definido explicitamente.
Values String Uma lista separada por vírgulas de valores possíveis. Um erro de validação é lançado se outro valor for especificado.
Value String O valor que você definiu ou um padrão pré-configurado.
Required Boolean Se a propriedade é necessária para se conectar.
Category String A categoria da propriedade de conexão.
IsSessionProperty String Se a propriedade é uma propriedade de sessão, usada para salvar informações sobre a conexão atual.
Sensitivity String O nível de sensibilidade da propriedade. Isso informa se a propriedade é ofuscada nos formulários de registro e autenticação.
PropertyName String Uma forma truncada em camel case do nome da propriedade de conexão.
Ordinal Int32 O índice do parâmetro.
CatOrdinal Int32 O índice da categoria do parâmetro.
Hierarchy String Mostra as propriedades dependentes associadas que precisam ser definidas juntamente com esta.
Visible Boolean Informa se a propriedade está visível na UI da conexão.
ETC String Diversas informações diversas sobre o imóvel.

Sys_sqlinfo

Descreve o processamento da consultar SELECT que o conector pode transferir para a fonte de dados.

Descobrindo os Recursos SELECT da Fonte de Dados

Abaixo está um exemplo de conjunto de dados de recursos SQL. O conjunto de resultados a seguir indica a funcionalidade SELECT que o conector pode descarregar para a fonte de dados ou processar o lado do cliente. Sua fonte de dados pode suportar sintaxe SQL adicional. Alguns aspectos da funcionalidade SELECT são retornados em uma lista separada por vírgulas, se suportados; caso contrário, a coluna contém NO.

Nome Descrição Valores Possíveis
AGGREGATE_FUNCTIONS Funções de agregação suportadas. AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNT Se a função COUNT é suportada. YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR O caractere de abertura usado para escapar de um identificador. [
IDENTIFIER_QUOTE_CLOSE_CHAR O caractere de fechamento usado para escapar de um identificador. ]
SUPPORTED_OPERATORS Uma lista de operadores SQL com suporte. =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BY Se GROUP BY é compatível e, em caso afirmativo, o grau de suporte. NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
STRING_FUNCTIONS Funções de string suportadas. LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONS Funções numéricas suportadas. ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONS Funções de data/hora suportadas. NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLES Indica tabelas ignoradas durante a replicação.
REPLICATION_TIMECHECK_COLUMNS Uma matriz de string contendo uma lista de colunas que serão usadas para verificar (na ordem especificada) para usar como uma coluna modificada durante a replicação.
IDENTIFIER_PATTERN Valor de string que indica qual string é válida para um identificador.
SUPPORT_TRANSACTION Indica se o provedor oferece suporte a transações como confirmação e reversão. YES, NO
DIALECT Indica o dialeto SQL a ser usado.
KEY_PROPERTIES Indica as propriedades que identificam o banco de dados uniforme.
SUPPORTS_MULTIPLE_SCHEMAS Indica se vários esquemas podem existir para o provedor. YES, NO
SUPPORTS_MULTIPLE_CATALOGS Indica se vários catálogos podem existir para o provedor. YES, NO
DATASYNCVERSION A versão do Data Sync necessária para acessar este driver. Standard, Starter, Professional, Enterprise
DATASYNCCATEGORY A categoria Data Sync deste driver. Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQL Se a funcionalidade SQL aprimorada além do que é oferecido pela API é suportada. TRUE, FALSE
SUPPORTS_BATCH_OPERATIONS Se as operações em lote são suportadas. YES, NO
SQL_CAP Todos os recursos SQL suportados para este driver. SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS Um valor de string especifica o cacheOptions preferencial.
ENABLE_EF_ADVANCED_QUERY Indica se o driver oferece suporte direto a consultas avançadas provenientes do Entity Framework. Caso contrário, as consultas serão tratadas no lado do cliente. YES, NO
PSEUDO_COLUMNS Uma matriz de cadeia de caracteres que indica as pseudocolunas disponíveis.
MERGE_ALWAYS Se o valor for verdadeiro, o modo de mesclagem será executado à força no Data Sync. TRUE, FALSE
REPLICATION_MIN_DATE_QUERY Uma consultar de seleção para retornar a data e hora de início da replicação.
REPLICATION_MIN_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um min do lado do servidor.
REPLICATION_START_DATE Permite que um provedor especifique uma data de início de replicação.
REPLICATION_MAX_DATE_QUERY Uma consultar de seleção para retornar a data e hora de término da replicação.
REPLICATION_MAX_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um máximo do lado do servidor.
IGNORE_INTERVALS_ON_INITIAL_REPLICATE Uma lista de tabelas que ignorará a divisão da replicação em blocos na replicação inicial.
CHECKCACHE_USE_PARENTID Indica se a instrução CheckCache deve ser executada na coluna de chave pai. TRUE, FALSE
CREATE_SCHEMA_PROCEDURES Indica procedimentos armazenados* que pode ser usado para gerar arquivos de esquema.

A consultar a seguir recupera os operadores que podem ser usados na cláusula WHERE:

SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'

Observe que tabelas individuais podem ter diferentes limitações ou requisitos na cláusula WHERE; consulte o Modelo de Dados para obter mais informações.

Colunas
Nome Tipo Descrição
NAME String Um componente da sintaxe SQL ou um recurso que pode ser processado no servidor.
VALUE String Detalhes sobre a sintaxe SQL ou SQL suportada.

Sys_identity

Retorna informações sobre tentativas de modificação.

A consultar a seguir recupera os IDs das linhas modificadas em uma operação em lote:

SELECT * FROM sys_identity
Colunas
Nome Tipo Descrição
Id String O ID gerado pelo banco de dados retornado de uma operação de modificação de dados.
Batch String Um identificador para o lote. 1 para uma única operação.
Operation String O resultado da operação no lote: INSERTED, UPDATED ou DELETED.
Message String SUCCESS ou uma mensagem de erro se a atualização no lote falhou.

Procedimentos Armazenados

Procedimentos armazenados* são interfaces semelhantes a funções que estendem a funcionalidade do conector além das operações SELECT simples com o Azure Analysis Services.

Procedimentos armazenados* aceitam uma lista de parâmetros, executam a função pretendida e, em seguida, retornam, se aplicável, quaisquer dados de resposta relevantes do Azure Analysis Services, junto com uma indicação se o procedimento foi bem-sucedido ou falhou.

Conector Jitterbit para Procedimentos Armazenados do Azure Analysis Services

Nome Descrição
GetAdminConsentURL Obtém a URL de consentimento do administrador que deve ser aberta separadamente por um administrador de um determinado domínio para conceder acesso ao seu aplicativo. Necessário apenas ao usar credenciais OAuth personalizadas.
GetOAuthAccessToken Obtém o token de autenticação usado para autenticação no serviço.
GetOAuthAuthorizationUrl Obtém uma URL de autorização da fonte de dados. A URL de autorização pode ser usada para gerar um verificador necessário para obter o token OAuth.
RefreshOAuthAccessToken Obtém um OAuthAccessToken atualizado se passar um token para atualização.

GetAdminConsentURL

Obtém a URL de consentimento do administrador que deve ser aberta separadamente por um administrador de um determinado domínio para conceder acesso ao seu aplicativo. Necessário apenas ao usar credenciais OAuth personalizadas.

Entrada
Nome Tipo Descrição
CallbackUrl String A URL para a qual o usuário será redirecionado após autorizar seu aplicativo. Esse valor deve corresponder à URL de resposta nas configurações do aplicativo Azure AD.
State String O mesmo valor para o estado que você enviou quando solicitou o código de autorização.
Colunas do Conjunto de Resultados
Nome Tipo Descrição
URL String O URL de autorização, inserido em um navegador da Web para obter o token do verificador e autorizar seu aplicativo.

GetOAuthAccessToken

Obtém o token de autenticação usado para autenticação no serviço.

Entrada
Nome Tipo Descrição
AuthMode String O tipo de autenticação que você está tentando. Use App para um aplicativo do Windows ou Web para aplicativos baseados na Web. O valor padrão é APP.
Verifier String Um verificador retornado pelo serviço que deve ser inserido para retornar o token de acesso. Necessário apenas ao usar o modo de autenticação da Web. Obtido navegando até a URL retornada em GetOAuthAuthorizationUrl.
CallbackUrl String A URL para a qual o usuário será redirecionado após autorizar seu aplicativo.
State String Este campo indica qualquer estado que pode ser útil para sua aplicação após o recebimento da resposta. Seu aplicativo recebe o mesmo valor que enviou, pois esse parâmetro faz uma viagem de ida e volta ao servidor de autorização do Dynamics. Os usos incluem redirecionar o usuário para o recurso correto em seu site, usar nonces e atenuar a falsificação de solicitação entre sites.
Prompt String O padrão é 'select_account', que solicita que o usuário selecione a conta durante a autenticação. Defina como 'Nenhum', para nenhum prompt, 'login' para forçar o usuário a inserir suas credenciais ou 'consentimento' para acionar a caixa de diálogo de consentimento OAuth depois que o usuário entrar, solicitando que ele conceda permissões ao aplicativo.
Colunas do Conjunto de Resultados
Nome Tipo Descrição
OAuthAccessToken String O token de acesso OAuth.
\* String Outras saídas que podem ser retornadas pela fonte de dados.

GetOAuthAuthorizationUrl

Obtém uma URL de autorização da fonte de dados. A URL de autorização pode ser usada para gerar um verificador necessário para obter o token OAuth.

Entrada
Nome Tipo Descrição
CallbackURL String A URL para a qual o usuário será redirecionado após autorizar seu aplicativo.
State String Este campo indica qualquer estado que pode ser útil para sua aplicação após o recebimento da resposta. Seu aplicativo recebe o mesmo valor que enviou, pois esse parâmetro faz uma viagem de ida e volta ao servidor de autorização do Dynamics. Os usos incluem redirecionar o usuário para o recurso correto em seu site, usar nonces e atenuar a falsificação de solicitação entre sites.
Prompt String O padrão é 'select_account', que solicita que o usuário selecione a conta durante a autenticação. Defina como 'Nenhum', para nenhum prompt, 'login' para forçar o usuário a inserir suas credenciais ou 'consentimento' para acionar a caixa de diálogo de consentimento OAuth depois que o usuário entrar, solicitando que ele conceda permissões ao aplicativo.
Colunas do Conjunto de Resultados
Nome Tipo Descrição
Url String A URL de autorização que precisará ser aberta para que o usuário autorize seu aplicativo.

RefreshOAuthAccessToken

Obtém um OAuthAccessToken atualizado se passar um token para atualizar.

Entrada
Nome Tipo Descrição
OAuthRefreshToken String O token de atualização retornado da troca do código de autorização original.
Colunas do Conjunto de Resultados
Nome Tipo Descrição
OAuthAccessToken String O novo OAuthAccessToken retornou do serviço.
OAuthRefreshToken String Um token que pode ser usado para obter um novo token de acesso.
ExpiresIn String O tempo de vida restante no token de acesso.

Propriedades de Configurações Avançadas

As propriedades de configurações avançadas são as várias opções que podem ser usadas para estabelecer uma conexão. Esta seção fornece uma lista completa das opções que você pode configurar. Clique nos links para mais detalhes.

Autenticação

Propriedade Descrição
AuthScheme O tipo de autenticação a ser usado ao se conectar ao Azure Analysis Services.
URL A URL usada para conectar-se ao Azure Analysis Services.
User A conta de usuário do Azure Analysis Services usada para autenticação.
Password A senha usada para autenticar o usuário.

Autenticação do Azure

Propriedade Descrição
AzureTenant O locatário do Microsoft Online sendo usado para acessar dados. Se não for especificado, seu locatário padrão será usado.
AzureEnvironment O ambiente do Azure a ser usado ao estabelecer uma conexão.

OAuth

Propriedade Descrição
InitiateOAuth Configure esta propriedade para iniciar o processo para obter ou atualizar o token de acesso OAuth ao se conectar.
OAuthClientId O ID do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.
OAuthClientSecret O segredo do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.
OAuthAccessToken O token de acesso para conexão usando OAuth.
CallbackURL O URL de retorno de chamada OAuth ao qual retornar durante a autenticação. Esse valor deve corresponder ao URL de retorno especificado nas configurações do aplicativo.
OAuthVerifier O código do verificador retornado da URL de autorização OAuth.
OAuthRefreshToken O token de atualização OAuth para o token de acesso OAuth correspondente.
OAuthExpiresIn O tempo de vida em segundos do OAuth AccessToken.
OAuthTokenTimestamp O registro de data e hora da época do Unix em milissegundos quando o token de acesso atual foi criado.

JWT OAuth

Propriedade Descrição
OAuthJWTCert A loja de certificados JWT.
OAuthJWTCertType O tipo de armazenamento de chaves que contém o certificado JWT.
OAuthJWTCertPassword A senha para o certificado OAuth JWT.
OAuthJWTCertSubject O assunto do certificado OAuth JWT.
OAuthJWTIssuer O emissor do Java Web Token.
OAuthJWTSubject O assunto do usuário para o qual o aplicativo está solicitando acesso delegado.

SSL

Propriedade Descrição
SSLClientCert O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).
SSLClientCertType O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.
SSLClientCertPassword A senha para o certificado de cliente TLS/SSL.
SSLClientCertSubject O assunto do certificado de cliente TLS/SSL.
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

Esquema

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as visualizações relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.
Catalog O catálogo do Analysis Services a ser usado. Isso também pode ser conhecido como um banco de dados no Analysis Services.
IncludeJoinColumns Defina como true para incluir colunas de junção extras em cada tabela.

Diversos

Propriedade Descrição
CustomHeaders Outros cabeçalhos conforme determinado pelo usuário (opcional).
ExpressionInDescription Defina como true para relatar expressões como parte da descrição nas colunas de medida.
ExtraProperties Propriedades adicionais a serem enviadas em cada solicitação MDX ao Azure Analysis Services.
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
ResponseRowLimit O número de linhas de resposta a serem permitidas antes do erro. Defina como 0 por enquanto limite.
ShowHiddenEntities Defina como verdadeiro para incluir dimensões, medidas e níveis ocultos.
SplitMeasures Defina como true para dividir a tabela de medidas em tabelas individuais.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseMDX Defina como true para passar consultas MDX para o Azure Analysis Services como está.
UserDefinedViews Um caminho de arquivo apontando para o arquivo de configuração JSON que contém suas exibições personalizadas.

Autenticação

Esta seção fornece uma lista completa de propriedades de autenticação que você pode configurar.

Propriedade Descrição
AuthScheme O tipo de autenticação a ser usado ao se conectar ao Azure Analysis Services.
URL A URL usada para se conectar ao Azure Analysis Services.
User A conta de usuário do Azure Analysis Services usada para autenticação.
Password A senha usada para autenticar o usuário.

AuthScheme

O tipo de autenticação a ser usado ao se conectar ao Azure Analysis Services.

Valores Possíveis

AzureAD, AzureMSI, AzurePassword, AzureServicePrincipal

Tipo de Dados

string

Valor Padrão

"AzureAD"

Observações
  • AzureAD: defina isso para executar a autenticação OAuth do Azure Active Directory.
  • AzureMSI: defina isso para obter automaticamente credenciais de identidade de serviço gerenciado ao executar em uma VM do Azure.
  • AzurePassword: Defina isso para enviar Usuário e senha para o Azure. Nos bastidores, um processo OAuth ainda ocorrerá, mas as credenciais de usuário/senha serão enviadas, o que evitará uma janela do navegador que solicitará autorização.
  • AzureServicePrincipal: defina isso para autenticar como uma Entidade de Serviço do Azure.

URL

A URL usada para se conectar ao Azure Analysis Services.

Tipo de Dados

string

Valor Padrão

""

Observações

A URL HTTP ou HTTPS usada para se conectar ao Azure Analysis Services no formato asazure://\[region\].asazure.windows.net/\[server\]. Você pode obter o nome do servidor no portal do Azure -> Visão geral -> Nome do servidor.

Do Utilizador

A conta de usuário do Azure Analysis Services usada para autenticação.

Tipo de Dados

string

Valor Padrão

""

Observações

Juntamente com Senha, este campo é usado para autenticar no servidor Azure Analysis Services.

Senha

A senha usada para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

O usuário e Password são usados juntos para autenticar com o servidor.

Autenticação do Azure

Esta seção fornece uma lista completa das propriedades de autenticação do Azure que você pode configurar.

Propriedade Descrição
AzureTenant O locatário do Microsoft Online sendo usado para acessar dados. Se não for especificado, seu locatário padrão será usado.
AzureEnvironment O ambiente do Azure a ser usado ao estabelecer uma conexão.

AzureTenant

O locatário do Microsoft Online sendo usado para acessar dados. Se não for especificado, seu locatário padrão será usado.

Tipo de Dados

string

Valor Padrão

""

Observações

O locatário do Microsoft Online sendo usado para acessar dados. Por exemplo, contoso.onmicrosoft.com. Como alternativa, especifique a ID do locatário. Esse valor é a ID do diretório no Portal do Azure > Azure Active Directory > Propriedades.

Normalmente, não é necessário especificar o inquilino. Isso pode ser determinado automaticamente pela Microsoft ao usar o OAuthGrantType definido como CODE (padrão). No entanto, pode falhar caso o usuário pertença a vários locatários. Por exemplo, se um administrador do domínio A convidar um usuário do domínio B para ser um usuário convidado. O usuário agora pertencerá a ambos os locatários. É uma boa prática especificar o inquilino, embora em geral as coisas funcionem normalmente sem precisar especificá-lo.

O AzureTenant é necessário ao definir OAuthGrantType ao CLIENTE. Ao usar credenciais de cliente, não há contexto de usuário. As credenciais são obtidas do contexto do próprio aplicativo. Embora a Microsoft ainda permita que as credenciais do cliente sejam obtidas sem especificar qual locatário, ela tem uma probabilidade muito menor de escolher o locatário específico com o qual deseja trabalhar. Por este motivo, exigimos AzureTenant a ser declarado explicitamente para todas as conexões de credenciais do cliente para garantir que você obtenha credenciais aplicáveis ao domínio ao qual pretende se conectar.

Ambiente Azure

O ambiente do Azure a ser usado ao estabelecer uma conexão.

Valores Possíveis

GLOBAL, CHINA, USGOVT, USGOVTDOD

Tipo de Dados

string

Valor Padrão

"GLOBAL"

Observações

Na maioria dos casos, deixar o ambiente definido como global funcionará. No entanto, se sua conta do Azure tiver sido adicionada a um ambiente diferente, o AzureEnvironment pode ser usado para especificar qual ambiente. Os valores disponíveis são GLOBAL, CHINA, USGOVT, USGOVTDOD.

OAuth

Esta seção fornece uma lista completa de propriedades OAuth que você pode configurar.

Propriedade Descrição
InitiateOAuth Configure esta propriedade para iniciar o processo para obter ou atualizar o token de acesso OAuth ao se conectar.
OAuthClientId O ID do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.
OAuthClientSecret O segredo do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.
OAuthAccessToken O token de acesso para conexão usando OAuth.
CallbackURL O URL de retorno de chamada OAuth ao qual retornar durante a autenticação. Esse valor deve corresponder ao URL de retorno especificado nas configurações do aplicativo.
OAuthVerifier O código do verificador retornado da URL de autorização OAuth.
OAuthRefreshToken O token de atualização OAuth para o token de acesso OAuth correspondente.
OAuthExpiresIn O tempo de vida em segundos do OAuth AccessToken.
OAuthTokenTimestamp O registro de data e hora da época do Unix em milissegundos quando o token de acesso atual foi criado.

InitiateOAuth

Configure esta propriedade para iniciar o processo para obter ou atualizar o token de acesso OAuth ao se conectar.

Valores Possíveis

OFF, GETANDREFRESH, REFRESH

Tipo de Dados

string

Valor Padrão

"OFF"

Observações

As seguintes opções estão disponíveis:

  1. OFF: Indica que o fluxo OAuth será tratado inteiramente pelo usuário. Um OAuthAccessToken será necessário para autenticação.
  2. GETANDREFRESH: Indica que todo o fluxo OAuth será tratado pelo conector. Se nenhum token existir atualmente, ele será obtido solicitando ao usuário por meio do navegador. Se existir um token, ele será atualizado quando aplicável.
  3. REFRESH: Indica que o conector tratará apenas da atualização do OAuthAccessToken. O usuário nunca será solicitado pelo conector a autenticar por meio do navegador. O usuário deve manipular a obtenção do OAuthAccessToken e OAuthRefreshToken inicialmente.

OAuthClientId

O ID do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.

Tipo de Dados

string

Valor Padrão

""

Observações

Como parte do registro de um aplicativo OAuth, você receberá o OAuthClientId valor, às vezes também chamado de chave do consumidor e segredo do cliente, o OAuthClientSecret.

OAuthClientSecret

O segredo do cliente atribuído quando você registra seu aplicativo com um servidor de autorização OAuth.

Tipo de Dados

string

Valor Padrão

""

Observações

Como parte do registro de um aplicativo OAuth, você receberá o OAuthClientId, também chamada de chave do consumidor. Você também receberá um segredo do cliente, também chamado de segredo do consumidor. Defina o segredo do cliente no OAuthClientSecret propriedade.

OAuthAccessToken

O token de acesso para conexão usando OAuth.

Tipo de Dados

string

Valor Padrão

""

Observações

O OAuthAccessToken propriedade é usada para conectar usando OAuth. O OAuthAccessToken é recuperado do servidor OAuth como parte do processo de autenticação. Ele tem um tempo limite dependente do servidor e pode ser reutilizado entre as solicitações.

O token de acesso é usado no lugar do seu nome de usuário e senha. O token de acesso protege suas credenciais, mantendo-as no servidor.

URL de Retorno

O URL de retorno de chamada OAuth ao qual retornar durante a autenticação. Esse valor deve corresponder ao URL de retorno especificado nas configurações do aplicativo.

Tipo de Dados

string

Valor Padrão

""

Observações

Durante o processo de autenticação, o servidor de autorização OAuth redireciona o usuário para esta URL. Esse valor deve corresponder ao URL de retorno especificado nas configurações do aplicativo.

OAuthVerifier

O código do verificador retornado da URL de autorização OAuth.

Tipo de Dados

string

Valor Padrão

""

Observações

O código do verificador retornado da URL de autorização OAuth. Isso pode ser usado em sistemas em que um navegador não pode ser iniciado, como sistemas headless.

Autenticação em Máquinas Sem Cabeça

Consulte para obter o OAuthVerifier valor.

Defina OAuthSettingsLocation juntamente com OAuthVerifier. Quando você conecta, o conector troca o OAuthVerifier para os tokens de autenticação OAuth e os salva, criptografados, no arquivo especificado. Definir InitiateOAuth para GETANDREFRESH para automatizar a troca.

Depois que o arquivo de configurações OAuth for gerado, você poderá remover OAuthVerifier nas propriedades de conexão e conecte-se com OAuthSettingsLocation definir.

Para atualizar automaticamente os valores do token OAuth, defina OAuthSettingsLocation e adicionalmente defina InitiateOAuth para ATUALIZAR.

OAuthRefreshToken

O token de atualização OAuth para o token de acesso OAuth correspondente.

Tipo de Dados

string

Valor Padrão

""

Observações

O OAuthRefreshToken a propriedade é usada para atualizar o OAuthAccessToken ao usar a autenticação OAuth.

OAuthExpiresIn

O tempo de vida em segundos do OAuth AccessToken.

Tipo de Dados

string

Valor Padrão

""

Observações

Emparelhe com OAuthTokenTimestamp para determinar quando o AccessToken expirará.

OAuthTokenTimestamp

O registro de data e hora da época do Unix em milissegundos quando o token de acesso atual foi criado.

Tipo de Dados

string

Valor Padrão

""

Observações

Emparelhe com OAuthExpiresIn para determinar quando o AccessToken expirará.

JWT OAuth

Esta seção fornece uma lista completa das propriedades JWT OAuth que você pode configurar.

Propriedade Descrição
OAuthJWTCert A loja de certificados JWT.
OAuthJWTCertType O tipo de armazenamento de chaves que contém o certificado JWT.
OAuthJWTCertPassword A senha para o certificado OAuth JWT.
OAuthJWTCertSubject O assunto do certificado OAuth JWT.
OAuthJWTIssuer O emissor do Java Web Token.
OAuthJWTSubject O assunto do usuário para o qual o aplicativo está solicitando acesso delegado.

OAuthJWTCert

A loja de certificados JWT.

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do armazenamento de certificados para o certificado do cliente.

O OAuthJWTCertType campo especifica o tipo de armazenamento de certificado especificado por OAuthJWTCert. Se o armazenamento estiver protegido por senha, especifique a senha em OAuthJWTCertPassword.

OAuthJWTCert é usado em conjunto com o OAuthJWTCertSubject para especificar os certificados do cliente. Se OAuthJWTCert tem um valor e OAuthJWTCertSubject for definido, uma pesquisa por um certificado será iniciada. Consulte OAuthJWTCertSubject para obter detalhes.

As designações de armazenamentos de certificados dependem da plataforma.

A seguir estão as designações dos armazenamentos de certificados de Usuário e Máquina mais comuns no Windows:

Propriedade Descrição
MY Um armazenamento de certificados que contém certificados pessoais com suas chaves privadas associadas.
CA Certificados de autoridade certificadora.
ROOT Certificados raiz.
SPC Certificados de editor de software.

Em Java, o armazenamento de certificados normalmente é um arquivo contendo certificados e chaves privadas opcionais.

Quando o tipo de armazenamento de certificado for PFXFile, essa propriedade deverá ser configurada para o nome do arquivo. Quando o tipo é PFXBlob, a propriedade deve ser configurada para o conteúdo binário de um arquivo PFX (ou seja, armazenamento de certificados PKCS12).

OAuthJWTCertType

O tipo de armazenamento de chaves que contém o certificado JWT.

Valores Possíveis

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_FILE, SSHPUBLIC_KEY_BLOB, P7BFILE, PPKFILE, XMLFILE, XMLBLOB

Tipo de Dados

string

Valor Padrão

"USER"

Observações

Esta propriedade pode assumir um dos seguintes valores:

Propriedade Descrição
USER Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de certificados pertencente ao usuário atual. Nota: Este tipo de loja não está disponível em Java.
MACHINE Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de máquina. Nota: este tipo de loja não está disponível em Java.
PFXFILE O armazenamento de certificados é o nome de um arquivo PFX (PKCS12) que contém certificados.
PFXBLOB O armazenamento de certificados é uma string (codificada em base 64) que representa um armazenamento de certificados no formato PFX (PKCS12).
JKSFILE O armazenamento de certificados é o nome de um arquivo de armazenamento de chaves Java (JKS) que contém certificados. Nota: este tipo de loja só está disponível em Java.
JKSBLOB O armazenamento de certificados é uma sequência (codificada em base 64) que representa um armazenamento de certificados no formato Java key store (JKS). Nota: este tipo de loja só está disponível em Java.
PEMKEY_FILE O armazenamento de certificados é o nome de um arquivo codificado por PEM que contém uma chave privada e um certificado opcional.
PEMKEY_BLOB O armazenamento de certificados é uma string (codificada em base64) que contém uma chave privada e um certificado opcional.
PUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém um certificado de chave pública codificado por PEM ou DER.
PUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém um certificado de chave pública codificado em PEM ou DER.
SSHPUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém uma chave pública de estilo SSH.
SSHPUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém uma chave pública de estilo SSH.
P7BFILE O armazenamento de certificados é o nome de um arquivo PKCS7 contendo certificados.
PPKFILE O armazenamento de certificados é o nome de um arquivo que contém um PPK (PuTTY Private Key).
XMLFILE O armazenamento de certificados é o nome de um arquivo que contém um certificado no formato XML.
XMLBLOB O armazenamento de certificados é uma string que contém um certificado no formato XML.

OAuthJWTCertPassword

A senha para o certificado OAuth JWT.

Tipo de Dados

string

Valor Padrão

""

Observações

Se o armazenamento de certificados for de um tipo que requer uma senha, essa propriedade será usada para especificar essa senha para abrir o armazenamento de certificados.

OAuthJWTCertSubject

O assunto do certificado OAuth JWT.

Tipo de Dados

string

Valor Padrão

"\*"

Observações

Ao carregar um certificado, o assunto é usado para localizar o certificado na loja.

Se uma correspondência exata não for encontrada, a loja é pesquisada em busca de assuntos que contenham o valor da propriedade.

Se uma correspondência ainda não for encontrada, a propriedade será definida como uma string vazia e nenhum certificado será selecionado.

O valor especial "*" seleciona o primeiro certificado no armazenamento de certificados.

O assunto do certificado é uma lista separada por vírgulas de campos e valores de nomes distintos. Por exemplo, "CN=www.server.com, OU=test, C=US, E=support@cdata.com". Os campos comuns e seus significados são exibidos abaixo.

Campo Significado
CN Nome comum. Geralmente, é um nome de hospedar como www.server.com.
O Organização
OU Unidade Organizacional
L Localidade
S Estado
C País
E Endereço E-mail

Se um valor de campo contiver uma vírgula, ela deverá ser colocada entre aspas.

OAuthJWTIssuer

O emissor do Java Web Token.

Tipo de Dados

string

Valor Padrão

""

Observações

O emissor do Java Web Token. Normalmente, é o ID do cliente ou o endereço E-mail do aplicativo OAuth.

OAuthJWTSubject

O assunto do usuário para o qual o aplicativo está solicitando acesso delegado.

Tipo de Dados

string

Valor Padrão

""

Observações

O assunto do usuário para o qual o aplicativo está solicitando acesso delegado. Normalmente, o nome da conta do usuário ou endereço de e-mail.

SSL

Esta seção fornece uma lista completa de propriedades SSL que você pode configurar.

Propriedade Descrição
SSLClientCert O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).
SSLClientCertType O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.
SSLClientCertPassword A senha para o certificado de cliente TLS/SSL.
SSLClientCertSubject O assunto do certificado de cliente TLS/SSL.
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

SSLClientCert

O armazenamento de certificados de cliente TLS/SSL para autenticação de cliente SSL (SSL bidirecional).

Tipo de Dados

string

Valor Padrão

""

Observações

O nome do armazenamento de certificados para o certificado do cliente.

O SSLClientCertType campo especifica o tipo de armazenamento de certificado especificado por SSLClientCert. Se o armazenamento estiver protegido por senha, especifique a senha em SSLClientCertPassword.

SSLClientCert é usado em conjunto com o SSLClientCertSubject para especificar os certificados do cliente. Se SSLClientCert tem um valor e SSLClientCertSubject for definido, uma pesquisa por um certificado será iniciada. Consulte SSLClientCertSubject Para maiores informações.

As designações de armazenamentos de certificados dependem da plataforma.

A seguir estão as designações dos armazenamentos de certificados de Usuário e Máquina mais comuns no Windows:

Propriedade Descrição
MY Um armazenamento de certificados que contém certificados pessoais com suas chaves privadas associadas.
CA Certificados de autoridade certificadora.
ROOT Certificados raiz.
SPC Certificados de editor de software.

Em Java, o armazenamento de certificados normalmente é um arquivo contendo certificados e chaves privadas opcionais.

Quando o tipo de armazenamento de certificado for PFXFile, essa propriedade deverá ser configurada para o nome do arquivo. Quando o tipo é PFXBlob, a propriedade deve ser configurada para o conteúdo binário de um arquivo PFX (por exemplo, armazenamento de certificados PKCS12).

SSLClientCertType

O tipo de armazenamento de chaves que contém o certificado do cliente TLS/SSL.

Valores Possíveis

USER, MACHINE, PFXFILE, PFXBLOB, JKSFILE, JKSBLOB, PEMKEY_FILE, PEMKEY_BLOB, PUBLIC_KEY_FILE, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_FILE, SSHPUBLIC_KEY_BLOB, P7BFILE, PPKFILE, XMLFILE, XMLBLOB

Tipo de Dados

string

Valor Padrão

"USER"

Observações

Esta propriedade pode assumir um dos seguintes valores:

Propriedade Descrição
USER - default Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de certificados pertencente ao usuário atual. Observe que esse tipo de armazenamento não está disponível em Java.
MACHINE Para Windows, isso especifica que o armazenamento de certificados é um armazenamento de máquina. Observe que esse tipo de armazenamento não está disponível em Java.
PFXFILE O armazenamento de certificados é o nome de um arquivo PFX (PKCS12) que contém certificados.
PFXBLOB O armazenamento de certificados é uma string (codificada em base 64) que representa um armazenamento de certificados no formato PFX (PKCS12).
JKSFILE O armazenamento de certificados é o nome de um arquivo de armazenamento de chaves Java (JKS) que contém certificados. Observe que esse tipo de armazenamento está disponível apenas em Java.
JKSBLOB O armazenamento de certificados é uma string (codificada em base 64) que representa um armazenamento de certificados no formato JKS. Observe que esse tipo de armazenamento está disponível apenas em Java.
PEMKEY_FILE O armazenamento de certificados é o nome de um arquivo codificado por PEM que contém uma chave privada e um certificado opcional.
PEMKEY_BLOB O armazenamento de certificados é uma string (codificada em base64) que contém uma chave privada e um certificado opcional.
PUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém um certificado de chave pública codificado por PEM ou DER.
PUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém um certificado de chave pública codificado em PEM ou DER.
SSHPUBLIC_KEY_FILE O armazenamento de certificados é o nome de um arquivo que contém uma chave pública de estilo SSH.
SSHPUBLIC_KEY_BLOB O armazenamento de certificados é uma string (codificada em base 64) que contém uma chave pública de estilo SSH.
P7BFILE O armazenamento de certificados é o nome de um arquivo PKCS7 contendo certificados.
PPKFILE O armazenamento de certificados é o nome de um arquivo que contém uma chave privada PuTTY (PPK).
XMLFILE O armazenamento de certificados é o nome de um arquivo que contém um certificado no formato XML.
XMLBLOB O armazenamento de certificados é uma string que contém um certificado no formato XML.

SSLClientCertPassword

A senha para o certificado de cliente TLS/SSL.

Tipo de Dados

string

Valor Padrão

""

Observações

Se o armazenamento de certificados for de um tipo que requer uma senha, essa propriedade será usada para especificar essa senha para abrir o armazenamento de certificados.

SSLClientCertSubject

O assunto do certificado de cliente TLS/SSL.

Tipo de Dados

string

Valor Padrão

"\*"

Observações

Ao carregar um certificado, o assunto é usado para localizar o certificado na loja.

Se uma correspondência exata não for encontrada, a loja é pesquisada em busca de assuntos que contenham o valor da propriedade. Se uma correspondência ainda não for encontrada, a propriedade será definida como uma string vazia e nenhum certificado será selecionado.

O valor especial "*" seleciona o primeiro certificado no armazenamento de certificados.

O assunto do certificado é uma lista separada por vírgulas de campos e valores de nomes distintos. Por exemplo, "CN=www.server.com, OU=test, C=US, E=support@company.com". Os campos comuns e seus significados são mostrados abaixo.

Campo Significado
CN Nome comum. Geralmente, é um nome de hospedar como www.server.com.
O Organização
OU Unidade Organizacional
L Localidade
S Estado
C País
E Endereço E-mail

Se um valor de campo contiver uma vírgula, ela deverá ser colocada entre aspas.

SSLServerCert

O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

Tipo de Dados

string

Valor Padrão

""

Observações

Se estiver usando uma conexão TLS/SSL, esta propriedade pode ser usada para especificar o certificado TLS/SSL a ser aceito do servidor. Qualquer outro certificado que não seja confiável para a máquina é rejeitado.

Esta propriedade pode assumir as seguintes formas:

Descrição Exemplo
Um certificado PEM completo (exemplo abreviado para concisão) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
Um caminho para um arquivo local contendo o certificado C:\cert.cer
A chave pública (exemplo abreviado para concisão) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
O Thumbprint MD5 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) ecadbdda5a1529c58a1e9e09828d70e4
A impressão digital SHA1 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Se não for especificado, qualquer certificado confiável pela máquina será aceito.

Os certificados são validados como confiáveis pela máquina com base no armazenamento confiável do sistema. O armazenamento confiável usado é o valor 'javax.net.ssl.trustStore' especificado para o sistema. Se nenhum valor for especificado para esta propriedade, o armazenamento confiável padrão do Java será usado (por exemplo, JAVA_HOME\lib\security\cacerts).

Use '*' para indicar a aceitação de todos os certificados. Observe que isso não é recomendado devido a questões de segurança.

Esquema

Esta seção fornece uma lista completa de propriedades de esquema que você pode configurar.

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as exibições relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.
Catalog O catálogo do Analysis Services a ser usado. Isso também pode ser conhecido como um banco de dados no Analysis Services.
IncludeJoinColumns Defina como true para incluir colunas de junção extras em cada tabela.

Localização

Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.

Tipo de Dados

string

Valor Padrão

"%APPDATA%\\\AAS Data Provider\\Schema"

Observações

O caminho para um diretório que contém os arquivos de esquema para o conector (arquivos .rsd para tabelas e exibições, arquivos .rsb para procedimentos armazenados). A localização da pasta pode ser um caminho relativo a partir da localização do executável. O Location a propriedade só é necessária se você quiser personalizar definições (por exemplo, alterar um nome de coluna, ignorar uma coluna e assim por diante) ou estender o modelo de dados com novas tabelas, exibições ou procedimentos armazenados.

Se não for especificado, o local padrão é "%APPDATA%\\AAS Data Provider\Schema" com %APPDATA% sendo definido para o diretório de configuração do usuário:

Plataforma %APPDATA%
Windows O valor da variável de ambiente APPDATA
Mac ~/Biblioteca/Suporte de aplicativos
Linux ~/.config

Esquemas Navegáveis

Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar os esquemas de bancos de dados pode ser caro. Fornecer uma lista de esquemas na string de conexão melhora o desempenho.

Tabelas

Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tabelas=TabelaA,TabelaB,TabelaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as tabelas de alguns bancos de dados pode ser caro. Fornecer uma lista de tabelas na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitos para trabalhar.

Especifique as tabelas que deseja em uma lista separada por vírgulas. Cada tabela deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Visualizações

Restringe as exibições relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA,ViewB,ViewC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as exibições de alguns bancos de dados pode ser caro. Fornecer uma lista de exibições na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitos para trabalhar.

Especifique as exibições desejadas em uma lista separada por vírgulas. Cada exibição deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Catálogo

O catálogo do Analysis Services a ser usado. Isso também pode ser conhecido como um banco de dados no Analysis Services.

Tipo de Dados

string

Valor Padrão

""

Observações

Esta entrada é opcional, pois os catálogos serão exibidos por padrão. No entanto, se você tiver UseMDX definido como true, esse valor garantirá que as consultas MDX sejam enviadas ao catálogo correto.

IncludeJoinColumns

Defina como true para incluir colunas de junção extras em cada tabela.

Tipo de Dados

bool

Valor Padrão

false

Observações

Algumas ferramentas podem exigir uma condição ON (ou gerá-las automaticamente) com base em referências de chaves estrangeiras. Definindo IncludeJoinColumns para verdadeiro, toda tabela incluirá uma referência de chave estrangeira para as outras tabelas. Essas colunas não retornarão nenhum dado e não são úteis para nada além de passar como condições ON para realizar junções.

No Azure Analysis Services, as dimensões e medidas que compõem as tabelas já se relacionam naturalmente. Não há nenhum contexto para uni-los. Portanto, o Conector Jitterbit para Azure Analysis Services dá suporte à associação sem especificar uma condição ON, portanto, é opcional especificá-los.

Diversos

Esta seção fornece uma lista completa de diversas propriedades que você pode configurar.

Propriedade Descrição
CustomHeaders Outros cabeçalhos conforme determinado pelo usuário (opcional).
ExpressionInDescription Defina como true para relatar expressões como parte da descrição nas colunas de medida.
ExtraProperties Propriedades adicionais a serem enviadas em cada solicitação MDX ao Azure Analysis Services.
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
ResponseRowLimit O número de linhas de resposta a serem permitidas antes do erro. Defina como 0 por enquanto limite.
ShowHiddenEntities Defina como verdadeiro para incluir dimensões, medidas e níveis ocultos.
SplitMeasures Defina como true para dividir a tabela de medidas em tabelas individuais.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseMDX Defina como true para passar consultas MDX para o Azure Analysis Services como está.
UserDefinedViews Um caminho de arquivo apontando para o arquivo de configuração JSON que contém suas exibições personalizadas.

CustomHeaders

Outros cabeçalhos conforme determinado pelo usuário (opcional).

Tipo de Dados

string

Valor Padrão

""

Observações

Essa propriedade pode ser definida como uma sequência de cabeçalhos a serem anexados aos cabeçalhos de solicitação HTTP criados a partir de outras propriedades, como ContentType, From e assim por diante.

Os cabeçalhos devem estar no formato "cabeçalho: valor" conforme descrito nas especificações do HTTP. As linhas de cabeçalho devem ser separadas pelos caracteres de retorno de carro e alimentação de linha (CRLF).

Use esta propriedade com cuidado. Se esta propriedade contiver cabeçalhos inválidos, as solicitações HTTP poderão falhar.

Essa propriedade é útil para ajustar a funcionalidade do conector para integração com APIs especializadas ou fora do padrão.

ExpressãoNaDescrição

Defina como true para relatar expressões como parte da descrição nas colunas de medida.

Tipo de Dados

bool

Valor Padrão

false

Observações

O conector relata as observações para vários tipos de entidades (dimensões, medidas, grupos de medidas e hierarquias) como descrições de tabela e coluna. Por padrão, o conector incluirá apenas as observações nas descrições das colunas de medida.

Se esta opção estiver habilitada, a expressão da medida será incluída na descrição da coluna da medida, juntamente com os comentários. As descrições em outros tipos de entidades não são afetadas.

Propriedades Extras

Propriedades adicionais a serem enviadas em cada solicitação MDX ao Azure Analysis Services.

Tipo de Dados

string

Valor Padrão

""

Observações

Ao definir UseMDX como true, as propriedades podem ser especificadas usando essa propriedade de conexão para preencher valores extras na PropertiesList da solicitação XMLA. Use pares nome=valor separados por ponto e vírgula para enviar as propriedades. Por exemplo, Catalog=MyCatalog;Cube=MyCube;.

Uma lista de propriedades pode ser encontrada executando SELECT * FROM $System.DISCOVER_PROPERTIES.

MaxRows

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

Tipo de Dados

int

Valor Padrão

-1

Observações

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

Outro

Essas propriedades ocultas são usadas apenas em casos de uso específicos.

Tipo de Dados

string

Valor Padrão

""

Observações

As propriedades listadas abaixo estão disponíveis para casos de uso específicos. Os casos de uso e a funcionalidade normais do driver não devem exigir essas propriedades.

Especifique várias propriedades em uma lista separada por ponto e vírgula.

Integração e Formatação
Propriedade Descrição
DefaultColumnSize Define o comprimento padrão dos campos de string quando a fonte de dados não fornece o comprimento da coluna nos metadados. O valor padrão é 2000. Voltar para o início
ConvertDateTimeToGMT Determina se os valores de data e hora devem ser convertidos em GMT, em vez da hora local da máquina.
RecordToFile=filename Registra a transferência de dados do soquete subjacente para o arquivo especificado.

ResponseRowLimit

O número de linhas de resposta a serem permitidas antes do erro. Defina como 0 por enquanto limite.

Tipo de Dados

int

Valor Padrão

100000

Observações

A seleção de muitas colunas resulta em várias junções cruzadas ocorrendo sob o capô quando traduzidas para algo aceitável para o Azure Analysis Services. Isso não é intuitivo se você não estiver familiarizado com o MDX. Isso pode facilmente resultar em respostas muito grandes que expiram. O ResponseRowLimit é projetado para tentar alertar o usuário para entender quais solicitações podem ser muito caras.

MostrarEntidades Ocultas

Defina como verdadeiro para incluir dimensões, medidas e níveis ocultos.

Tipo de Dados

bool

Valor Padrão

false

Observações

Por padrão, o conector não relata entidades que o Azure Analysis Services marca como ocultas. Habilitar esta opção permite que você os consultar.

SplitMeasures

Defina como true para dividir a tabela de medidas em tabelas individuais.

Tipo de Dados

bool

Valor Padrão

false

Observações

Todas as medidas estão atualmente agrupadas em uma única tabela 'Medidas'. Defina como true para dividir a tabela de medidas em tabelas individuais (se uma tabela contiver apenas medidas) e incluir medidas nas respectivas tabelas de dimensões.

Tempo Esgotado

O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.

Tipo de Dados

int

Valor Padrão

60

Observações

Se Timeout = 0, as operações não expiram. As operações são executadas até serem concluídas com êxito ou até encontrarem uma condição de erro.

Se Timeout expira e a operação ainda não está concluída, o conector lança uma exceção.

Usar MDX

Defina como true para passar consultas MDX para o Azure Analysis Services como está.

Tipo de Dados

bool

Valor Padrão

false

Observações

Você pode executar consultas SQL-92 SELECT para as exibições modeladas pelo conector; defina essa propriedade para executar consultas MDX diretamente no Azure Analysis Services.

Consulte Recuperando Dados do Analysis Services para obter mais informações sobre como consultar o Azure Analysis Services por meio do conector.

Visualizações Definidas pelo Usuário

Um caminho de arquivo apontando para o arquivo de configuração JSON que contém suas exibições personalizadas.

Tipo de Dados

string

Valor Padrão

""

Observações

As visualizações definidas pelo usuário são definidas em um arquivo de configuração formatado em JSON chamado UserDefinedViews.json. O conector detecta automaticamente as visualizações especificadas neste arquivo.

Você também pode ter várias definições de exibição e controlá-las usando o UserDefinedViews propriedade de conexão. Quando você usa essa propriedade, apenas as exibições especificadas são vistas pelo conector.

Este arquivo de configuração de exibição definida pelo usuário é formatado da seguinte forma:

  • Cada elemento raiz define o nome de uma exibição.
  • Cada elemento raiz contém um elemento filho, chamado query, que contém a consultar SQL personalizada para a exibição.

Por exemplo:

{
    "MyView": {
        "query": "SELECT * FROM [adventureworks].[Model].Customer WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Use o UserDefinedViews propriedade de conexão para especificar a localização do seu arquivo de configuração JSON. Por exemplo:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"