DataFlux是上海驻云自研发的一套大数据统一分析平台,可以通过对任何来源、类型、规模的实时数据进行监控、分析和处理,释放数据价值。
DataFlux中有多种图表类型,表格就是其中之一,这个图表就是将数据以表格的形式进行展示,它具有三种模式,分别是时序模式、集合模式以及分组模式,三种模式是以三个不同维度来查看数据,接下来让我们看看这三种模式的区别。
创建表格
首先让我们先从创建表格图表开始,以下图片是创建表格图表的界面:
可以看到,图表数据的查询支持指标选择模式和sql模式,然后将每个查询的数据进行合并显示组合成一个表格图表。默认表格图表就是时序模式,假如我们需要切换模式,可以在设置中选择其他模式进行切换,如下图:
时序模式
时序模式,表格图表默认就是该模式,数据是基于时间的。在该模式下,我们多个查询出来的数据会以时间为维度进行合并,将各个查询返回的数据列作为表的列名,注意,一个查询在分组后可能返回多个列,比如下图的第一个查询,根据医院进行分组,则返回了三个数据列:
通过上图,我们还可以看到,第二个查询也当做一个列放到最后,因为它没有进行分组,所以只有一列数据,假如它也进行了分组,那它返回的多列也会依次放在后面。这就是我们的时序模式,在时序模式下,还有一个特性,它支持相同时间的数据显示与合并,假如第一个查询返回的数据和第二个查询返回的数据分别如下:
这种数据的情况下,我们将通过我们的算法,将多个查询分别当做列并根据时间进行合并,同时保留重复数据,那最终我们的得到的数据结构如下:
从而保证表格图表数据的完整性。
聚合模式
聚合模式是我们表格图表的第二个显示模式,聚合模式每条查询将会聚合成一个数据点,并与查询名称一同作为一条记录显示在表格中。如下图:
在该模式下,每条查询语句在指标查询选择的UI下最终返回的数据点永远只有一个,但在SQL下,因为无法控制用户返回的数据结构,所以只会去取最后一个时间序列下的最后一个数据点作为它的最终数据。在聚合模式下,分组是无效果的,即使查询确实返回了多个序列数据,但是最终渲染的只有一个数据点,每个查询将于它返回的数据点的数字组成表格图表的一行记录。
分组模式
分组模式是我们表格图表中的第三个显示模式,该模式是通过分组名称进行数据合并,以实现多个指标在相同分组下的数据对比。如下图:
我们可以看到,第一个查询和第二个查询分别使用了“医院”和“症状”两个Tag,第三个查询虽然是直接写的SQL,但是它还是加了一个“省份”的分组,这个时候,结果集会根据算法先将所有的Tag当成表格的数据列放到前面,然后再将每个查询作为一个列放在Tag列的后面,方便我们在表格上可以清楚看到各个Tag进行组合后的数据对比。
在该模式下,还有一种查询,那就是没有Tag的查询,那该查询会直接当做一个数据列显示在后面,起数据将于无Tag的列进行合并,如下图的第二和第三个查询:
假如查询中有两个查询指标相同,并且别名也设置相同,此时在后面出现的同名列名中会标记其查询位置“#位置”,如下图,第二个查询和第三个查询别名相同,则在第三个查询名称前面会出现一个位置标识:
最后,我们表格图表在时序模式和分组模式下还支持分页查询,多个查询条件只要有一个查询时有分页的,这下面的分页会显示下一页,但是假如某个查询在是没分页的,那当我们点击分页后,将看不到无分页数据的查询记录。