系统使用收集网剧的时长统计,评分统计,电视剧集,用户统计,集数统计,标签统计等行为数据的公开数据集,来构建网剧的数据分析。用户可以通过查询条件的方式,让系统实现对相关数据的筛选和查询,并将查询结果在前端以图表的可视化方式展示出来,进而帮助用户理解数据。系统通过对用户数据的分析与挖掘,实现了对于网剧的解析和分类,系统提供了直观的爱奇艺网站网剧数据展示界面,查看到相应的分析结果。数据采集功能实现对爱奇艺网站平台公共数据的采集,识别数据来源、区分数据类型,并进行数据完整性的验证,确保数据的准确性以及可靠性。
分布式存储功能实现对已经处理过的数据进行分布式存储,采用MySQL、HDFS进行对数据的存储,以及支持异构端存储和具备高容错性,高可用性以及易扩展性。数据分析功能基于Spark分布式计算框架,实现对存储的数据进行了数据分析和挖掘。
数据可视化功能使用ECharts、Vue、BootStrap等前端技术,对数据分析结果进行了可视化展示,以图表等可视化方式将数据展示,方便了用户分析和观察。系统功能模块图如图3-1所示。
图3-1 系统功能模块图
在数据可视化面板界面可以查看到所有数据的详情。数据看板集成了多个功能模块,为用户提供直观的数据展示和分析能力。数据可视化模块的实现依赖于多种技术的协同工作,使用Python编写的爬虫程序负责从爱奇艺网站上抓取海量网剧和评论数据,将这些非结构化数据导入到Hadoop分布式文件系统中进行存储和管理,利用Spark框架对这些大规模数据进行快速的计算和分析,将处理后的结果存入Hive数据库中以方便后续查询和检索,后端采用Django框架搭建Web应用服务器,前端则使用Vue.js库来创建交互式界面,并通过Echarts图表库绘制各种可视化图形。
该数据可视化面板实现了多个关键功能模块,包括时长统计、评分统计、用户总数显示、电视剧总数量显示、电视剧集展示、标签统计、用户性别比例统计和集数统计。每个模块都直观地展示了不同的数据维度:时长统计柱状图显示了各时间段内的观看时长分布;评分统计雷达图呈现了不同评分区间的用户评价情况;用户总数和电视剧总数分别以数字形式清晰展示;电视剧集模块通过缩略图和标题展示了部分热门剧集;标签统计云图则以词频大小表示了各类标签的出现频率;用户性别比例环状图直观对比了男女用户的占比;集数统计饼图则展示了不同集数的电视剧所占的比例。可视化效果图如下所示:
图5-1 数据可视化看板