Compartilhar via


Configurar o Azure Data Lake Storage

Este artigo mostra como configurar sua conta do Azure Data Lake Storage para trabalhar com o Recomendações Inteligentes.

Para conceder ao Recomendações Inteligentes acesso à sua conta do Data Lake Storage, primeiro navegue até a conta e, em seguida, defina as permissões de acesso.

Configurar um contêiner, uma pasta raiz e uma pasta de logs

Para selecionar o contêiner e as pastas que Recomendações Inteligentes usa:

  1. Entre no portal do Azure e selecione a seção Armazenamento.

  2. Escolha a assinatura e a conta de armazenamento que sua empresa usa para compartilhar dados com Recomendações Inteligentes e selecione Contêineres.

    Assinatura e tipo de conta a serem usadas para integrar o Recomendações Inteligentes.

  3. Crie ou escolha um contêiner existente e, em seguida, crie ou selecione uma pasta raiz.

    Observação

    Os nomes das pastas raiz e de logs e dos contêineres não afetarão o serviço, mas devem corresponder ao fornecer os caminhos durante a configuração da conta do Recomendações Inteligentes. No exemplo, observe que estamos usando ircontainer como o nome do contêiner, ir_root como o nome da pasta raiz e ir_logs como o nome da pasta de logs.

    Crie um contêiner, uma pasta raiz e uma pasta de logs para o Recomendações Inteligentes.

  4. Verifique os nomes e a estrutura das subpastas na pasta ir_root. Verifique os nomes e a estrutura da pasta raiz do Recomendações Inteligentes.

Configurar a segurança para o contêiner

Para configurar a segurança para seu contêiner, você deverá conceder acesso ao Recomendações Inteligentes para leitura/gravação de dados usando identidades gerenciadas atribuídas pelo sistema ou atribuídas pelo usuário. Para saber mais sobre quais tipos de identidades gerenciadas estão disponíveis e qual funciona para o seu cenário de negócios, consulte o Guia de tipos de identidade gerenciada

As identidades gerenciadas podem ser configuradas de duas maneiras:

  1. Identidade Atribuída pelo Sistema - uma identidade gerenciada atribuída pelo sistema é restrita a uma por recurso e está vinculada ao ciclo de vida desse recurso.
  2. Identidade atribuída pelo usuário - as identidades gerenciadas atribuídas pelo usuário permitem que os recursos do Azure se autentiquem em serviços de nuvem (por exemplo, Azure Key Vault) sem armazenar credenciais no código.

Antes de continuar, verifique se você tem sua ID da assinatura e Conta de armazenamento que sua empresa usará para compartilhar dados com o Recomendações Inteligentes.

Abordagem de identidade gerenciada atribuída pelo sistema

Para configurar a segurança com a identidade gerenciada atribuída pelo sistema:

  1. Abra sua conta do Recomendações Inteligentes.
  2. No painel esquerdo, selecione Identidade.
  3. Na guia Sistema atribuído, ATIVE o Status e selecione Salvar.

 Status de identidade atribuído pelo sistema na conta IR.

  1. Retorne à sua conta de armazenamento e selecione Contêineres no painel de navegação esquerdo e selecione seu ircontainer (ou qualquer nome que você tenha dado ao seu contêiner).
  2. No painel esquerdo, selecione Controle de Acesso (IAM).

IAM no contêiner.

  1. Para permitir que o Recomendações Inteligentes leia os dados de logs, siga as etapas mostradas para atribuir Leitor de Dados de Blob de Armazenamento e repita as etapas de 1 a 6 novamente para as permissões de Colaborador de Dados do Blob de Armazenamento:

    1. Em Conceder acesso a este recurso, selecione Adicionar atribuição de função.
    2. Em Função, selecione Leitor de Dados do Blob de Armazenamento e, em seguida, selecione Avançar.
    3. Na próxima tela, na seção Atribuir acesso a, selecione Identidade gerenciada, então selecione + Selecionar membros.

    IAM com identidade gerenciada.

    1. Em Identidade gerenciada, selecione a categoria Conta de Recomendações Inteligentes.

    IAM com identidade gerenciada atribuída pelo sistema.

    1. Você vê uma lista de contas de Recomendações Inteligentes. Escolha a conta relevante que tem acesso a esta conta de armazenamento e, depois, selecione Selecionar.

     IAM escolhendo a identidade gerenciada atribuída pelo sistema.

    1. Finalize sua decisão ao selecionar o botão "Revisar + Atribuir". Repita estas etapas para configurar o Colaborador de Dados de Blob de Armazenamento também.

Abordagem de identidade gerenciada atribuída pelo usuário

Se sua empresa tiver várias contas que precisam de acesso de leitura/gravação aos dados no mesmo contêiner, conceda permissões a uma identidade gerenciada atribuída a um usuário e relacione-a a várias contas do Recomendações Inteligentes.

Observação

Antes de continuar, será necessário já ter criado uma identidade gerenciada atribuída pelo usuário. Se ainda não tiver uma, siga as etapas descritas no guia de identidades gerenciadas atribuídas pelo usuário.

Os pré-requisitos para criar uma identidade gerenciada pelo usuário incluem:

  • Assinatura: escolha a assinatura sob a qual criar a identidade gerenciada atribuída pelo usuário.
  • Grupo de recursos: escolha um grupo de recursos para criar a identidade gerenciada atribuída pelo usuário ou selecione Criar novo para criar um novo grupo de recursos.
  • Região: escolha uma região para implantar a identidade gerenciada atribuída pelo usuário, por exemplo, Oeste dos EUA.
  • Nome: insira um nome para sua identidade gerenciada atribuída pelo usuário. Observe que somente os caracteres alfanuméricos (0-9, a-z, e A-Z) e o hífen (-) têm suporte.
  1. Copie a Identidade gerenciada atribuída pelo usuário que você criou e deseja usar. Se você não tiver uma, consulte a observação sobre como criar sua identidade gerenciada atribuída pelo usuário.

  2. Em sua conta de armazenamento, selecione Contêineres no painel de navegação esquerdo e encontre seu ircontainer (ou qualquer contêiner com seu contrato de dados).

  3. No painel esquerdo, selecione Controle de Acesso (IAM).

Encontre o controle de acesso do seu contêiner.

  1. Para permitir que o serviço Recomendações Inteligentes leia os dados de log, você precisa adicionar as permissões Leitor de Dados do Blob de Armazenamento e Colaborador de Dados do Blob de Armazenamento.

    1. Em Conceder acesso a este recurso, selecione Adicionar atribuição de função.
    2. Em Função, selecione Leitor de dados de blobs de armazenamento.
    3. Em Atribuir acesso a, selecione Identidade gerenciada e depois + Selecionar membros.
    4. Selecione Identidade gerenciada atribuída pelo usuário.

    Selecione a identidade gerenciada atribuída pelo usuário.

    1. Escolha as identidades gerenciadas atribuídas pelo usuário relacionadas às contas IR às quais você deseja conceder permissões e, depois, selecione Selecionar.

    Selecione a identidade gerenciada atribuída pelo usuário.

    1. Salve suas alterações clicando no botão "Revisar + Atribuir" e feche a caixa de diálogo.

Em seguida, você precisa conectar sua conta de Recomendações Inteligentes à sua identidade gerenciada atribuída pelo usuário:

  1. Acesse sua conta do Recomendações Inteligentes.
  2. No painel esquerdo, selecione Identidade.
  3. Na guia Identidade, selecione a guia Atribuído pelo usuário e selecione + Adicionar.

Relacione a identidade à conta IR.

Adicione a identidade atribuída pelo usuário à conta IR.

  1. Selecione sua identidade gerenciada atribuída pelo usuário que você deseja conectar à Conta IR. Você pode conectar mais de uma identidade à sua conta IR, se necessário.

  2. Selecione Adicionar para salvar suas opções.

Adicione a identidade à conta IR.

Verifique suas atribuições de função

Verifique se você tem o conjunto correto de permissões retornando à sua conta de armazenamento e ircontainer.

  1. Em seu ircontainer, selecione Controle de Acesso (IAM) no painel esquerdo.
  2. Selecione Exibir na seção Exibir acesso a este recurso.
  3. Pesquise o serviço Recomendações Inteligentes e verifique se o serviço está listado na seção Atribuições de função com Leitor de Dados de Blob de Armazenamento e Colaborador de Dados do Blob de Armazenamento. Se essas funções estiverem ausente, volte e adicione-as novamente usando as etapas descritas anteriormente.

Observação

Também é possível configurar permissões no nível da pasta (permissões ACL). Para obter mais informações sobre permissões ACL, acesse Listas de controle de acesso no Azure Data Lake Storage Gen2.

Preparar os dados

O Recomendações Inteligentes oferece suporte a vários tipos de dados. Para obter os melhores resultados, coloque cada tipo de dados em uma subpasta exclusiva com um nome específico que o Recomendações Inteligentes reconheça. Você pode colocar arquivos CSV com o esquema correto dentro de cada pasta.

Tenha em mente as seguintes dicas ao preparar arquivos CSV:

  • Os nomes das pastas abaixo do nível da pasta raiz são importantes e devem corresponder exatamente ao esperado no arquivo model.json.
  • Os nomes dos arquivos CSV não são importantes.
  • Você pode colocar vários arquivos CSV na pasta. As Recomendações Inteligentes também tentarão lê-las.
  • A quantidade de dados também não importa. Você pode particionar os dados da maneira que desejar.
  • Cenários como recomendações personalizadas exigem diferentes entidades de dados.

Uma entidade de dados é um conjunto de um ou mais arquivos de texto de dados. Cada arquivo tem uma lista de colunas, ou atributos, e linhas contendo os dados reais. O Recomendações Inteligentes define grupos lógicos de entidades de dados, cada um com sua própria finalidade. As entidades de dados são opcionais (a menos que explicitamente indicado de outra forma), o que significa que seus dados podem estar vazios ou totalmente ausentes.

Saiba mais sobre os tipos de dados para o Recomendações Inteligentes em Referência de contratos de dados.

Para preparar dados, você precisa adicionar três entidades de dados:

  • Reco_ItemsAndVariants: este arquivo contém a lista completa de itens que Recomendações Inteligentes recomendará aos usuários.
  • Reco_Interactions: este arquivo armazena cada evento bruto ou interação entre usuários e itens. Eventos comuns incluem cliques, visualizações e transações.
  • Reco_Config: este arquivo não é uma pasta de dados especificamente, mas é usado para outras configurações de lista.

Em seguida, você precisará adicionar o esquema de dados.

Baixar o arquivo model.json e configurar a pasta raiz

Todo o esquema de dados é descrito em um arquivo baixável, model.json.

  1. Selecione este link para baixar o arquivo model.json. Esse arquivo JSON deve ser colocado na pasta raiz e não precisa de outras modificações.

    Observação

    NÃO modifique o arquivo model.json. A modificação do arquivo fará com que o serviço Recomendações Inteligentes falhe ao iniciar o processamento de dados.

  2. Salve ou mova model.json para a pasta raiz.

  3. Crie três subpastas para as entidades de dados: Reco_ItemsAndVariants, Reco_Interactions e Reco_Config.

  4. Usando um editor de texto, crie um arquivo config.csv padrão e mova-o para a pasta Reco_Config.

A estrutura do arquivo agora deve ter a seguinte aparência:

Pasta raiz com todos os objetos de dados configurados corretamente.

Criar um arquivo de catálogo básico

Um catálogo em sua forma mais básica é apenas uma lista simples de IDs de itens. Por enquanto, você usa o esquema de entidade de dados ItemsAndVariants, que tem apenas cinco campos.

O esquema completo é assim:

ItemId, ItemVariantId, Título, Descrição, ReleaseDate

Para iniciar seu serviço, apenas a ItemId é necessária. Algumas linhas de exemplo para o arquivo que você deve criar são as seguintes:

0000394e,,,,
0000394f,,,,
0000394g,,,,

Criar um arquivo de interações básico

O esquema de entidade de dados Interações tem 12 campos, mas você pode definir a maioria deles com seus valores padrão por enquanto.

Defina os seguintes valores:

Campo obrigatório Descrição
InteractionsGroupingId Pode ser qualquer coisa que agrupe itens. Você pode defini-lo como UserId, SessionId ou OrderId. Se você não tiver certeza de qual usar e tiver a UserId, defina-o como UserId.
ItemId A mesma ItemId mencionada em Criar um arquivo de catálogo básico. Esses valores devem corresponder ao seu catálogo.
UserId Qualquer cadeia de caracteres que representa um usuário. O Recomendações Inteligentes não usa este campo para consultar nenhum sistema externo, portanto, esse valor pode representar qualquer mapeamento para uma ID de usuário real.
Carimbo de data/hora Representa a data e hora de um evento registrado.

O esquema Interações completo é assim:

InteractionsGroupingId, ItemId, ItemVariantId, UserId, InteractionType, Carimbo de data/hora, RealtimeEventId, PaidPrice, Canal, Catálogo, Intensidade, IsPositive

Por enquanto, você pode definir os outros campos com seus valores padrão. O arquivo de interações precisa ter linhas de dados suficientes para permitir que a instância de modelagem baseada em Aprendizado de Máquina calcule os resultados. Você pode usar os relatórios internos do log para determinar se tem o suficiente. Para obter mais informações sobre logs, acesse Registro de erro de configuração.

Algumas linhas de exemplo para o arquivo que você deve criar são as seguintes:

1,0000394e,,1,Transaction,2018-09-02T13:30:10.000Z,,,,,1,TRUE
1,0000394f,,1,Transaction,2018-09-01T03:48:38.000Z,,,,,1,TRUE
2,0000394e,,2,Transaction,2016-06-17T17:01:23.000Z,,,,,1,TRUE
2,0000394f,,2,Transaction,2017-04-19T07:15:53.000Z,,,,,1,TRUE
3,0000394e,,3,Transaction,2016-11-16T18:28:50.000Z,,,,,1,TRUE

Criar um arquivo de configuração padrão

Por enquanto, copie este texto no editor de texto de sua escolha e salve-o como config.csv:

TrendingListMaxAgeDays,18250
TrendingListTransactionsIntervalDays,18250
BestSellingListTransactionsIntervalDays,36500
PersonalizationEnabled,False
ItemIdAsGuid,False

Confira também

Visão geral da implantação
Criar uma nova conta do Recomendações Inteligentes
Usar contratos de dados para compartilhar dados