Data Locker - 云存储工具设置说明

概要:您可以通过自己的云存储工具来获取Data Locker的数据,本文说明了其中涉及的云存储工具设置方式。目前AppsFlyer支持的云存储平台包括GCS、AWS、BigQuery以及Snowflake。

您可以使用Data Locker将数据实时传输到您指定的自有存储工具中,无论是数据存储桶还是数据仓库都适用。下文针对这两类工具分别解释了设置流程,请根据您的实际使用场景参考对应的说明。

云端数据存储

GCS存储

  • 以下操作需由您的Google Cloud管理员执行。
  • 在数据写入Data Locker25小时之后,您可以将相关文件从Data Locker中删除, 请勿提前删除。

GCS账户管理员须知

Data Locker是AppsFlyer提供的一种解决方案,用于将数据实时传输到您的存储工具中。

配置要求

  • 在GCS上为Data Locker创建一个专用存储桶。 “专用”指其他服务商无法在该存储桶中 写入数据。 
  • 推荐存储桶名称:af-datalocker
  • 按以下流程为Data Locker开放权限。

请按以下方式为Data Locker开放权限:

在以下步骤中,请将data-locker-example 替换为您为Data Locker创建的 存储桶名称。 

  1. 登入GCS后台。
  2. 进入Storage > Storage browser

    mceclip0.png

  3. 选择您之前创建的Data Locker专用存储桶,例如, data-locker-example。 
  4. 进入授权选项卡。 
  5. 点击+Add
    界面会打开Add members窗口。
  6. 请完成以下操作:
    1. 将以下代码片段复制粘贴到New members字段中。
      af-data-delivery@af-raw-data.iam.gserviceaccount.com
    2. 选择一个角色(Role):Cloud storage > Storage Object Admin

      mceclip0.png

  7. 点击Save。 

AWS存储

  • 以下操作需由您的AWS管理员执行。
  • 在数据写入存储桶的25小时之后,您就可以将相关文件从Data Locker中删除, 请勿提前删除。

AWS账户管理员须知

Data Locker是AppsFlyer提供的一种解决方案,用于将数据实时传输到您的存储工具中。

配置要求

  • 创建一个名为af-datalocker-mybucket的AWS存储桶。 请注意,这里的存储桶名称必须带有前缀af-datalocker-,后缀则为自定义文本。
  • 建议名称:af-datalocker-yyyy-mm-dd-hh-mm-free-text。其中yyyy-mm-dd-hh-mm是当前日期和时间,后接自定义文本,如下图所示。

AWS界面截屏

MyBucket.jpg

存储桶创建完成后,请按以下步骤向AppsFlyer开放权限。  

请按以下方式创建数据存储桶并为AppsFlyer开放权限:

  1. 登录AWS后台。
  2. 进入“S3 service”部分。
  3. 请按以下步骤创建存储桶
    1. 点击Create bucket
    2. 按以下方式填写存储桶名称: 以af-datalocker-前缀开头,然后按上文说明添加相应文本。
    3. 选择一个受支持的AWS区域。
    4. 点击Create bucket
  4. 向AppsFlyer授权的方式如下:
    1. 选择相关存储桶。 
    2. 进入Permissions选项卡。 
    3. Bucket policy部分,点击Edit 。
      界面显示存储桶政策窗口。
    4. 将以下代码片段复制粘贴到该窗口中:
      {
        "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. 请将上述代码片段中的af-data-locker-my-bucket替换为您创建的存储桶名称。

  6. 【可选】添加KMS加密存储桶的配置支持。具体操作如下: 进入Key Policy部分,选择Switch to policy view,并将以下代码片段复制粘贴到Statement array中。
    {
          "Sid": "Allow use of the key",
          "Effect": "Allow",
          "Principal": {
              "AWS": "arn:aws:iam::195229424603:user/product=datalocker__envtype=prod__ns=default"
          },
          "Action": "kms:GenerateDataKey*",
          "Resource": "*"
      }
    
  7. 点击Save changes
  8. 完成Data Locker设置流程

支持的AWS区域

Data Locker支持以下AWS区域:

  • 亚太地区(东京): ap-northeast-1
  • 亚太地区(首尔): ap-northeast-2
  • 亚太地区(孟买): ap-south-1
  • 亚太地区(新加坡): ap-southeast-1
  • 亚太地区(悉尼): ap-southeast-2
  • 加拿大(中央): ca-central-1
  • 欧盟(法兰克福): eu-central-1
  • 欧盟(爱尔兰): eu-west-1
  • 欧盟(伦敦): eu-west-2
  • 南美洲(圣保罗):sa-east-1
  • 美国东部(弗吉尼亚州北部):us-east-1
  • 美国东部(俄亥俄州):us-east-2
  • 美国西部(加利福尼亚州北部):us-west-1
  • 美国西部(俄勒冈州):us-west-2

【Beta】Azure云存储

  • 本节所述流程必须由您的Azure Cloud账户管理员完成。
  • 在数据写入存储桶的25小时之后,您就可以将相关文件从Data Locker中删除,但切勿在此之前删除这些文件。

Azure账户管理员须知

Data Locker是AppsFlyer提供的一种解决方案,用于将数据实时传输到您的云存储账户中。

请按以下方式为Data Locker配置一个云存储账户:

  1. 从您的Azure后台进入Azure storage accounts(存储账户)。 然后点击predict_dashboard_plus_symbol.pngCreate ,生成一个新的云存储账户,专用于获取AppsFlyer侧的数据。
  2. Basic选项卡进入Project details,根据实际使用场景从下拉菜单中选择一项:
    1. Subscription(订阅)。 
    2. Resource Group(资源组)。
      可选:如果没有现行的资源组,可以点击Create new,然后创建一个资源组。
  3. Instance details下:
    1. 输入相关Storage account name(存储账户名称)。
    2. 从下拉菜单中选择一个Region(地区)。
  4. 点击Next:Advanced > 
  5. Security选项卡中,选择Enable Hierarchical namespace
  6. 点击Review -> Create
  7. 配置完成后,返回Azure Storage accounts(存储账户)部分,然后选择您刚刚新创建的账号。
  8. 进入Access keys部分,复制storage account name(存储账户名称)以及一个key(密钥)。  
  9. 进入Storage browser -> Blob containers,然后点击predict_dashboard_plus_symbol.pngAdd container(添加容器)。
    1. 为这个新建的container设置一个名称
    2. 点击Create
  10. 请让您的CSM为您在Data Locker中启用Azure。
  11. 启用完毕后,请从AppsFlyer面板进入Data Locker -> predict_dashboard_plus_symbol.png新连接
  12. 在新连接创建窗口中:
    1. 为新连接命名。
    2. 选择Azure Blob
    3. 存储桶名称字段中输入您的AzureContainer名称(即您在第9步中使用的名称)。
    4. 输入您在第8步中复制的Storage account name(存储账户名称)
    5. 输入您在第8步中复制的key(密钥)。
    6. 点击测试连接
    7. 保存。

【Beta】Yandex云存储

  • 本节所述流程必须由您的Yandex Cloud账户管理员完成。
  • 在数据写入存储桶的25小时之后,您可以将相关文件从Data Locker中删除, 请勿提前删除。

Yandex账户管理员须知

Data Locker是AppsFlyer提供的一种解决方案,用于将数据实时传输到您的存储工具中。

请按以下方式创建数据存储桶并向Data Locker开放权限:

  1. Yandex Cloud后台进入Service Accounts(服务账户)选项卡,然后点击Create service account
  2. 为该服务账户命名,如af-datalocker
  3. 为该服务帐户创建static access key(静态访问密钥)。在该服务帐户的配置窗口中完成以下操作:
    1. 点击Create a new key(创建一个新密钥)。
    2. 选择Create static access key
    3. 保存这个key的Key IDSecret key
  4. 为您新建的服务账户开放storage.editor权限。
    1. 进入存储桶设置中的Access Bindings部分,然后点击Assign bindings
    2. 为您新建的服务账户添加storage.editor角色,然后点击保存
  5. 请让您的AppsFlyer CSM为您在Data Locker中启用Yandex。
  6. 启用完毕后,请使用您之前保存的Key ID和Secret Key完成Data Locker设置流程

云端数据仓库

BigQuery

本节所述流程必须由您的BigQuery账户管理员完成。

BigQuery账户管理员须知

Data Locker是AppsFlyer提供的一种解决方案,用于将数据实时传输到您的存储工具中。

配置要求

  • 创建BigQuery数据集: 

请按以下方式创建一个BigQuery数据集: 

  1. 在BigQuery中创建一个Project(项目),也可使用现有项目。
  2. 在该项目中,点击CREATE DATASETGCSCreateDataSEt_1_.png
  3. 为该数据集设置一个合适的ID。

     注意

    目标项目或数据集必须绑定有效的计费账号。若无计费账号,Data Locker将无法在BigQuery目标位置中创建或写入表格,连接设置过程可能会失败。

  4. 为AppsFlyer开放该数据集的访问权限。详情请见BigQuery说明文档
  5. 根据您的实际需求完成其余部分的设置。 

Snowflake

将Data Locker连接到您的Snowflake账户后,就可以将相关数据发送到Snowflake。这些数据会被保存在您指定的云存储空间中,持续供您使用。

BI开发人员的注意事项

  • 这里的数据时效性与存储桶的时效性一致。
  • 这里的表格及字段列结构与Data Locker数据桶中直接提供的数据结构相同。
  • AF在Snowflake的指定位置中添加数据行时,会自动填充_ingestion_time字段。为了确保数据各行的唯一性,并避免多次接入同一行数据,请按以下方式操作:
    1. 对于已接入的表格,分别保存其各自的max_ingestion_time
    2. 每次接入数据时,仅取用_ingestion_time > max_ingestion_time的数据行。

请按以下步骤将Snowflake连接到Data Locker。 

Snowflake数据连接的设置流程

请按以下方式获取您的Snowflake账户ID及地区信息

  1. 登入您的Snowflake账户
  2. 在菜单栏中选择您的用户名称。
    界面会显示您的账户ID和地区信息。
    SnowflakeAccountId.png

请按以下方式将Data Locker连接到Snowflake

  1. 从AppsFlyer后台进入报告 > Data Locker
  2. 选择Snowflake。
  3. 使用按上文步骤取得的Snowflake地区Snowflake账户ID信息,将其填入相应字段。
  4. 点击保存

在Snowflake的相关Share中创建一个数据库

  1. 登入您的Snowflake账户
  2. 将您的角色切换为Accountadmin。详情请见Snowflake的数据库创建说明文档。
  3. 选择Shares
  4. 选择AppsFlyer专用的Share,如APPSFLYER_ACC_XXX_DATA_LOCKER。
  5. 点击Create Database from Secure Share,然后根据您的实际情况填写详细信息。注意事项!由于共享数据库中的数据可用时长有限(目前为14天),因此请务必将共享数据库中的数据导入到您的表格中。  
  6. 在您的数据库中,界面会显示已导入的表格。这里的表格名称和结构与Data Locker存储桶中的数据一致。

     

特点与局限性

特点 说明
AppsFlyer云连接 报告无法以未压缩的方式存储
BigQuery数据集位置变更 如果在BigQuery中更改了数据集位置,需重新保存连接设置。 由于AppsFlyer连接配置并无实际变化,“Save” 按钮默认禁用。 如需启用该按钮,可先进行一次临时修改并保存,再改回原设置并再次保存。
Snowflake支持区域 AWS支持区域:
  • us-east-1
  • us-east-2
  • us-west-2
  • eu-west-1
  • eu-west-2
  • eu-west-3
  • eu-central-1
  • eu-north-1
  • ca-central-1
  • sa-east-1
  • ap-south-1
  • ap-southeast-1
  • ap-southeast-2
  • ap-northeast-1
  • ap-northeast-2
  • ap-northeast-3
AWS支持区域:
  • east-us-2
GCP支持区域:
  • 有限支持。请联系AppsFlyer支持团队,确认您所在区域是否可用。