暑假周总结5

本周基本完成了北京市政信件案例中的 JavaWeb+ECharts 展示部分,同时正式启动“大型数据库技术大作业”的第二个项目——信息化领域热词分类分析及解释。相比前几周,这一周的工作更加接近一个完整的软件项目,不再只是运行 Hadoop 命令或者编写单独的 SQL,而是需要同时考虑数据、后端和前端如何配合。

在数据可视化方面,我学习了 ECharts 的基本使用方法。目前已经实现了柱状图、折线图和饼图等基础图表。后端通过 Spring Boot 查询 MySQL 中的数据并返回 JSON,前端通过 Ajax 请求接口,再把返回结果转换为 ECharts 所需要的数据格式。刚开始的时候图表一直显示为空,后来通过浏览器开发者工具检查 Network 请求,发现后端返回的是对象数组,而前端代码按照两个普通数组进行读取,因此数据格式不匹配。调整 JavaScript 代码后成功显示。

北京市政信件案例做到这里,基本已经形成“网络数据 → MapReduce → Hive → Sqoop → MySQL → Spring Boot → ECharts”的完整流程。这对于第二个热词项目帮助很大,因为两个项目底层的数据处理思路其实比较相似。

随后我开始设计“信息化领域热词分类分析及解释”项目。目前暂定分类包括人工智能、大数据、云计算、网络安全、数据库、软件开发、物联网等类别。数据来源计划主要选择科技新闻和技术网站。首先由爬虫定期获取文章标题、正文、发布时间、来源和 URL,然后对正文进行中文分词和关键词提取,再根据热词出现次数、文章数量和时间等因素计算热度。

本周还尝试了中文分词。我使用了现有中文分词工具对文章标题和正文进行处理,并添加停用词过滤。最开始得到的关键词中存在“我们”“这个”“可以”等没有分析价值的高频词,后来通过停用词表进行过滤,结果明显合理了一些。

自动分类方面目前采用课程要求中比较容易实现的“关键词规则+权重”方法。例如人工智能类别设置“人工智能、AI、机器学习、深度学习、大模型”等关键词,根据标题和正文中的匹配次数计算分值,最终把文章划分到得分最高的分类。虽然这种方法没有机器学习分类模型那么复杂,但可解释性强,也比较适合当前课程项目。

本周共学习约 25 小时,其中 ECharts 与 JavaScript 约 6 小时,Java 后端编码约 5 小时,网络爬虫和数据采集约 5 小时,中文分词与关键词提取约 5 小时,解决接口和图表问题约 4 小时。

Redis 方面继续学习缓存实际应用。我尝试把热门词查询结果缓存到 Redis,并设置过期时间。第一次调用接口从 MySQL 查询,后续查询直接读取 Redis。虽然当前数据规模还体现不出明显性能差距,但至少把之前学习的 Redis 知识真正放到了项目中。

下周重点继续完成热词自动分类、热度计算和中文解释功能,同时研究如何给热词关联近期新闻文章,并为每篇文章保存可以点击访问的原始 URL。

posted @ 2026-08-28 16:12  时酒  阅读(8)  评论(0)    收藏  举报