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

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

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

云端数据存储桶

GCS存储桶

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

GCS账户管理员须知

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

配置要求

  • 在GCS中创建一个存储桶,专用于接收Data Locker的数据,也就是说没有其他服务商平台会在这个存储桶中写入数据。 
  • 建议使用以下名称来命名该存储桶:af-datalocker
  • 按以下流程为Data Locker开放权限。

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

注意:请使用您为Data Locker创建的存储桶名称来替换掉流程说明中的示例名称data-locker-example。 

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

    mceclip0.png

  3. 选择您之前创建的Data Locker专用存储桶,例如data-locker-example。 
  4. 进入Permissions选项卡。 
  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. 按以下方式填写Bucket name(存储桶名称):以af-datalocker-前缀开头,然后按上文说明添加相应文本。
    3. 点击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设置流程

【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 DATASET

    GCSCreateDataSEt_1_.png

  3. 为该数据集设置一个合适的ID。
  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存储桶中的数据一致。