本仓库包含重庆大学2024年秋大数据架构与技术课程的实验资源,基于学校提供的原开源项目进行了优化和扩展,包含最新的工具版本、简化的环境配置流程、以及对更便捷高效的开发工具(如 Jupyter Notebook)的全面支持。
在本人最初跟着原有开源教程进行实验时,发现原教程因时间久远而普遍出现链接失效,版本老旧和库包弃用等问题,同时步骤方面也有一些可供改善与优化的地方,故建此仓库解决上述问题。
-
最新的工具版本支持
- 替换原项目中的过时工具,使用最新版本的 Ubuntu (22.04)、Hadoop (3.3.6)、Spark (3.5.1)等,避免兼容性问题。
- 适配新的开发环境,推荐使用 Ubuntu 22.04 LTS (代替 CentOS)和 OpenJDK 1.8。
-
简化环境配置
- 专门提供更详细的环境配置指南,从学生视角出发帮助同学们更快更好搭建可运行环境。推荐配合原项目操作指南使用。
- 全程命令行操作,避免使用图形界面引发性能问题。如果对命令行操作不习惯,推荐使用辅助工具:Xshell 7 与 Xftp 7。
-
引入更便捷高效的开发工具
- 全面采用 Anaconda 和 Jupyter Notebook,简化开发流程,优化学习体验。
- 支持交互式编程、数据可视化、Markdown 文档记录等功能。
-
逐步优化的实验流程
- 每个实验均提供对应的详细说明及其相关代码,覆盖从环境搭建到具体应用的完整流程。
- 最终呈现的所有内容均通过了身边朋友以及同学的验证,可以放心地跟着指南一步步进行操作。
主要内容:
- 完成 Hadoop & Spark 单机版以及分布式环境搭建。
核心文件:
主要内容:
- 配置好 Anaconda 与 Jupyter Notebook。
- 使用 VSCode 远程连接至云服务器进行开发。
- 使用单机版 Hadoop & Spark 并结合 Jieba 分词完成词频统计。
- 对统计结果可视化呈现。
- 换用 Bert 分词完成词频统计并加以对比分析。
核心文件:
- 实验二环境搭建指南
- 数据分析与可视化代码:
WordCountUsingBert.ipynb
、WordCountUsingJieba.ipynb
主要内容:
- 使用分布式 Hadoop & Spark 完成手写数字识别大数据分析任务。
- 对于未经预处理的数据使用KNN进行可分性测试。
- 使用如 OpenCV 等进行数据预处理。
- 使用机器学习方法如逻辑回归LR与随机森林RF进行模型训练并对比分析。
- 使用深度学习方法如卷积神经网络CNN进行模型训练以提高准确率。
- 导出训练的模型并植入开发的网页中。
核心文件:
- 实验三环境搭建指南
- 数据集可分性测试:
ModelBasedKNN.ipynb
- 数据预处理:
DataPreprocessing.ipynb
- 机器学习模型训练:
LRStandalone.py
,RFLocal.ipynb
- 深度学习模型训练:
ModelBasedCNN.ipynb
- 开发的网页:
handwrittenWords_frontend