目录
2.解决问题java.lang.NullPointerException: Value at index 6 is null
本篇文章将介绍035.用户访问session分析-session聚合统计之本地测试。
本地测试问题以及解决方案
1.在task表中插入一条数据
insert into task(task_id,task_name,task_param) values(1,'测试01','{"startAge":["10"],"endAge":["50"],"startDate":["2019-03-05"],"endDate":["2019-0305"]}');
2.解决问题java.lang.NullPointerException: Value at index 6 is null
测试spark版本:3.1.1
解决方案
2.测试插入计算的访问时间和步长
测试数据
确保startDate和endDate为数据测试当天的时间。
计算的数据
(有问题的数据)
(没有问题的数据)
解决方案
修改数据类型
方便你我他
//计算各个访问时长和步长的占比 double visit_length_1s_3s_ratio = NumberUtils.formatDouble((double) visit_length_1s_3s/session_count,2); double visit_length_4s_6s_ratio = NumberUtils.formatDouble((double)visit_length_4s_6s/session_count,2); double visit_length_7s_9s_ratio = NumberUtils.formatDouble((double)visit_length_7s_9s/session_count,2); double visit_length_10s_30s_ratio = NumberUtils.formatDouble((double)visit_length_10s_30s/session_count,2); double visit_length_30s_60s_ratio = NumberUtils.formatDouble((double)visit_length_30s_60s/session_count,2); double visit_length_1m_3m_ratio = NumberUtils.formatDouble((double)visit_length_1m_3m/session_count,2); double visit_length_3m_10m_ratio = NumberUtils.formatDouble((double)visit_length_3m_10m/session_count,2); double visit_length_10m_30m_ratio = NumberUtils.formatDouble((double)visit_length_10m_30m/session_count,2); double visit_length_30m_ratio = NumberUtils.formatDouble((double) visit_length_30m/session_count,2); double step_length_1_3_ratio = NumberUtils.formatDouble((double) step_length_1_3/session_count,2); double step_length_4_6_ratio = NumberUtils.formatDouble((double) step_length_4_6/session_count,2); double step_length_7_9_ratio = NumberUtils.formatDouble((double) step_length_7_9/session_count,2); double step_length_10_30_ratio = NumberUtils.formatDouble((double)step_length_10_30/session_count,2); double step_length_30_60_ratio = NumberUtils.formatDouble((double)step_length_30_60/session_count,2); double step_length_60_ratio = NumberUtils.formatDouble((double) step_length_60/session_count,2);