如何 'flatten' 由模式发现过程 (SDP) 创建的 dashDB 中的 table?
how to 'flatten' the table in dashDB created by the schema discovery process (SDP)?
我使用 Cloudant 模式发现过程 (SDP) 在 dashDB 中创建并填充了 table。 Cloudant 中的数据本质上是时间序列:
...
{ "date": "20150101T00:00:00", "type": "temperature", "reading": "21" }
{ "date": "20150101T00:00:00", "type": "windspeed", "reading": "15" }
{ "date": "20150101T00:00:10", "type": "airhumidity", "reading": "51" }
{ "date": "20150101T00:00:10", "type": "temperature", "reading": "22" }
...
当此数据被推送到 dashDB 时,它保持类似的结构,即
DATE | TYPE | READING
------------------+---------------+---------
20150101T00:00:00 | temperature | 21
20150101T00:00:00 | windspeed | 15
20150101T00:00:10 | airhumidity | 51
20150101T00:00:10 | temperature | 22
但是,我希望这些数据位于 'flatter' 结构中,即
DATE | TEMPERATURE | WINDSPEED | AIRHUMIDITY
------------------+---------------+--------------+-------------
20150101T00:00:00 | 21 | 15 | -
20150101T00:00:10 | 22 | - | 51
如何展平 SDP 填充的数据?
一个选项是创建一个 Bluemix 服务,该服务在 cron 计时器上运行 SQL 代码以将数据移动到您想要的结构中。
有关使用 spring 引导和 groovy 的示例项目,请参见 here。
我使用 Cloudant 模式发现过程 (SDP) 在 dashDB 中创建并填充了 table。 Cloudant 中的数据本质上是时间序列:
...
{ "date": "20150101T00:00:00", "type": "temperature", "reading": "21" }
{ "date": "20150101T00:00:00", "type": "windspeed", "reading": "15" }
{ "date": "20150101T00:00:10", "type": "airhumidity", "reading": "51" }
{ "date": "20150101T00:00:10", "type": "temperature", "reading": "22" }
...
当此数据被推送到 dashDB 时,它保持类似的结构,即
DATE | TYPE | READING
------------------+---------------+---------
20150101T00:00:00 | temperature | 21
20150101T00:00:00 | windspeed | 15
20150101T00:00:10 | airhumidity | 51
20150101T00:00:10 | temperature | 22
但是,我希望这些数据位于 'flatter' 结构中,即
DATE | TEMPERATURE | WINDSPEED | AIRHUMIDITY
------------------+---------------+--------------+-------------
20150101T00:00:00 | 21 | 15 | -
20150101T00:00:10 | 22 | - | 51
如何展平 SDP 填充的数据?
一个选项是创建一个 Bluemix 服务,该服务在 cron 计时器上运行 SQL 代码以将数据移动到您想要的结构中。
有关使用 spring 引导和 groovy 的示例项目,请参见 here。