Csv 将批量数据导入Keen.io,其中一列为字符串化JSON

Csv 将批量数据导入Keen.io,其中一列为字符串化JSON,csv,data-modeling,keen-io,Csv,Data Modeling,Keen Io,我有大约400万行数据要导入Keen.io。非规范化的CSV结构看起来像是附加的。。。“dimensions”列是一个字符串化的JSON对象。我看到Keen.io有一个CSV批量导入器。进口商将如何处理“尺寸”栏?它会把它变成一个物体吗?你对我应该如何处理这个问题有什么建议?谢谢 首先让我们以的形式构造数据,然后准备将其加载到Keen中 您共享的链接看起来有一个关于鱼类的数据表(每条鱼一行)和另一个关于法规的数据表。我假设,如果您只是试图将这些表存储在某个地方,您会使用SQL db或类似Fire

我有大约400万行数据要导入Keen.io。非规范化的CSV结构看起来像是附加的。。。“dimensions”列是一个字符串化的JSON对象。我看到Keen.io有一个CSV批量导入器。进口商将如何处理“尺寸”栏?它会把它变成一个物体吗?你对我应该如何处理这个问题有什么建议?谢谢

首先让我们以的形式构造数据,然后准备将其加载到Keen中

您共享的链接看起来有一个关于鱼类的数据表(每条鱼一行)和另一个关于法规的数据表。我假设,如果您只是试图将这些表存储在某个地方,您会使用SQL db或类似Firebase的东西。既然您有兴趣将它们加载到Keen IO中,我假设您有一些与数据相关的操作,您有兴趣分析这些数据,这就是您所说的400万行数据

加载数据的第一步是确定您感兴趣记录的与这些事件相关的操作

在本例中,假设每次查看或保存鱼或规则时都在跟踪。我们的活动集合将是:

  • 观赏鱼
  • 拯救鱼类
  • 视图规则
  • 保存规则
每次这些事件发生时,我们都会以这样的格式将其发布到Keen中。我们基本上创建了一个对象,该对象具有有关鱼类、法规、用户等的各种相关属性:

//使用要发送的属性创建事件数据对象
//这是一个使用Keen IO JavaScript SDK发送事件的示例,但是您可以从iOS、Android或后端发布事件。
//此示例是当某人查看有关鱼的详细信息时发生的事件
var事件={
gid:“be68ea99-8f3b-9s9f”,
鱼:{//关于鱼的详细信息
id:“168”,
物种名称:“Amberjack,较小”
},
用户:{//有关该用户的详细信息
id:“029OMSLDSF9AADFM”
},
应用程序类型:“web”、“iOS”、“Android”
基恩:{//事件发生的时间
时间戳:新日期().toISOString()
}
};
//将其发送到“查看鱼”收藏

client.addEvent(“查看鱼”,事件)谢谢你的回复。根据csv列标题,Keen.io中的数据最终会是什么样子?我已经开始将数据以您上面建议的类似格式传输到Keen.io。我想将历史数据输入到那些相同的集合中,但我担心导入工具无法以正确的格式导入。我会先在集合中运行一些测试,如“import_test”,以确保事情与您期望的一样。首先需要将字符串化的json转换为列标题和值。一旦您这样做并导入csv,它就应该以JSON对象的形式结束,如我上面展示的示例所示。您可以将Keen中存储的每个事件看作是一个嵌套的JSON对象。所以像
fish.name
这样的列标题将以:{fish:{name:''}}结束,谢谢!是的,没错!我注意到您的数据中有逗号(例如“Amberjack,Lesser”)。您必须弄清楚如何使用引号,以便正确解释CSV。祝你好运!