1.项目背景
Mars数据库性能测试参见某新能源车企车端数据存储项目性能测试。将车辆上各种信号定时上传到中心服务器,由于数字信号多,采集频率快,从而数据量大,造成数据上行带宽压力以及流量费用等问题,现需要能够将数据先行进行压缩后,再上传至中心服务器。测试Mars数据库的数据压缩率以及数据录入性能:指标要求1秒能够录入40条数据,同时保持较低资源占用率,数据压缩率至少在10:1。
一部新能源汽车需要需要处理的传感器信号在6000个左右,后期可能会增加1万个左右。这6000个信号中,最快的变量率在1ms,最慢的在1秒;数据量在1秒40万条记录左右,5分钟左右的数据,总量在7000万条。
2.数据准备
甲方给的是一段5分钟的parquet格式的数据量在194M大小的数据文件,同时还有一个数据信号列表数据。这194M parquet格式的数据也是压缩过后的数据,其采用时间、名称、值三列结构的表格式存储。下面先将数据解压、转换能够符合Mars数据库入库的格式的数据。
a. 借助Python脚本,将Parquet格式的数据转换成CSV格式的数据,转换成CSV格式的目的是为了下一步能够较好的读取