我正在一个具有两个环境(测试版和生产环境)的应用程序上实施 AWS Mobile Analytics。它与自动导出配置 S3 + Redshift 配合得很好,但我对环境数据拆分有疑问。
我是否应该拥有另一个具有其他配置的 Mobile Analytics 以自动导出到另一个 Redshift?或者我应该让一个 Redshift 和两个应用程序(测试版和生产)将数据发送到同一个 Redshift?在第二种情况下,我可以检测到来自哪个应用程序的数据是唯一的包名称。
提前致谢!
我正在一个具有两个环境(测试版和生产环境)的应用程序上实施 AWS Mobile Analytics。它与自动导出配置 S3 + Redshift 配合得很好,但我对环境数据拆分有疑问。
我是否应该拥有另一个具有其他配置的 Mobile Analytics 以自动导出到另一个 Redshift?或者我应该让一个 Redshift 和两个应用程序(测试版和生产)将数据发送到同一个 Redshift?在第二种情况下,我可以检测到来自哪个应用程序的数据是唯一的包名称。
提前致谢!
我建议使用两个应用程序,一个用于您的生产应用程序,一个用于您的测试版应用程序。使用 Amazon Redshift 中的数据,您可以使用 application_app_id 列来识别您的应用程序不同的应用程序。您还可以更新 v_event 视图以排除您的 beta 应用数据并创建一个名为 v_beta_view 的新视图以仅显示您的 beta 应用数据。
要创建显示特定应用事件的新视图,您可以使用以下查询:
CREATE OR REPLACE VIEW AWSMA.v_beta_event AS select * from AWSMA.event where application_app_id = '<your beta app id here>';
--grant read access to your read-only users
GRANT SELECT on AWSMA.v__beta_event to group eventreaders;
不太确定您要问的问题,但如果您只是尝试根据应用程序过滤 Redshift 中的事件,您可以根据 application_app_id 过滤。
转到您的控制台并选择您想要查看事件的应用程序 ID(我们称之为“xxxxxxxxxxxx”,然后在您的 Redshift Cluster 查询中:
Select *
From awsma.v_event
Where application_app_id = 'xxxxxxxxxxxx'