Nanosai Studio数据源

时间:2020-01-09 10:35:43  来源:igfitidea点击:

为了使Nanosai Studio分析和可视化数据,它必须从数据源获取该数据。在本文中,我们将看到Nanosai Studio可以使用什么类型的数据源,以及Nanosai Studio可以理解的数据格式。

数据源位置

Nanosai Studio当前可以通过以下位置连接到数据源:

  • 在本地文件中
  • URL标识的远程Web服务。

我们打算将来增加更多的数据源位置。如果我们需要Nanosai Studio不支持的数据源位置,请联系Nanosai。也许我们可以为我们提供帮助。

数据流

Nanosai Studio认为数据源提供的数据是记录,对象或者消息的流。数据流中的每个记录都必须有一个索引。 Nanosai Studio使用此索引来跟踪已分析的流数量。因此,下一次当Nanosai Studio连接到数据源时,它将仅使用提供的索引比使用的最新记录的索引高的数据。这是一个例子:

如果Nanosai Studio正在连接到本地文件,并且不时将新记录添加到该文件,则Nanosai Studio可以检测到该文件中尚未分析的部分。例如,如果读取了文件并且文件的最后一个索引为99,则Nanosai Studio将在下次读取文件时尝试从索引100开始。如果该文件具有索引从100到100或者更高的记录,则将分析这些记录,并记录该文件的最新索引,以供下次重新读取该文件时使用。

资料格式

当数据源将数据返回到Nanosai Studio时,它不需要每次都提供总流中的所有数据。数据源可能仅返回总数据流的一部分,通常是自上次与数据源的连接以来新的数据。总数据流的一部分称为流间隔。有时,流间隔也称为记录的"块","批"或者"窗口"。数据源返回的数据必须描述其返回的时间间隔的边界。

当前,Nanosai Studio仅支持一种数据格式,这就是我们所说的" CSV流"格式。 CSV流的格式如下:

0,4,0
a,0,95
a,1,100
a,2,103
a,3,115
a,4,110

CSV流的这一小间隔包括一个流信息行(第一行)和N条记录行。每个部分将在以下各节中进行描述。

流媒体信息

第一行是流信息行。这条线描述了数据源返回的记录间隔的边界。流信息行包含三个值:

  • 第一个索引:CSV流中数据中第一个记录的全局索引。
  • 最后一个索引:CSV流中数据中最后一个记录的全局索引。
  • 索引方案。

第一个索引必须是数据源返回的时间间隔内第一个记录的全局索引。在上面的示例中,第一条记录的索引为0。如果Nanosai Studio已经使用了100条全局索引从0到99的记录,那么第一条记录的全局索引将为100。

最后索引必须是数据源返回的时间间隔中最后一条记录的全局索引。在上面的示例中,最后一个索引是4.

索引方案值可以采用三个可能的值0、1或者2. 下面将说明这些值。

索引方案值0表示"隐式索引方案"。这意味着,每个记录不包含显式索引,但是索引从第一个索引开始,并针对每个记录递增(例如0、1、2、3等)。

标引方案值1表示"相对标引方案"。这意味着,每个记录的首个值(在CSV数据的每一行上)是一个相对于数据间隔的第一个索引的索引。看这个例子:

20,24,1
0,a,0,95
1,a,1,100
2,a,2,103
3,a,3,115
4,a,4,110

请注意,每个数据记录(在第一行之后,即流信息行之后)都包含一个索引。还要注意,流信息行中的索引方案值设置为1. 这意味着,每个记录的索引都应解释为相对于流信息行中指定的第一个索引值。因此,第一条记录的索引为0表示20 + 0 =20。第二条记录的索引为1表示20 + 1 = 21,依此类推。

标引方案值2表示"绝对标引方案"。这意味着每个记录都有一个显式索引,并且该值是该记录的实际全局索引。这是一个例子:

20,24,2
20,a,0,95
21,a,1,100
22,a,2,103
23,a,3,115
24,a,4,110

数据记录

数据记录的确切含义取决于CSV流的语义。 Nanosai Studio理解以下记录语义:

[index,] data series ID, x value, y value
[index,] data series ID, value

第一个记录结构用于X,Y型图表(例如折线图)。数据系列ID指定给定记录所属的行。因此,可以通过为记录指定不同的数据系列ID值来在同一条线图中显示多条线。

第二个记录结构用于饼图。汇总每个数据系列ID的值,并将其可视化为饼图的一部分。

第二种记录结构也可以用于条形图,但是我们可能必须重新设计条形图的记录结构,因此请记住这一点。