Share via


Importar do Azure Cosmos DB

Importante

O suporte para o Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. É recomendável fazer a transição para o Azure Machine Learning até essa data.

A partir de 1º de dezembro de 2021, você não poderá criar recursos do Machine Learning Studio (clássico). Até 31 de agosto de 2024, você pode continuar usando os recursos existentes do Machine Learning Studio (clássico).

A documentação do ML Studio (clássico) está sendo desativada e pode não ser atualizada no futuro.

este artigo descreve como usar o módulo importar dados no Machine Learning Studio (clássico) para importar dados do Azure Cosmos DB para uso em um experimento do Machine Learning.

Observação

aplica-se a: somente Machine Learning Studio (clássico)

Módulos semelhantes do tipo "arrastar e soltar" estão disponíveis no designer do Azure Machine Learning.

o Azure Cosmos DB dá suporte ao armazenamento de banco de dados NoSQL usando um modelo de dado flexível. as vantagens de usar as APIs de SQL neste armazenamento de dados para o machine learning incluem desempenho rápido e previsível, dimensionamento automático, distribuição global e recursos de consulta avançada.

junto com Banco de Dados SQL do Azure, essa opção permite filtrar dinamicamente os conjuntos de os de entrada.

saiba como funciona: saiba mais sobre Azure Cosmos DB

  • para começar a usar o machine learning usando dados do Azure Cosmos DB, você deve ter acesso a uma conta existente do Azure Cosmos DB que contém uma coleção de documentos relacionados.

Observação

a interface do usuário no Machine Learning Studio (clássico) ainda usa o nome DocumentDB em muitos lugares. portanto, você pode continuar a ver referências ao DocumentDB, embora a API tenha sido incorporada em Azure Cosmos DB.

como usar importar dados com Azure Cosmos DB

É altamente recomendável que você crie o perfil de seus dados antes de importar, para certificar-se de que o esquema está conforme o esperado. O processo de importação examina um número de linhas de cabeçalho para determinar o esquema, mas as linhas posteriores podem conter colunas extras ou dados que causam erros.

Importar dados usando o assistente

O módulo apresenta um novo assistente para ajudá-lo a escolher uma opção de armazenamento, selecionar entre assinaturas e contas existentes e configurar rapidamente todas as opções.

  1. Adicione o módulo importar dados ao seu experimento. Você pode encontrar o módulo em entrada e saída de dados.

  2. Clique em Iniciar assistente de importação de dados e siga os prompts.

  3. Quando a configuração estiver concluída, para realmente copiar os dados em seu experimento, clique com o botão direito do mouse no módulo e selecione executar selecionado.

Dica

Se você precisar editar uma conexão de dados existente, o assistente carregará todos os detalhes de configuração anteriores. Você não precisa iniciar novamente do zero.

Definir manualmente as propriedades no módulo importar dados

As etapas a seguir descrevem como configurar manualmente a origem da importação.

  1. Adicione o módulo importar dados ao seu experimento. Você pode encontrar esse módulo na categoria entrada e saída de dados .

  2. Para fonte de dados, selecione Azure DocumentDB.

    Talvez seja necessário fornecer informações de conexão para o banco de dados de documentos.

    Dica

    procure o nome da opção no Machine Learning Studio (clássico) para alterar em uma data posterior. A funcionalidade de importação não foi afetada pela alteração de nome.

  3. Para URL de ponto de extremidade, no portal do Azure, clique em chavese copie o conteúdo do campo URI na parte superior da página.

  4. Para ID do banco de dados, Cole o nome do banco de dados a ser usado.

    Para obter o nome do banco de dados no portal do Azure, clique em Gerenciador de documentos. Você pode exibir a lista de bancos de dados e coleções neste painel.

  5. Para a chave do DocumentDB, Cole uma chave de acesso para a conta.

    Para localizar as chaves, clique em chavese, em seguida, copie o conteúdo dos campos chave primária ou chave secundária .

  6. Para ID da coleção, digite o nome da coleção, conforme mostrado no banco de dados CosmosDB especificado.

  7. defina uma SQL de consulta e de filtro nos dados, usando a consulta SQL e SQL opções de parâmetros de consulta .

    para SQL consulta, digite uma consulta que defina os dados a serem recuperados da coleção. Recomendamos que você use o Gerenciador de consultas para criar e testar suas consultas CosmosDB com antecedência.

    para SQL parâmetros de consulta, forneça uma expressão no formato JSON que possa ser usada para filtrar dinamicamente os dados retornados. Normalmente, você fornece o valor real do valor do parâmetro ao executar o experimento como parte de um serviço Web.

    se você usar um parâmetro, deverá definir o nome da variável de filtro como parte da cláusula where especificada na caixa de texto SQL consulta .

    Se você não especificar uma expressão de filtro, por padrão, o valor será definido como " {} ", e todos os registros serão retornados.

    consulte a seção notas técnicas para obter exemplos, problemas conhecidos e conselhos adicionais sobre SQL consultas sobre o CosmosDB.

  8. Selecione a opção usar resultados em cache se você quiser reutilizar os resultados existentes.

    Se você desmarcar essa opção, os dados serão lidos da origem cada vez que o experimento for executado, independentemente de os dados serem ou não iguais.

    Machine Learning não pode comparar os dados armazenados em cache com os dados em sua conta do CosmosDB. Portanto, não há como executar atualizações incrementais de Machine Learning.

    Se desejar importar novamente somente quando os dados forem alterados, você deverá definir essa lógica em outro aplicativo, como Azure Data Factory. para obter mais informações, consulte mover dados de e para Azure Cosmos DB usando Azure Data Factory.

  9. Execute o experimento ou selecione apenas o módulo importar dados e clique em executar selecionado.

Resultados

Depois de executar o módulo ou experimento, você pode clicar com o botão direito do mouse na saída do módulo para visualizar os resultados em formato tabular.

para capturar um instantâneo desses dados em seu espaço de trabalho do Machine Learning como um dataset, você pode clicar com o botão direito do mouse na saída do módulo e selecionar salvar como conjuntode dados. No entanto, isso captura apenas os dados disponíveis no momento da importação. Se for esperado que os dados sejam alterados com frequência, execute a importação de dados novamente conforme necessário.

Exemplos

para obter uma explicação detalhada de como usar Azure Cosmos DB como uma fonte de dados para aprendizado de máquina, consulte a Galeria de IA do Azure.

Observações técnicas

Esta seção contém opções de configuração avançadas e respostas para perguntas frequentes.

Exemplos de consultas simples e parametrizadas

Suponha que você deseja usar apenas os dados em Volcanoes com elevações abaixo de 10000 pés.

Consulta simples

cole a seguinte consulta na caixa de texto SQL consulta :Select * from volcanodb where volcanodb.Elevation < 10000

Nesse caso, o valor da expressão de filtro é definido como " {} ", e todos os registros são retornados.

Consulta parametrizada

Para obter apenas os dados de vulcão relacionados a um país específico, você pode especificar o valor do país como um parâmetro passado para a consulta em tempo de execução. Isso requer estas alterações:

  1. na caixa de texto SQL consulta , defina uma variável a ser aplicada ao Country campo como parte da consulta SQL:

    Select * from volcanodb where volcanodb.Country = @param1

  2. na caixa de texto SQL parâmetros de consulta , especifique o nome do parâmetro e seu valor no formato JSON, desta forma:

    {"@param1":"Turkey"}

Recursos

Se você não tiver um repositório de documentos existente, consulte estes artigos para começar.

Ajuda de migração de dados e sintaxe de consulta

para obter exemplos de consultas em um armazenamento de dados JSON, baixe a folha de consulta de Azure Cosmos DB consultas.

se você precisar carregar conteúdo em Azure Cosmos DB, recomendamos a ferramenta de migração de Azure Cosmos DB. Ele valida, carrega e indexa seus dados. a ferramenta dá suporte a várias fontes, incluindo MongoDB, Amazon DynamoDB, HBase, bancos de dados SQL Server e arquivos CSV.

Usando consultas sem esquema

se os dados forem consistentes e previsíveis, você poderá usar uma sintaxe SQL simples, SELECT * FROM <document collection> como. Isso é chamado de consulta sem esquema porque você não nomeou os atributos exatos a serem retornados. Tal consulta retornaria todos os campos e todas as linhas da coleção especificada.

No entanto, não especificar um esquema pode levar a resultados inesperados ou a um erro de tempo de executar se os documentos têm esquemas inconsistentes. Isso porque o módulo Importar Dados tenta inferir o esquema com base em um número predeterminado de linhas da seguinte forma:

  1. Quando nenhum atributos é especificado, o módulo examina a primeira linha no banco de dados CosmosDB.
  2. O módulo cria nomes de coluna com base em atributos e adivinha quais tipos de dados de coluna devem ser baseados na linha de exemplo.
  3. Se as linhas posteriores contêm atributos novos ou diferentes, um erro em tempo de run time é gerado.

Portanto, recomendamos que você sempre especifique os atributos e valores a retornar do armazenamento de dados do CosmosDB. Por exemplo, em vez de usar a SELECT * sintaxe , recomendamos que você nomee todos os atributos recuperados pela consulta, desta forma:

SELECT MyTable.Gender, MyTable.Age, MyTable.Name FROM <document collection>

Parâmetros do módulo

A tabela a seguir inclui apenas os parâmetros para o módulo Importar Dados que são aplicáveis à opção Azure Cosmos DB.

Nome Intervalo Type Obrigatório Padrão Descrição
Fonte de dados lista HTTP exigido nenhum A fonte de dados pode ser HTTP, FTP, HTTPS anônimo ou FTPS, um arquivo no armazenamento de BLOB do Azure, uma tabela do Azure, um Banco de Dados SQL do Azure, uma tabela do Hive, um ponto de extremidade OData ou o Azure Cosmos dB.
URL do Ponto de Extremidade any string exigido nenhum Forneça o URI para o servidor de banco de dados Cosmos Azure
ID do banco de dados any string exigido nenhum Forneça o nome do banco de dados Cosmos banco de dados do Azure
Chave do DocumentDB any SecureString exigido nenhum Fornecer uma chave de API válida para a conta do banco de dados Cosmos Azure
ID da coleção any string exigido nenhum Forneça o nome de uma coleção no banco de dados do banco de dados Cosmos banco de dados do Azure
Consulta SQL any string exigido nenhum Uma SQL que especifica os registros a retornar do armazenamento de dados Cosmos banco de dados do Azure

Saídas

Nome Tipo Descrição
Conjunto de dados de resultados Tabela de Dados Conjunto de dados com dados baixados

Exceções

Exceção Descrição
Erro 0003 Ocorrerá uma exceção se uma ou mais das entradas forem nulas ou estiverem vazias.
Erro 0029 Ocorrerá uma exceção quando um URI inválido for passado.
Erro 0002 Ocorrerá uma exceção se um ou mais parâmetros não puderem ser analisados ou convertidos do tipo especificado para o tipo exigido pelo método de destino.
Erro 0048 Uma exceção ocorre quando não for possível abrir um arquivo.
Erro 0049 Uma exceção ocorre quando não for possível analisar um arquivo.

Para ver uma lista de erros específicos dos módulos do Studio (clássico), consulte Machine Learning Códigos de erro.

Para ver uma lista de exceções de API, consulte Machine Learning códigos de erro da API REST.

Confira também

Importar dados
Exportar dados
Importar da URL da Web via HTTP
Importar da consulta do Hive
Importar do Banco de Dados SQL do Azure
Importar do Armazenamento de Blobs do Azure
Importar de provedores de feed de dados
Importar de um Banco de dados do SQL Server local