Data Locker—raw data delivery

At a glance: Data Locker writes raw-data to an AWS S3 bucket in near-real-time (lag 6 hours.) Data can be written to a bucket provided by AppsFlyer or directly to your bucket.

6133_Data_Locker_-_your_bucket.png

Data Locker

Principais recursos do Data Locker

  • Apps: compatível com vários aplicativos adicionados automaticamente
  • Simplicidade: os dados são registrados em um bucket Amazon S3
  • Confiabilidade: os dados são armazenados na AWS, o que garante a persistência dos dados
  • Flexibilidade: escolha quais dados você deseja incluir 
  • Granularidade: os dados são segmentados em tipos de relatório, dias e horas
  • Acessibilidade: extraia dados quando necessário
  • Atualização dos dados: atraso de 6 horas após o uso ou diariamente, dependendo do tipo de relatório.  O tempo de atraso é o mesmo (6 horas) independentemente do fuso horário específico do aplicativo. 
  • Propriedade do bucket:
    • Get the data via an AppsFlyer owned bucket. Data retention: 30 days.
    • AppsFlyer writes the data directly to your bucket. Data retention: Controlled by you. 

Relatórios disponíveis no Data Locker

UA e retargeting
Categoria Tipo de relatório (tópico) Atualização de dados* Orgânico/Não-orgânico Exclusivo para Data Locker
Aquisição de usuário Cliques Atraso de 6 horas N/D
Redirecionamento Cliques Atraso de 6 horas N/D
Aquisição de usuário Impressões Atraso de 6 horas N/D
Redirecionamento Impressões Atraso de 6 horas N/D
Aquisição de usuário Instalações Atraso de 6 horas Ambos  
Aquisição de usuário Eventos in-app  Atraso de 6 horas Ambos  
Aquisição de usuário Receita publicitária atribuída Diariamente+2 Não orgânico  
Aquisição de usuário Receita publicitária orgânica Diariamente+2 Orgânico  
Redirecionamento Receita publicitária de retargeting Diariamente+2 Não orgânico  
Redirecionamento Conversões Atraso de 6 horas Não orgânico  
Redirecionamento Eventos in-app Atraso de 6 horas Não orgânico  
Redirecionamento Sessões Atraso de 6 horas Ambos
Aquisição de usuário Sessões Atraso de 6 horas Ambos
Aquisição de usuário Desinstalações Diariamente Não orgânico  
Aquisição de usuário Desinstalações orgânicas Diariamente Orgânico  
Reinstalações Reinstalações Atraso de 6 horas Não orgânico  
Reinstalações Reinstalações orgânicas Atraso de 6 horas Orgânico  
Protect360
Tipo de relatório (tópico) Atualização de dados*
Instalações bloqueadas Atraso de 6 horas
Eventos in-app bloqueados Atraso de 6 horas
Cliques bloqueados Atraso de 6 horas
[FF*] [AG*] Instalações pós-atribuição Diariamente

Atualização dos dados de SKAdNetwork: diariamente 
Tipo de relatório (tópico)
[FF*] Postbacks
[FF*] Instalações
[FF*] Redownloads
[FF*] Eventos in-app
People-Based Attribution
Atualização dos dados: diariamente
Tipo de relatório (tópico)
[FF*] Visitas ao site
[FF*] Eventos do site
[FF*] Website-assisted installs
[FF*] Caminhos de conversão
Explicação das abreviaturas

* Explicação das abreviaturas

[FF] Os campos do relatório são corrigidos pela Appsflyer. Eles não estão relacionados aos campos selecionados para inclusão nos relatórios.

[AG] Não há suporte para a transparência da agência.

Atraso de 6 horas: os dados são separados em pastas por hora de chegada. Essa é a hora em que o evento foi depositado no Data Locker. Algumas pastas do Data Locker são gravadas cerca de seis horas após o horário real do evento para eventos em tempo real. Existem 24 pastas para cada hora do dia, de 0 a 23, e uma pasta adicional para dados transmitidos com atraso. O tempo de atraso é o mesmo, independentemente do fuso horário específico do aplicativo.

Daily: Reports having a data freshness rate of daily are written to the h=23 folder. These reports are typically available by 10:00-12:00 UTC in the h=23 folder of the preceding day. For example, the report for data generated during Monday is in the Monday H=23 folder. The data is available after 10:00 UTC on Tuesday. 

Diariamente+2: os dados de receita de anúncios estão disponíveis após 2 dias, ou seja, dados gerados em uma segunda-feira ficam disponíveis na pasta Segunda-feira H=23 após as 06:00 UTC da quarta-feira.

Arquitetura do Data Locker

Partição de dados

A AppsFlyer cria uma entidade da AWS (ARN nos termos da Amazon) e gera credenciais para essa entidade. Uma política é então definida, permitindo que a entidade procure e recupere arquivos do bucket.

No bucket, os dados são organizados por tipo de relatório. Os dados de um determinado relatório são armazenados em sua pasta. 

Estrutura de pastas e arquivos

  • A estrutura da pasta é: af-ext-reports/<Pasta pessoal>/data-locker-hourly/t=<tipo de evento>/dt=<datas AAAA-MM-dd>/h=<horas h >
    • A Pasta Inicial é a Pasta Inicial que aparece na janela Credenciais  (consulte as instruções de instalação na seção anterior) 
    • Por exemplo, para a data 12/08/2016, o relatório aparece em: s3://af-ext-reports/12345678911-acc-1abc234/data-locker-hourly/t=installs/dt=2016-08-12/
  • A pasta dt = aaaa-mm-dd é dividida em 25 pastas por hora. Essas pastas representam a hora de chegada do evento, não a hora do evento em si. As pastas são nomeadas h=0, h=1, h=2 e assim por diante, até h=23 e h=atrasado. Por exemplo, a pasta h=0 contém os eventos que chegam entre 00:00 UTC e 01:00 UTC, da mesma forma, a pasta h=20 contém os eventos que chegam entre 20:00 UTC e 21:00 UTC.
  • Em cada pasta:

    • Os dados podem ser separados em vários arquivos para evitar arquivos grandes.  Os nomes dos arquivos são: part-00000, part-00001, part-00002 e assim por diante. Pode haver até 1000 arquivos. No futuro, podemos aumentar esse número máximo sem aviso prévio.

    • O último arquivo a ser gravado é um arquivo vazio chamado _SUCCESS. Esse arquivo é um sinalizador indicando que nenhum outro dado será gravado na pasta. Por isso, não leia dados em uma pasta antes de verificar se o arquivo _SUCCESS existe. Observação: O sinalizador_SUCCESStambém é gravado nos casos em que não há dados a serem registrados na pasta. 

  • Pasta Atrasados

    • A pasta tardia contém eventos do dia anterior que chegaram depois da meia-noite. Ou seja, chegam entre 00:00–02:00 UTC do dia seguinte. Por exemplo, um usuário instala um aplicativo na segunda-feira 08:00, o evento chega na terça-feira às 01:00. O evento é gravado na pasta tardia de segunda-feira. 

    • A pasta também contém o sinalizador _SUCCESS, conforme descrito na seção anterior.

    • Os dados na pasta tardia não são registrados em nenhuma outra pasta.

    • Processos automatizados devem procurar dados na pasta tardia de forma semelhante à de outra pasta. 

Estrutura e formato do arquivo

  • Os arquivos do Data Locker são baseados no relatório de dados brutos V5 (veja o relatório de dados brutos V5).
  • O arquivo de dados real está no formato CSV, mas não possui extensão.
  • Os arquivos de relatório são compactados em formato (.p12)
  • Cada arquivo possui uma linha de cabeçalho.
  • Valores que possuem uma vírgula estão contidos entre aspas `"`, por exemplo `"iPhone6,1"`.

Usando relatórios como fontes de dados

Você pode usar os dados dos relatórios e adicioná-los aos seus próprios bancos de dados. Para extrair os dados e adicioná-los aos seus bancos de dados, você precisa conhecer o formato do relatório. Os relatórios do Data Locker são baseados em relatórios de dados brutos. No entanto, o formato final do relatório depende dos campos que você escolher incluir.

Some fields are populated with null or are empty. This means that in the context of a given report there is no data to report. In general, null means this field is not populated in the context of a given report and app type. Blank "" means the field is relevant in its context but no data was found to populate it with. 

Fuso horário e moeda

As configurações de fuso horário e moeda específicas do aplicativo não afetam os dados no Data Locker.

  • Fuso horário: Os relatórios do Data Locker usam o fuso horário UTC
  • Moeda: o campo event_revenue_usd está em USD. 

AppsFlyer AWS bucket vs. Customer AWS Bucket

 Atenção!

Se você estiver usando a solução de AWS Bucket do cliente: 

  • Certifique-se de estar em conformidade com os regulamentos de privacidade de dados, como GDPR e políticas de retenção de dados de rede de anúncios/SRN.
  • Don't use the Customer AWS Bucket solution to send data to third parties. 
  • Os dados são registrados no proprietário do bucket de sua escolha da seguinte maneira:
    • Repositório AWS da AppsFlyer
    • Customer AWS bucket
  • Você pode alterar a seleção do proprietário do bucket a qualquer momento:
    • Move from an AppsFlyer AWS bucket to a Customer AWS bucket in the user interface. The change takes effect within 1 hour. This means we stop writing data to one bucket and start to write data to the newly selected bucket. 
    • If you want to stop using your Customer Bucket, select the AppsFlyer bucket. 
  Repositório AWS da AppsFlyer Customer AWS bucket
Nome do repositório Definido pela AppsFlyer

Definido por você. Deve ter o prefixo af-datalocker-.

Exemplo: af-datalocker-nome-do-seu-bucke

Propriedade do bucket AppsFlyer Customer
Suporte para a plataforma de armazenamento AWS AWS 
Credenciais para acessar dados por você Disponível na interface de usuário Data Locker para o Admin Não conhecido pela AppsFlyer. Use suas credenciais da AWS.
Retenção de dados Data is deleted after 30 days Sua responsabilidade
Solicitações de exclusão de dados Responsabilidade da AppsFlyer Sua responsabilidade
Segurança AppsFlyer controls the bucket. The customer has read access. The customer controls the bucket. AppsFlyer requires GetObject, ListBucket, DeleteObject, PutObject permission to the bucket. The bucket should be dedicated to AppsFlyer use. Don't use it for other purposes.
Espaço de armazenamento Gerenciado pela AppsFlyer Gerenciado por você

Procedures

Configure o Data Locker

Use este procedimento para configurar o Data Locker.

Prerequisite for setting up a Customer AWS bucket:

If you are setting up Data Locker using your Customer AWS bucket, meaning a bucket owned by you, you must first complete setting up your AWS S3 bucket.

AppsFlyerAdmin_us-en.png Para configurar o Data Locker:

  1. O administrador precisa executar a configuração. 
  2. Na Appsflyer, acesse  Integração > Data Locker 
  3. Escolha o método de integração do Amazon S3. Selecione um dos seguintes
    • AWS Bucket da AppsFlyer Continue para a etapa 4. 
    • Customer AWS bucket.
      1. Insira o nome do seu AWS bucket. Não insira o prefixo af-datalocker-
      2. Clique em Testar.
      3. Verifique se nenhuma mensagem de erro é exibida indicando que o caminho do bucket é inválido.
  4. Selecione um ou mais aplicativos, ou todos.  Selecione Todos para incluir automaticamente os aplicativos que você adicionar no futuro.
  5. Clique em Aplicar
  6. [opcional] Fontes de mídia: selecione uma ou mais fontes de mídia para incluir nos relatórios.
    • Default=Tudo. Isso significa que as fontes de mídia adicionadas no futuro serão automaticamente adicionadas.
  7. Selecione um ou mais tipos de relatório.
  8. [opcional] Eventos in-app: Selecione os eventos in-app para incluir. Se você tiver mais de 100 tipos de eventos in-app,  não será possível procurá-los. Digite seus nomes de maneira precisa para selecioná-los. 
    • Padrão=Tudo. Isso significa que os eventos no aplicativo adicionados no futuro serão adicionados automaticamente.
  9. Clique em Aplicar
  10. [opcional] Campos (padrão=todos): Selecione os campos a serem incluídos nos relatórios. Nota: Adicionamos campos de tempos em tempos levamos isso em conta no seu processo de importação de dados.
  11. Clique em Salvar configuração. Uma das opções seguintes ocorre:
    • Se você selecionou o AWS bucket da AppsFlyer:
      • Um AWS bucket dedicado é criado. As credenciais do bucket são exibidas.
      • O repositório pode ser acessado com o uso das credenciais. As credenciais permitem acesso ao bucket somente para leitura.
    • If you selected Customer AWS bucket:
      • Os dados começarão a ser gravados em seu AWS bucket após 1-2 horas.

Setup Data Locker—Your AWS S3 bucket

O procedimento nesta seção deve ser executado pelo seu administrador de AWS.

You can delete files from Data Locker 25 or more hours after they were written. Please don't delete them before. 

Informações básicas para o administrador do AWS: 

  • A AppsFlyer registra seus dados em um S3 bucket de sua propriedade. Para fazer isso, é necessário:
    • Criar um bucket com o nome af-datalocker-meurepositório. O prefixo af-datalocker- é obrigatório. O sufixo é de texto livre.
  • Sugerimos af-datalocker-aaaa-mm-dd-hh-mm-texto-livre. Onde aaaa-mm-dd-hh-mm é a data e hora atuais, e você adiciona qualquer outro texto que desejar, conforme descrito na figura a seguir.
    Interface do usuário no console da AWS

    MyBucket.jpg

  • Após criar o bucket, conceda as permissões da AppsFlyer usando o procedimento a seguir. 

Para criar um intervalo e conceder permissões da AppsFlyer: 

  1. Faça login no console da AWS.
  2. Vá para o serviço S3.
  3. Para criar o bucket:
    1. Clique em Criar bucket.
    2. Preencha o Nome do bucket da seguinte maneira: comece com af-datalocker- e, em seguida, adicione qualquer outro texto conforme descrito anteriormente.
    3. Clique em Criar bucket.
  4. Para conceder permissões da AppsFlyer:
    1. Selecione o bucket. 
    2. Acesse a aba Permissões
    3. Na seção Política de bucket, clique em Editar. 
      A janela Política de bucket é aberta.
    4. Cole o seguinte trecho na janela.
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Sid": "AF_DataLocker_Direct",
            "Effect": "Allow",
            "Principal": {
              "AWS": "arn:aws:iam::195229424603:user/product=datalocker__envtype=prod__ns=default"
            },
            "Action": [
              "s3:GetObject",
              "s3:ListBucket",
              "s3:DeleteObject",
              "s3:PutObject"
            ],
            "Resource": [
              "arn:aws:s3:::af-datalocker-my-bucket",
              "arn:aws:s3:::af-datalocker-my-bucket/*"
            ]
          }
        ]
      }
      
  5. In the snippet, replace af-data-locker-my-bucket with the bucket name you created.

  6. Clique em Salvar alterações.

  7. Conclua o procedimento de configuração do Data Locker.

Reset credentials

The admin can reset the AppsFlyer AWS bucket credentials at any time. Note! If you reset the credentials you must update your data import scripts with the updated credentials.

AppsFlyerAdmin_us-en.png To reset the credentials:

  1. Na Appsflyer, acesse  Integração > Data Locker 
  2. In the Credentials section, click Reset credentials.
    A confirmation window displays.
  3. Click Reset.
  4. Wait (about 20 seconds) until the Credentials successfully reset message displays.
    The updated credentials are available.

Recuperação de dados

Use sua ferramenta preferida de recuperação de dados do S3, AWS CLI, ou uma das ferramentas descritas nas seções abaixo.

CLI da AWS

Antes de começar:

  • Instale a CLI da AWS no seu computador.
  • Na AppsFlyer, vá para o Data Locker e recupere as informações contidas no painel de credenciais, conforme necessário, para executar este procedimento. 

Para usar o AWS CLI:

  1. Abra o terminal. Para fazer isso no Windows, <Windows> + <R>, clique em OK.
    A janela da linha de comando é aberta.
  2. Digite configurar aws
  3. Digite a Chave de acesso da AWS como aparece no painel de credenciais.
  4. Digite sua chave secreta da AWS conforme aparece no painel de credenciais.
  5. Digite eu-west-1
  6. Pressione Enter (Nenhum)

Use os comandos da CLI a seguir, conforme necessário.

Nos seguintes comandos, o valor de {home-folder} pode ser encontrado

Para listar pastas no seu repositório

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/

Para listar arquivos e pastas

Há três tipos de pastas no seu repositório do Data Locker:

  • Tipo de relatório t=
  • Data dt=
  • Hora h=

Para listar todos os relatórios de um tipo de relatório específico:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=installs/

Para listar todos os relatórios de um tipo de relatório específico para um dia específico:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=installs/dt=2019-01-17

Para listar todos os relatórios de um relatório específico, em uma hora específica de um dia específico:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=instalações/dt=2019-01-17/h=23

Para fazer o download de arquivos de uma data específica:

aws s3 cp s3://af-ext-reports/<home-folder>/data-locker-hourly/t=installs/dt=2020-08-01/h=9/part-00000.gz ~/Downloads/

Cyber Duck

Antes de começar:

  • Instale o cliente Cyber Duck.
  • Na AppsFlyer, vá para o Data Locker, recupere as informações contidas no painel de credenciais. Você precisará dessas informações ao configurar o Cyber Duck. 

Para configurar o Cyber Duck:

  1. No Cyber Duck, clique em Ação.
  2. Selecione Novo Marcador. A janela será aberta.
  3. No primeiro campo, (marcado [1] na captura de tela a seguir), selecione Amazon S3.

    DataDuckSmall2.png

  4. Preencha os campos da seguinte maneira:
    • Apelido: texto livre
    • Servidor: s3.amazonaws.com
    • ID da chave de acesso: copie a chave de acesso da AWS conforme exibida no painel de credenciais na AppFlyer
    • Chave de acesso secreto:  copie a Chave Secreta do Repositório conforme ela aparece no painel de credenciais na AppsFlyer.
    • Caminho (path): {Bucket Name}/{Home Folder} Por exemplo: af-ext-reports/1234-abc-ffffffff
  5. Feche a janela. Para fazer isso, use o X no canto superior direito da janela.
  6. Selecione a conexão.
    Os diretórios de dados são exibidos.

Navegador Amazon S3

Antes de começar:

  • Instale o navegador Amazon S3.
  • Na AppsFlyer, vá para o Data Locker e recupere as informações contidas no painel de credenciais, conforme necessário, para executar este procedimento. 

Para configurar o navegador Amazon S3:

  1. No navegador S3, clique em Contas > Adicionar Nova conta.
    A janela Adicionar Nova Conta é aberta.

    mceclip0.png

  2. Preencha os campos da seguinte maneira:
    • Nome da Conta: texto livre. 
    • ID da chave de acesso: copie a chave de acesso da AWS conforme exibida no painel de credenciais. 
    • Chave de acesso secreto: copie a Chave Secreta do repositório conforme ela aparece no painel de credenciais.
    • Selecione Criptografar Chaves de Acesso com uma senha e insira uma senha. Anote esta senha.
    • Selecione Usar transferência segura. 
  3.  Clique em Salvar alterações.
  4. Clique em Buckets > Adicionar BucketExterno.
    A janela Adicionar Bucket Externo é aberta.

    mceclip2.png

  5. Digite o nome do Repositório. O nome do Repositório tem o seguinte formato: {Bucket Name}/{Home Folder}. Os valores necessários para o nome do repositório e a pasta inicial aparecem na janela de credenciais. 
  6. Clique em Adicionar repositório externo.
    O repositório é criado e exibido no painel esquerdo da janela.
    Agora você pode acessar os arquivos do Data Locker. 

Informações adicionais

Características e Limitações

Características
Característica Observações 
Ad Networks Não deve ser usado por ad networks. 
Agências Não deve ser usado por agências
Fuso horário específico do aplicativo Não aplicável. As pastas do Data Locker são divididas em horas usando UTC. Os eventos reais contêm horários em UTC. Você pode converter os horários para qualquer outro fuso horário conforme necessário. Independentemente do fuso horário do aplicativo, o atraso da ocorrência do evento - até que ele seja registrado no Data Locker - permanece o mesmo, ou seja, 6 horas. 
Moeda específica do aplicativo  Não suportado
Limitações de tamanho Não aplicável
Atualização de dados Os arquivos são atualizados a cada hora com um atraso de seis horas a partir da hora do evento.
Dados históricos Não suportado. Os dados do evento são enviados após a configuração do Data Locker. Se você precisar de histórico de dados, use a Pull API. 
Acesso de membro da equipe Os membros da equipe não podem configurar o Data Locker. 
Aplicativo único/aplicativo múltiplo Suporte para vários aplicativos. O Data Locker está no nível da conta

Considerações para desenvolvedores

Na preparação de scripts para carregamento de dados em seus sistemas, considere o seguinte:

  • Pasta temporária:
    • Em alguns casos, uma pasta temporária permanece. Você deve ignorar essa pasta. Exemplo: /data-locker-hourly/t =inapps/dt=2020-11-13/h=2/_temporary/0/_temporary/.
    • Consumir apenas pastas que contenham o sinalizador _SUCCESS
  • Sequência de colunas em relatórios: 
    • A sequência de campos nos relatórios é sempre a mesma. Quando adicionamos novos campos, eles são adicionados à direita dos campos existentes. A lista de campos na interface do usuário é sequenciada de acordo.

Solução de problemas

  • Sintoma: não é possível recuperar dados usando o AWS CLI
  • Mensagem de erro: Ocorreu um erro (AccessDenied) ao chamar a operação ListObjectsV2: Acesso Negado
  • Causa: as  credenciais da AWS que estão sendo usadas não as credenciais corretas para o repositório da AppsFlyer. Isso pode ser causado por ter credenciais múltiplas ou inválidas na sua máquina. 
  • Solução:
    1. Use um método diferente, como Cyber Duck para acessar o repositório, ou seja, não a CLI. Faça isso para verificar se as credenciais que você está usando estão funcionando. Se você conseguir se conectar usando o Cyber Duck, isso indica um problema no cache das credenciais. 
    2. Atualize o cache de credenciais da AWS.
      Screenshot da AWS`mceclip0.png 
Este artigo foi útil?