1. 项目背景与核心价值
诗词作为中华文化瑰宝,其数字化管理一直存在数据分散、检索低效的问题。这个毕业设计项目采用SpringBoot+大数据技术栈,构建了一个支持千万级数据处理的诗词知识管理系统。我在实际开发中发现,传统诗词网站普遍存在三个痛点:一是数据停留在关系型数据库层面,无法实现语义化搜索;二是缺乏作者时空轨迹分析能力;三是用户交互体验单一。本项目通过引入Elasticsearch全文检索、Spark词频分析、D3.js可视化等技术,实现了从数据存储到智能推荐的完整闭环。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构设计解析
2.1 整体技术选型
采用分层架构设计:
- 前端:Vue3 + Element Plus(响应式布局)
- 后端:SpringBoot 2.7 + MyBatis-Plus(快速CRUD开发)
- 大数据组件:
- Elasticsearch 8.x(全文检索)
- Spark 3.2(离线分析)
- Redis 7(缓存热点数据)
- 辅助工具:
- Jieba分词(中文处理)
- Echarts(基础图表)
- D3.js(高级可视化)
特别注意:Elasticsearch需要单独配置中文分词插件,推荐使用IK Analysis或THULAC
2.2 核心数据处理流程
-
原始数据采集:
- 使用Python爬虫抓取古诗文网等公开数据源
- 数据清洗(去除重复、补全作者朝代信息)
- 结构化存储到MySQL
-
大数据处理:
java复制// Spark词频统计示例 JavaRDD<String> lines = sc.textFile("hdfs://poems.txt"); JavaRDD<String> words = lines.flatMap(line -> Arrays.asList(line.split(" ")).iterator()); JavaPairRDD<String, Integer> counts = words.mapToPair(word -> new Tuple2<>(word, 1)) .reduceByKey((a, b) -> a + b); -
检索优化:
