Partilhar via


Serviços de mineração de dados e fontes de dados

Aplica-se a: SQL Server 2019 e anteriores do Analysis Services Azure Analysis Services Fabric/Power BI Premium

Importante

A mineração de dados foi preterida no SQL Server 2017 Analysis Services e agora foi descontinuada no SQL Server 2022 Analysis Services. A documentação não foi atualizada para recursos preteridos e descontinuados. Para saber mais, confira Compatibilidade com versões anteriores do Analysis Services.

A mineração de dados requer uma conexão com uma instância do SQL Server Analysis Services. Os dados de um cubo não são necessários para mineração de dados e o uso de fontes relacionais é recomendado; no entanto, a mineração de dados usa componentes fornecidos pelo mecanismo de SQL Server Analysis Services.

Este tópico fornece informações que você precisa saber ao se conectar a uma instância de SQL Server SQL Server Analysis Services para criar, processar, implantar ou consultar modelos de mineração de dados.

Serviços de mineração de dados

O componente de servidor do Microsoft SQL Server SQL Server Analysis Services é o aplicativo msmdsrv.exe, que normalmente é executado como um serviço windows. Esse aplicativo consiste em componentes de segurança, um componente de ouvinte do XML for Analysis (XMLA), um componente de processador de consulta e vários outros componentes internos que executam as seguintes funções:

  • Análise de instruções recebidas dos clientes

  • Gerenciamento de metadados

  • Tratamento de transações

  • Processamento de cálculos

  • Armazenagem de dimensões e dados de célula

  • Criação de agregações

  • Programação de consultas

  • Cache de objetos

  • Gerenciamento de recursos do servidor

Ouvinte XMLA

O componente ouvinte XMLA lida com todas as comunicações XMLA entre SQL Server Analysis Services e seus clientes. A configuração de porta SQL Server Analysis Services no arquivo msmdsrv.ini pode ser usada para especificar uma porta na qual uma instância de SQL Server Analysis Services escuta. Um valor 0 neste arquivo indica que SQL Server Analysis Services escutar na porta padrão. A menos que seja especificado de outra forma, SQL Server Analysis Services usa as seguintes portas TCP padrão:

Porta Descrição
2383 Instância padrão do SQL Server SQL Server Analysis Services.
2382 Redirecionador para outras instâncias de SQL Server SQL Server Analysis Services.
Atribuído dinamicamente na inicialização do servidor Instância nomeada de SQL Server SQL Server Analysis Services.

Para obter mais informações sobre como controlar as portas usadas por esse serviço, consulte Configurar o Firewall do Windows para permitir o acesso ao Analysis Services.

Conectando-se a fontes de dados

Sempre que você criar ou atualizar uma estrutura ou um modelo de mineração de dados, use os dados definidos por uma fonte de dados. A fonte de dados não contém os dados, que podem incluir pastas de trabalho do Excel, arquivos de texto e bancos de dados do SQL Server; ela somente define as informações de conexão. Uma exibição da fonte de dados (DSV) serve como uma camada de abstração dessa fonte, modificando ou mapeando os dados que são obtidos da fonte.

Está além do escopo deste tópico descrever os requisitos de conexão para cada uma destas fontes. Para obter mais informações, consulte a documentação do provedor. No entanto, em geral você deveria estar atento aos seguintes requisitos do Analysis Services ao interagir com provedores:

  • Como a mineração de dados é um serviço fornecido por um servidor, a instância SQL Server Analysis Services deve ter acesso à fonte de dados. Há dois aspectos para acessar: local e identidade.

    Local significa que, se você criar um modelo usando dados que estão armazenados somente em seu computador e, em seguida, implantar o modelo em um servidor, o modelo não será processado porque a fonte de dados não poderá ser localizada. Para resolve esse problema, talvez seja necessário transferir dados para a mesma instância SQL Server em que SQL Server Analysis Services está em execução ou mover arquivos para um local compartilhado.

    A identidade significa que os serviços no SQL Server Analysis Services devem ser capazes de abrir o arquivo de dados ou a fonte de dados com as credenciais apropriadas. Por exemplo, quando você criou o modelo, pode ter tido permissões ilimitadas para exibir os dados, mas o usuário que está processando e atualizando os modelos no servidor pode ter acesso limitado ou nenhum aos dados, o que pode causar falha ao processar ou afetar o conteúdo de um modelo. No mínimo, a conta usada para conectar-se à fonte de dados remotos deve ter permissões de leitura dos dados.

  • Quando você move um modelo, os mesmos requisitos se aplicam: você deve configurar o acesso apropriado ao local da fonte de dados antiga, copiar as fontes de dados ou configurar uma nova fonte de dados. Além disso, você deve transferir logons e funções ou configurar permissões para permitir que os objetos de mineração de dados sejam processados e atualizados no novo local.

Configurando permissões e propriedades do servidor

A mineração de dados requer permissões adicionais em um banco de dados SQL Server Analysis Services. A maioria das propriedades de mineração de dados pode ser definida usando a caixa de diálogo Propriedades do Analysis Server (Analysis Services).

Para obter mais informações sobre as propriedades que você pode configurar, consulte Propriedades do servidor no Analysis Services.

As seguintes propriedades de servidor são de relevância específica para a mineração de dados:

  • AllowAdHocOpenRowsetQueries Controla o acesso ad hoc a provedores OLE DB, que são carregados diretamente no espaço de memória do servidor.

    Importante

    Para melhorar a segurança, é recomendável definir esta propriedade como false. O valor padrão é false. No entanto, ainda que esta propriedade seja definida como false, os usuários podem continuar criando consultas singleton e usar OPENQUERY em fontes de dados permitidas.

  • AllowedProvidersInOpenRowset Especificará o provedor se ad hoc acesso estiver habilitado. Para especificar vários provedores, digite uma lista de ProgIDs separados por vírgula.

  • MaxConcurrentPredictionQueries Controla a carga no servidor gerada por previsões. O valor padrão de 0 permite consultas ilimitadas para SQL Server Enterprise e um máximo de cinco consultas simultâneas para SQL Server Standard. As consultas que ultrapassam o limite são serializadas e podem expirar.

O servidor oferece outras propriedades que controlam quais algoritmos de mineração de dados ficam disponíveis, inclusive todas as restrições sobre algoritmos, e os padrões para serviços de mineração de dados. Porém, não há configurações que permitem controlar especificamente o acesso a procedimentos armazenados de mineração de dados. Para obter mais informações, consulte Propriedades de Data Mining.

Também é possível definir propriedades que permitem ajustar o servidor e controlar a segurança para uso de cliente. Para obter mais informações, consulte Propriedades do Recurso.

Observação

Para obter mais informações sobre o Suporte para algoritmos de plug-in pelas edições do SQL Server, consulte Recursos compatíveis com as edições do SQL Server 2012 (https://go.microsoft.com/fwlink/?linkid=232473).

Acesso programático a objetos de mineração de dados

Você pode usar os seguintes modelos de objeto para criar uma conexão com um banco de dados do Analysis Services e trabalhar com objetos de mineração de dados:

ADO Usa OLE DB para se conectar a um servidor do Analysis Services. Quando você usa ADO, o cliente fica limitado a consultas de conjunto de linhas de esquema e instruções DMX.

ADO.NET Interage com provedores SQL Server melhor do que outros provedores. Usa adaptadores de dados para armazenar conjuntos de linhas dinâmicos. Usa o objeto de conjunto de dados, que consiste em um cache dos dados de servidor armazenados como tabelas de dados que podem ser atualizadas e salvas como XML.

ADOMD.NET Um provedor de dados gerenciado que é otimizado para funcionar com mineração de dados e OLAP. O ADOMD.NET é mais rápido e faz uso mais eficiente da memória do que o ADO.NET. O ADOMD.NET também permite recuperar metadados sobre objetos de servidor. Recomendado para aplicativos cliente, exceto quando .NET não está disponível.

ADOMD de servidor Modelo de objeto usado para acessar objetos do Analysis Services diretamente no servidor. É utilizado por procedimentos armazenados do Analysis Services; não indicado para uso de cliente.

AMO Interface de gerenciamento para o Analysis Services que substitui o DSO (Decision Support Objects). Quando se usa o AMO, operações como iteração de objetos requerem permissões mais elevadas do que as necessárias para utilizar outras interfaces. Isso ocorre porque o AMO acessa metadados diretamente, enquanto o ADOMD.NET e outras interfaces acessam apenas os esquemas de banco de dados.

Navegue e consulte o acesso a servidores

Você pode executar todos os tipos de previsões usando uma instância do Analysis Services no OLAP/Mineração de Dados, com as restrições a seguir:

  • Se você usar ADOMD de servidor, poderá usar DMX para acessar o servidor sem fazer uma conexão. Você pode copiar os resultados diretamente para uma tabela de dados. No entanto, você não pode usar ADOMD de servidor com instâncias remotas; só é possível consultar o servidor local.

  • O ADO.NET não dá suporte a parâmetros nomeados para mineração de dados. Você deve usar ADOMD.NET.

  • O ADOMD.NET permite passar uma tabela inteira a ser usada como parâmetro; por isso você pode usar dados no cliente ou dados que estão indisponíveis para o servidor. Também é possível utilizar tabelas amoldadas como entrada de previsão.

Usando procedimentos armazenados de mineração de dados

Um uso comum de procedimentos armazenados é o encapsulamento de consultas para reutilização. O cliente pode usar CALL para executar procedimentos armazenados, incluindo SQL Server Analysis Services procedimentos armazenados do sistema.

Se o procedimento retornar um conjunto de dados, o cliente receberá um conjunto de dados ou uma tabela de dados com uma tabela aninhada contendo as linhas. Por exemplo, se você criar uma consulta baseada no conteúdo de modelo, a consulta retornará o modelo inteiro. Para evitar que sejam retornadas muitas linhas, você pode gravar procedimentos armazenados usando o modelo de objeto ADOMD+.

Para gravar um procedimento armazenado de servidor, você deve fazer referência ao namespace Microsoft.AnalysisServices.AdomdServer. Para obter mais informações sobre como criar e usar procedimentos armazenados, consulte Funções e procedimentos armazenados definidos pelo usuário.

Observação

Os procedimentos armazenados não podem ser usados para alterar a segurança em objetos de servidor de dados. Quando você executa um procedimento armazenado, o contexto atual do usuário é usado para determinar o acesso a todos os objetos de servidor. Portanto, os usuários devem ter as permissões apropriadas em qualquer objeto de banco de dados que eles acessam.

Consulte Também

Arquitetura física (Analysis Services – Dados Multidimensionais)
Arquitetura física (Analysis Services – Mineração de Dados)
Gerenciamento de soluções de mineração de dados e objetos