【问题标题】:Collecting hierarchical events in Segment.io (to represent it via Keen.io)在 Segment.io 中收集分层事件(通过 Keen.io 表示)
【发布时间】:2016-09-09 00:05:34
【问题描述】:

我正在使用 Segment.io JAVA SDK 从我的应用程序中收集事件,并使用 Keen.io 在视觉上表示相同的事件。我有一个分层事件结构如下,

  • 公司
    • 部门
      • 用户(登录、注销)
        • 书(打开、关闭)
          • 页面(查看、下一个、上一个)
        • 车辆(启动、行驶、停止)

所以,在segment中收集数据时,我们是否应该将所有事件中的所有属性发送到以后进行分析(在keen.io或任何其他工具中),如下所示,

识别用户并跟踪

登录:公司 ID、部门 ID、时间戳

book-open: company-id, dept-id, timestamp, book-id, book-name

page-view: company-id, dept-id, timestamp, book-id, book-name, page-id

车辆开始:公司 ID、部门 ID、时间戳、车辆 ID、车辆名称

我们是否应该只识别用户,并通过发送相关属性来跟踪事件

登录:公司 ID、部门 ID、时间戳

book-open:时间戳、书名、书名

page-view:时间戳,page-id

车辆开始:时间戳、车辆 ID、车辆名称

在第二种情况下,我们如何确定“page-view”事件是针对哪本书的?

任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: java events keen-io segment-io


    【解决方案1】:

    我肯定会建议发送 Keen 事件中的所有数据。您发送的数据越丰富,您将来能够进行的查询就越丰富。

    要回答您的具体问题,如果您为 page-view 事件发送图书 ID,您可以执行如下查询:

    var popular_books = new Keen.Query('count', { event_collection: 'page-view', timeframe: "this_2_months", group_by: 'book_id' });

    这将返回一个响应,显示您在每本书上获得了多少页面浏览量!

    【讨论】:

      【解决方案2】:

      您在 Keen IO 中的数据模型将有 4 个事件集合:

      1. 登录
      2. 开书
      3. 页面浏览量
      4. 车辆启动

      在每个事件中,您将拥有关于事件、用户、页面、书籍和任何其他相关上下文的数据层次结构。在 Keen IO 中“识别”用户没有单独的概念 - 您将在事件发生时及时描述用户以及您对他们的了解。

      例如,对于车辆启动事件,您可能有:

      vehicle-start-event = {
          company: "Airbnb",
          department: "Z5",
          vehicle : {
              name: "Blue Falcon",
              id: "8d2fe5",
          },
          user: {
              name: "Lara Croft",
              id: "923hniansd909niowoasdl"
          }
       }
      

      对于登录事件,您将拥有:

      login-event = {
          company: "Airbnb",
          department: "Z5",
          user: {
              name: "Lara Croft",
              id: "923hniansd909niowoasdl"
          }
      }
      

      您问,“我们如何确定“页面浏览”事件是针对哪本书的?”

      答案是在页面浏览发生时存储相关图书,就在事件上。每当您对综合浏览量进行查询时,您都会在活动中看到书名。

      pageview-event = {
          company: "Airbnb",
          department: "Z5",
          user: {
              name: "Lara Croft",
              id: "923hniansd909niowoasdl"
          },
          book: {
              name: "Where the Wild Things Are",
              id: "293as0d90fjw3"
          },
          page: {
              title: "Wild Thing",
              number: 4
          }
      }
      

      然后,您可以执行类似 count “pageviews grouped by book”之类的查询,以按图书查看所有的 pageviews,或计算特定用户或页面的 pageviews 并按图书分组,以查看他们属于哪本书。

      https://keen.io/blog/44565580467/event-data-vs-entity-data-how-to-store-user

      【讨论】:

        猜你喜欢
        • 2019-11-18
        • 1970-01-01
        • 1970-01-01
        • 2017-12-26
        • 1970-01-01
        • 1970-01-01
        • 2023-03-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多