目录
JavaHadoop足球赛事数据网
摘要
随着互联网与移动互联网迅速普及,网络上的信息数量相当庞大,人们对获取感兴趣的数据分析需求越来越大,足球赛事数据网成为一个热门。然而足球赛事数据网的表示相当复杂,己有的相似度计算方法与推荐算法都各有优势,导致单一的相似度计算方法与推荐算法无法合适地应用于足球赛事数据网中。大量的足球赛事数据网数据的管理运营随着数据量的增长也变得越来越复杂,因此,如何综合各种算法的优势给用户可靠的足球赛事数据网监测结果,并保证用户能访问到正确的监测数据成为设计中需要解决的一个重要问题。
基本实现了足球赛事数据网应有的主要功能模块,本系统的主要功能:首页、系统用户、赛事赛区管理、赛事信息管理、球员信息管理、实时赛况管理、系统管理、通知通知公告管理、资源管理(足球资讯、资讯分类)等操作。本系统采用了B/S结构,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具选择My eclipse来进行系统的设计,以便更方便地处理大数据。对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了对于管理员与用户双赢。
关键词:足球赛事数据网 ;mysql数据库;Hadoop框架.
JavaHadoop Football Event Data Network
Abstract
With the rapid popularization of the Internet and mobile Internet, the amount of information on the network is quite large, and the demand for data analysis that people are interested in is growing. The football game data network has become a hot spot. However, the representation of the football match data network is quite complex, and existing similarity calculation methods and recommendation algorithms each have their own advantages, resulting in a single similarity calculation method and recommendation algorithm not being suitable for application in the football match data network. The management and operation of a large amount of football match data network data has become increasingly complex with the growth of data volume. Therefore, how to integrate the advantages of various algorithms to provide users with reliable football match data network monitoring results and ensure that users can access the correct monitoring data has become an important problem that needs to be solved in the design.
The main functional modules of the football match data network have been basically implemented. The main functions of this system include homepage, system users, match area management, match information management, player information management, real-time match situation management, system management, notification and announcement management, resource management (football information, information classification), and other operations. This system adopts a B/S structure and adopts a browser interactive mode for all business modules. MySQL is chosen as the system's database, and My Eclipse is chosen as the development tool for system design to facilitate the processing of big data. After testing the system, the program logic and code were improved. At the same time, it ensures that all programs in the system can run normally, all functions can be operated, and the system has a good operating experience, achieving a win-win situation for both administrators and users.
Keywords: Football match data network; MySQL database; Hadoop framewor
1 绪论
1.1 研究背景
JavaHadoop足球赛事数据分析平台的诞生,深深植根于大数据技术和云计算环境在全球范围内的蓬勃发展及其在体育信息化进程中的广泛应用。面对日益丰富的全球足球赛事体系所带来的海量、多维、非结构化的数据洪流,包括但不限于比赛成绩、球员技能指标、战术配置分析以及观众行为偏好等信息,传统数据处理手段已无法满足高效存储和深度分析的迫切需求。
在此背景下,结合Java编程语言的稳定性能优势及其庞大且活跃的开发者社区资源,以及Hadoop作为一款高度容错、可扩展的开源大数据处理框架所具备的强大分布式计算能力,研发JavaHadoop足球赛事数据网,旨在充分运用Java技术和Hadoop生态系统的核心功能,完成足球赛事数据的高效采集、存储、处理与智能分析。这一平台旨在赋能体育决策者、媒体机构以及广大球迷群体,提供实时、精确的数据支持,从而全面提升赛事管理效能、竞技训练成果、新闻报道质量和用户体验,进而积极推动足球产业乃至整个体育大数据生态系统的持续创新与进步。
1.2研究意义
JavaHadoop足球赛事数据网的研发与应用体现了大数据与云计算技术在体育领域的深度融合与创新突破,它紧贴足球赛事大数据处理与智能分析的实际需求,通过集成Java语言的高效稳定性能与Hadoop分布式计算框架的优势,成功攻克了海量、高频更新赛事数据的存储、处理与分析挑战,实现了数据的实时捕获、安全存取、快速搜索及深度分析。
此数据网的构建,如同一面透视镜,全方位、立体化地揭示了足球赛事内部运行机制,从球员表现到战术部署,再到比赛结果预测,为教练团队量身打造了科学精准的决策依据,有力提升了球队训练绩效和赛场竞争力,同时也为赛事组织者提供了精细化管理的数据基础,从而优化资源配置,提高了赛事整体运营水准。
同时,JavaHadoop足球赛事数据网重塑了球迷的观赛体验,透过实时数据分析和生动直观的可视化展现,加深了观众对赛事内核的理解与感知,增强了参与感与观看享受;同时,也为媒体从业人员提供了丰富的深度报道素材和专业评判基准,有力推动了新闻报道质量和专业性的发展。
综上所述,JavaHadoop足球赛事数据网的建设与推广,既是中国足球产业数字化、智能化转型升级的重要里程碑,也是全球范围内足球乃至整个体育大数据应用领域的先行示范和宝贵经验,对深化体育大数据生态建设、促进体育事业的创新发展起到了积极而深远的影响。
1.3 论文结构与章节安排
论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对网站需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:
第一章:引言。第一章主要介绍了课题研究的背景,研究意义和本文的主要工作。
第二章:系统需求分析。第二章主要从系统的用户、功能等方面进行需求分析。
第三章:系统设计。第三章主要对系统框架、系统功能模块、数据库进行功能设计。
第四章:系统实现。第四章主要介绍了系统框架搭建、系统界面的实现。
第五章:系统测试。第五章主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结。
2 JavaHadoop足球赛事数据网系统析
系统需求分析是系统开发的一个关键环节,它在系统的设计和实现上起到了一个承上启下的位置。系统需求分析是对所需要做的系统进行一个需求的挖掘,如果分析的准确可以精准的解决现实中碰到的问题。如果分析不到位会影响后期系统的实现。一个系统的优秀程度需求分析也是占据了非常大的比例,如果需求分析不到位,后面的系统设计要实现就是一个偏离导航的设计。
2.1 可行性分析
系统可行行分析是对系统对系统可行性进行一个探讨。在探讨系统的可行性上我们主要从技术上的可行性和经济上的可行性以及法律层面的可行性上进行分析,如果三个层面度通过,我们则认为系统是比较可行的。
2.1.1 技术可行性分析
技术上通过Python爬虫和大数据处理流程,结合Hive、Sqoop、和MySQL等相关技术,从技术本身的角度上讲已经相当成熟,不需要考虑其本身的问题,从服务器流量以及并发的角度上讲,由于系统面向的群体为社会居民,用户群体适中,根据服务器和计算能力的发展现状来看不会成为系统不利因素。再者就是开发人员本身的水平问题,笔者在实习期间已经经历过3~5个项目,也独立完成过项目,因此在技术上还是比较有信心,加上有指导老师的协助指导,相信技术上不存在问题。
2.1.2经济可行性分析
本项目开发的初衷就是为了节约,因为系统开发的所有过程都是我自己开发的,而且在开发过程使用到的技术也都是市面上常见的容易操作的,所以不需要请专业的人士花资金来进行系统的开发,而且在项目开发的过程中我也学到了更多的知识。开发的这个软件可以在网络中进行免费的下载,对计算机的软硬件没有很高的要求,因此这个项目是非常实惠的,在经济方面是完全可性的。
2.1.3操作可行性分析
操作可行性也就是系统的可用性,一个系统的操作是否容易决定着这个系统的使用度,在系统的操作方面的设计我都是采取简洁易懂的方式,操作的整个菜单界面整齐有序,所有的功能都有序的排列,不会出现重叠或者需要转换的现象,用户想要哪方面的操作都可以直接进行操作,所以该系统任何人都可以进行操作,不需要有相关专业的技术这样用户在操作起来就容易很多。
2.2 系统功能分析
2.2.1 功能性分析
JavaHadoop足球赛事数据网我划分为了普通用户模块和管理员模块这两大部分。
普通用户模块:
- 注册登录:用户可以随时进入到系统中,对系统中的信息浏览,但是想要实现交流以及领取等操作,就必须有这个系统的账号,如果没有账号的话,可以注册成员用户进行相关的操作,同时用户还可以通过“我的”这以按钮对个人信息以及操作的信息进行管控。
(2)个人资料:演讲者在登录以后可以修改自己的个人资料以及对自己账号登录的密码进行修改;
(3)足球资讯:在前台点击“足球资讯”可以查看到所有的新闻信息,输入关键字可以进行搜索。可以进行点赞+评论+收藏等。
(4)通知公告:点击“通知公告”这个菜单,可以查看到系统中所有添加的通知公告,如果想要了解某一通知公告信息的详细信息,点击后面的“详情”会进入详情查看界面,可以对通知公告信息进行详情查看、评论等操作;
(5)赛事信息:点击“赛事信息”这个菜单,可以查看到自己的赛事信息,如果想要了解某一赛事信息的详细信息,点击后面的“详情”会进入详情界面;可以进行点赞+评论+收藏等。
(6)球员信息:点击“球员信息”这个菜单,可以查看到自己的球员信息,如果想要了解某一球员信息的详细信息,点击后面的“详情”会进入详情界面;可以进行点赞+评论+收藏等。
(7)实时赛况:点击“实时赛况”这个菜单,可以查看到自己的实时赛况信息,如果想要了解某一实时赛况的详细信息,点击后面的“详情”会进入详情界面;可以进行点赞+评论+收藏等。
(8)我的账户:在前台点击“我的”下面的“我的账户”可以对个人资料+密码修改+自己收藏的信息进行管控。
管理员管理模块:
- 系统用户管理:JavaHadoop足球赛事数据网中的管理人员在“系统用户”这一菜单是中可以对普通用户、管理员进行管控。
(2)资源管理:进入后台首页工具栏点击“资源管理”这个按钮可以查看所有足球资讯、新闻分类等信息,可以进行详情查看、删除、查看评论等操作。
(3)通知公告管理:点击“通知公告管理”这个菜单,可以查看到系统中所有轮播图、通知公告信息等信息,可以进行详情查询,添加、删除等操作。
(4)系统管理:进入后台首页工具栏点击“系统管理”这个按钮可以查看所有轮播图信息,可以进行详情查看、删除、查看评论等操作。
(5)个人信息:管理员和员工点击“个人信息”按钮,可以对个人的头像、昵称、手机号码等信息进行更新。
(6)修改密码:管理员和员工点击“修改密码”按钮,可以对登录密码进行更改,首先输入原密码,然后再输入新密码和确认密码,当原密码正确,输入两次新密码一致,则修改成功,否则给出错误提示信息。
2.2.2 非功能性分析
JavaHadoop足球赛事数据网的非功能性需求比如JavaHadoop足球赛事数据网的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:
表3-1JavaHadoop足球赛事数据网非功能需求表
安全性 | 主要指JavaHadoop足球赛事数据网数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指JavaHadoop足球赛事数据网能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响JavaHadoop足球赛事数据网占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着JavaHadoop足球赛事数据网的页面展示内容进行操作,就可以了。 |
可维护性 | JavaHadoop足球赛事数据网开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
2.3 系统用例分析
JavaHadoop足球赛事数据网的完整UML用例图分别是图2-1、和图2-2。
图2-1就是普通用户角色的用例展示。
图2-1 JavaHadoop足球赛事数据网普通用户角色用例图
图2-2就是管理员角色的用例展示。
图2-2 JavaHadoop足球赛事数据网管理员角色用例图
2.4 系统流程分析
系统流程是用一些特定的符合和线条来进行演示用户在使用系统时的过程,在进行系统分析的时候,业务流程可以帮助开发人员更好的理解业务,发现错误,完善系统。
2.4.1 数据新增流程
用户成功登入系统后就能够实现增加数据的操作,增加数据的编号由系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证通过后即可完成数据新增,数据新增的流程图如下图2-3所示。
图2-3数据新增流程图
2.4.2 数据删除流程
如果系统里面存在一些没有用的数据,相关的管理人员还可以对这些数据进行删除,数据删除时流程图如下图2-4所示。
图2-4 数据删除流程图
2.5本章小结
本章主要通过对JavaHadoop足球赛事数据网的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个JavaHadoop足球赛事数据网要实现的功能。同时也为JavaHadoop足球赛事数据网的代码实现和测试提供了标准。
3 JavaHadoop足球赛事数据网总体设计
3.1系统结构设计
软件系统的功能是多样的,在软件设计的过程中分层进行的思维是极为重要的,这样的思维可以在软件开发的过程中很大程度降低层之间的耦合度,这一点是符合“低耦合、高内聚”的软件设计原则的。因此,可以把JavaHadoop足球赛事数据网划分为显示层、数据层和业务层。在系统的架构中,为了方便上层调用完成相应的功能,每个层次都会为其对应的上层提供相应的接口。
系统结构图如下所示。
图4-1系统结构图
1.显示层
此层主要是为用户提供计算机交互的UI界面,它根据用户的相应操作来提供相应的逻辑处理。
2.数据库层
数据库不仅是对软件所涉及的实体映射,而且也是系统读取和处理数据的关键所在。本系统的整个操作流程设计都是围绕着数据库里面的数据所展开的。
3.业务层
主要是通过系统的业务层中的业务逻辑来实现业务需求,依据相应的需求,剖析实现的策略和对应的业务逻辑,其优劣,在很大程度上决定了软件的质量,所以,整个系统成败的主要原因在于业务的逻辑实现。
3.2系统功能模块设计
本章主要讨论的内容包括JavaHadoop足球赛事数据网的功能模块设计、数据库系统设计。
3.1.1整体功能模块设计
在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本JavaHadoop足球赛事数据网中的用例。那么接下来就要开始对本JavaHadoop足球赛事数据网的架构、主要功能和数据库开始进行设计。JavaHadoop足球赛事数据网根据前面章节的需求分析得出,其总体设计模块图如图3-1所示。
图3-1 JavaHadoop足球赛事数据网功能模块图
3.2 数据库设计
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
3.2.1 数据库概念结构设计
下面是整个JavaHadoop足球赛事数据网中主要的数据库表总E-R实体关系图。
图3-6 JavaHadoop足球赛事数据网总E-R关系图
3.3.2 数据库逻辑结构设计
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | competition_area_id | int | 10 | 0 | N | Y | 赛事赛区ID | |
2 | competition_area | varchar | 64 | 0 | Y | N | 赛事赛区 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | event_information_id | int | 10 | 0 | N | Y | 赛事信息ID | |
2 | event_name | varchar | 64 | 0 | Y | N | 赛事名称 | |
3 | competition_area | varchar | 64 | 0 | Y | N | 赛事赛区 | |
4 | venue_images | varchar | 255 | 0 | Y | N | 场地图片 | |
5 | opening_time_of_the_competition | datetime | 19 | 0 | Y | N | 开赛时间 | |
6 | event_location | varchar | 64 | 0 | Y | N | 赛事地点 | |
7 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
8 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | player_information_id | int | 10 | 0 | N | Y | 球员信息ID | |
2 | player_name | varchar | 64 | 0 | Y | N | 球员姓名 | |
3 | player_gender | varchar | 64 | 0 | Y | N | 球员性别 | |
4 | player_photos | varchar | 255 | 0 | Y | N | 球员照片 | |
5 | player_age | int | 10 | 0 | Y | N | 0 | 球员年龄 |
6 | player_height | int | 10 | 0 | Y | N | 0 | 球员身高 |
7 | player_weight | int | 10 | 0 | Y | N | 0 | 球员体重 |
8 | main_location | varchar | 64 | 0 | Y | N | 主要位置 | |
9 | habitual_foot | varchar | 64 | 0 | Y | N | 惯用脚 | |
10 | uniform_number | int | 10 | 0 | Y | N | 0 | 球衣号码 |
11 | belonging_team | varchar | 64 | 0 | Y | N | 所属球队 | |
12 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
13 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表real_time_game_situation (实时赛况)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | real_time_game_situation_id | int | 10 | 0 | N | Y | 实时赛况ID | |
2 | event_name | varchar | 64 | 0 | Y | N | 赛事名称 | |
3 | competition_area | varchar | 64 | 0 | Y | N | 赛事赛区 | |
4 | team_name | varchar | 64 | 0 | Y | N | 球队名称 | |
5 | team_image | varchar | 255 | 0 | Y | N | 球队图片 | |
6 | number_of_goals_scored | int | 10 | 0 | Y | N | 0 | 进球数量 |
7 | number_of_goals_conceded | int | 10 | 0 | Y | N | 0 | 失球数量 |
8 | goal_difference | int | 10 | 0 | Y | N | 0 | 净胜球数 |
9 | event_details | text | 65535 | 0 | Y | N | 赛况详情 | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | contact_phone_number | varchar | 16 | 0 | Y | N | 联系电话 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
3.4本章小结
整个JavaHadoop足球赛事数据网的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。
4 JavaHadoop足球赛事数据网详细设计与实现
JavaHadoop足球赛事数据网的详细设计与实现主要是根据前面的JavaHadoop足球赛事数据网的需求分析和JavaHadoop足球赛事数据网的总体设计来设计页面并实现业务逻辑。主要从JavaHadoop足球赛事数据网界面实现、业务逻辑实现这两部分进行介绍。
4.1普通用户功能模块
4.1.1 前台首页界面
当进入JavaHadoop足球赛事数据网的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是轮播图,再往下是通知公告栏,其主界面展示如下图4-1所示。
图4-1 前台首页界面图
4.1.2 用户注册界面
JavaHadoop足球赛事数据网的用户可以进行注册登录,当用户左上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可会员注册成功。其用注册界面展示如下图4-2所示。
图4-2用户注册界面图
4.1.3 用户登录界面
JavaHadoop足球赛事数据网中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当会员输入完整的自己的用户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到JavaHadoop足球赛事数据网的首页中;否则将会提示相应错误信息,用户登录界面如下图4-3所示。
图4-3用户登录界面图
4.1.4赛事信息界面
点击“赛事信息”这个菜单,可以查看到自己的赛事信息,如果想要了解某一赛事信息的详细信息,点击后面的“详情”会进入详情界面;可以进行点赞+评论+收藏等。
赛事信息界面如下图4-4所示。
图4-4赛事信息界面图
4.1.5 实时赛况界面
当访客点击“实时赛况”这个菜单,可以查看到自己的实时赛况信息,如果想要了解某一实时赛况的详细信息,点击后面的“详情”会进入详情界面;可以进行点赞+评论+收藏等,通知公告消息页面如图4-5所示。
图4-5实时赛况界面图
4.2管理员功能模块
JavaHadoop足球赛事数据网中的管理人员在“系统用户”这一菜单是中可以对注册的普通用户和管理员进行管控。界面如下图4-7所示。
图4-7系统用户界面图
4.2.2 球员信息管理界面
管理员可以对球员信息进行管控,还可以进行查询、重置、删除、添加等操作。;球员信息界面界面如下图4-8所示。
图4-8球员信息管理界面图
4.2.3 轮播图管理界面
管理员可以对轮播图进行提交,还可以进行查询、重置、删除、添加等操作。界面如下图4-9所示。
图4-9轮播图管理界面图
4.3.4数据统计大屏界面
管理员可以在此页面可以看到赛事信息统计、球员信息统计、实时赛况统计等信息。界面如下图4-10所示。
图4-10数据统计界面图
5系统测试
5.1 系统测试用例
系统测试包括:用户登录功能测试、通知公告展示功能测试、赛事信息例表、足球资讯搜索、密码修改功能测试,如表5-1、5-2、5-3、5-4、5-5所示:
表5-1 用户登录功能测试表
用例名称 | 用户登录系统 |
目的 | 测试用户通过正确的用户名和密码可否登录功能 |
前提 | 未登录的情况下 |
测试流程 | 1) 进入登录页面 2) 输入正确的用户名和密码 |
预期结果 | 用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入 |
实际结果 | 实际结果与预期结果一致 |
通知公告查看功能测试:
表5-2 通知公告查看功能测试表
用例名称 | 通知公告查看 |
目的 | 测试通知公告查看功能 |
前提 | 无 |
测试流程 | 点击通知公告列表 |
预期结果 | 可以查看到所有通知公告信息 |
实际结果 | 实际结果与预期结果一致 |
赛事信息列表界面测试:
表5-3 赛事信息列表界面测试表
用例名称 | 添加赛事信息测试用例 |
目的 | 测试赛事信息添加功能 |
前提 | 用户正常登录情况下 |
测试流程 | 1)用户点击赛事信息,然后点击添加后并填写信息。 2)点击进行提交。 |
预期结果 | 提交以后,页面首页会显示新的爱心赛事信息 |
实际结果 | 实际结果与预期结果一致 |
足球资讯搜索功能测试:
表5-4足球资讯搜索功能测试表
用例名称 | 足球资讯搜索测试 |
目的 | 测试足球资讯搜索功能 |
前提 | 无 |
测试流程 | 1)在搜索框填入搜索关键字。 2)点击搜索按钮。 |
预期结果 | 页面显示包含有搜索关键字的足球资讯 |
实际结果 | 实际结果与预期结果一致 |
密码修改搜索功能测试:
表5-5 密码修改功能测试表
用例名称 | 密码修改测试用例 |
目的 | 测试管理员密码修改功能 |
前提 | 管理员用户正常登录情况下 |
测试流程 | 1)管理员密码修改并完成填写。 2)点击进行提交。 |
预期结果 | 使用新的密码可以登录 |
实际结果 | 实际结果与预期结果一致 |
5.2 系统测试结果
通过编写JavaHadoop足球赛事数据网的测试用例,已经检测完毕首页、系统用户模块、足球资讯管理模块、赛事信息管理模块、系统管理模块、资源管理模块功能测试,通过这些模块为JavaHadoop足球赛事数据网的后期推广运营提供了强力的技术支撑。
结论
至此,足球赛事数据网已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如通过Python爬虫和大数据处理流程,结合Hive、Sqoop、和MySQL技术,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。
当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。
参考文献
[1]董明,牟云环. 基于Hadoop的高校教学质量评测系统构建与评估方法 [J]. 微型电脑应用, 2024, 40 (02): 26-28+37.
[2]赵建立,汤卓凡,姚孟阳. 基于Hadoop的配电网需求数据存储控制技术优化 [J]. 粘接, 2024, 51 (02): 182-185.
[3]孙磊阳,胡江云,雷小雨等. 铁路数据网网络安全边缘防护策略优化 [J]. 广东通信技术, 2024, 44 (02): 34-36+60.
[4]史铁宁. 铁路通信数据网系统独立组网的研究 [J]. 城市建设理论研究(电子版), 2024, (01): 116-118. DOI:10.19569/j.cnki.cn119313/tu.202401039.
[5]乔召雄,卢中南,吕琳等. 一种基于Hadoop平台的网间结算对账方法 [J]. 广播电视网络, 2023, 30 (12): 50-53. DOI:10.16045/j.cnki.catvtec.2023.12.020.
[6]李想,赵京京. 铁路信号安全数据网网络管理系统优化方案研究 [J]. 铁路通信信号工程技术, 2023, 20 (12): 26-30+42.
[7]Savita C ,V. K ,R. S , et al. Parametrized Optimization Based on an Investigation of Musical Similarities Using SPARK and Hadoop [J]. SN Computer Science, 2023, 5 (1):
[8]任宏,李春林,李晓峰. 基于Hadoop技术的物联网大数据同步存储系统设计 [J]. 网络安全和信息化, 2023, (12): 85-87.
[9]周洁,陈坊. 基于改进CNN的变电站数据网屏电源状态实时监测方法 [J]. 信息与电脑(理论版), 2023, 35 (22): 145-147.
[10]刘宇. 基于Hadoop的智能调度云数据中心关键技术探析 [J]. 电气技术与经济, 2023, (09): 310-312+318.
[11]谢盛嘉. 基于Hadoop平台的学情分析系统设计 [J]. 电子技术, 2023, 52 (11): 408-409.
[12]S. J M ,T. S . Performance Improvement through Novel Adaptive Node and Container Aware Scheduler with Resource Availability Control in Hadoop YARN [J]. School of Computer Science and Engineering, Vellore Institute of Technology , Chennai, 600127 , India, 2023, 47 (3): 3083-3108.
[13]石文昭. 基于Hadoop的自动化设备监管系统设计 [J]. 信息记录材料, 2023, 24 (11): 178-180. DOI:10.16009/j.cnki.cn13-1295/tq.2023.11.025.
[14]Soudabeh H ,Neda M ,Tobias O , et al. MapReduce scheduling algorithms in Hadoop: a systematic study [J]. Journal of Cloud Computing, 2023, 12 (1):
[15]王子昱. 基于Hadoop的大数据云计算处理的实现 [J]. 无线互联科技, 2023, 20 (19): 89-91+104.
[16]Changxi M ,Mingxi Z ,Yongpeng Z . An overview of Hadoop applications in transportation big data [J]. Journal of Traffic and Transportation Engineering (English Edition), 2023, 10 (5): 900-917.
[17]段敬敏,温伟桥. 广电城域数据网优化的研究与实践 [J]. 广播电视网络, 2023, 30 (09): 55-58. DOI:10.16045/j.cnki.catvtec.2023.09.007.
[18]胡江云,沈同菊,戴俊勉. 铁路数据网MPLS VPN跨域组播方案设计与仿真 [J]. 铁道通信信号, 2023, 59 (06): 49-52. DOI:10.13879/j.issn.1000-7458.2023-06.23076.
[19]张路,南东亮,冯长有等. 基于调度数据网的保信系统全链路远程测试平台设计 [J]. 电气自动化, 2023, 45 (03): 103-105+108.
[20]孙宏彪. 新媒体环境下中国足球网络舆情的治理策略研究[D]. 苏州大学, 2021. DOI:10.27351/d.cnki.gszhu.2021.002679.
致 谢
至此论文结束,感谢您的阅读。在此我要特别的感谢我的导师,虽然我在实习期间很忙,论文撰写的时候经常是停停改改,但是我的导师依旧十分的负责,时不时的询问我的任务进展情况,跟进我的论文进度,在指导老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识和经验,这些知识和经验令我受益匪浅。同时我也从导师身上看到了自己的不足,不论是在技术层面上还是在对待工作的态度上,导师如同明镜一般照出了我的缺点我的不足。此外,我还要感谢在我实习期间在论文和程序上帮助过我的同学和社会人士,此前我对Hadoop技术方面的一些知识还不了解,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测。没有他们我是不能顺利完成本次毕业设计的。至此,我的毕业设计就花上了一个圆满的句号了。