基于大数据的电影数据分析与可视化系统

  金牌会员 | 2024-8-14 05:58:12 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 887|帖子 887|积分 2661

目  录

  1 绪论
  1.1研究配景
  1.2 国外研究现状
  1.3 国内研究现状
  1.4 论文主要研究工作
  2 技术总述
  2.1 基于Scrapy的网络爬虫技术
  2.2 大数据生态圈技术
  2.3 Python技术
  2.4 Echarts前端可视化技术
  2.5 本章小结
  3 电影数据大数据分析系统实现
  3.1系统功能
  3.2可行性研究
  3.3 系统实现流程
  3.4系统平台架构
  3.5 评分数据爬虫设计
  3.6 MapReducec程序设计
  4 后台系统实现
  4.1 开发环境与配置
  4.2 数据库的设计
  4.3 系统功能模块实现
  4.4 本章小结
  5 总结与展望
  5.1 系统开发碰到的标题
  5.2 总结与展望
  参考文献:
  谢  辞
  

  
   
基于大数据的电影数据分析与可视化系统

  
择要: 随着信息时代的到来,电影财产得到了迅速发展,数字化转型的趋势日益显着。要求是创建一个功能完备、性能精良的电影数据可视化分析系统,确保数据的准确性和同等性,提供多种数据分析方法和技术支持,天生直观、易于明白的可视化结果,并具备精良的用户交互体验。别的,还必要考虑系统的安全性和隐私保护,遵守相关法律和规定,对敏感数据举行加密处置惩罚或脱敏处置惩罚。

  
总之,该课题的主要内容是设计和实现一个基于大数据的电影数据可视化分析系统,旨在帮助用户深入了解电影市场、用户喜欢和电影财产的发展趋势,并提供决议支持和创新推动。基本要求是创建一个功能完备、性能精良的系统,确保数据准确性、提供多样化的数据分析方法和技术支持,天生直观易懂的可视化结果,并具备精良的用户交互体验。

  
本论文的主要研究工作及取得的成果如下:

  
1、使用Flask等软件开发技术,设计并成功开发出了一套基于大数据的电影网站后台软件系统,本后台系统的电影数据数据源于电影网站上爬取的电影数据。

  
2、使用基于Python语言的网络爬虫,爬取了电影网站上的电影数据。对爬取到的原始数据举行数据洗濯后存储到Hadoop上,然后使用MapReduce分布式运算编程模型对数据计算,最后将结果生存至MySQL中存储分析。

  
关键词:大数据;Flask; Python;电影数据

  
Movie data analysis and visualization system based on big data

Abstract: With the advent of the information age, the film industry has developed rapidly, and the trend of digital transformation has become increasingly obvious. The requirement is to establish a movie data visualization and analysis system with complete functions and superior performance, ensure the accuracy and consistency of data, provide a variety of data analysis methods and technical support, generate visual results that are intuitive and easy to understand, and have a good user interaction experience. In addition, it is also necessary to consider the security and privacy protection of the system, comply with relevant laws and regulations, and encrypt or desensitize sensitive data.
In short, the main content of this topic is to design and implement a movie data visualization analysis system based on big data, which aims to help users deeply understand the movie market, user preferences and the development trend of the movie industry, and provide decision support and innovation promotion. The basic requirements are to establish a system with complete functions and superior performance, ensure data accuracy, provide diversified data analysis methods and technical support, generate intuitive and understandable visual results, and have a good user interaction experience.
The main research work and achievements of this paper are as follows:
1. Using Flask and other software development technologies, designed and successfully developed a set of background software system of movie website based on big data. The movie data of this background system is derived from the movie data crawled from the movie website.
2. Using the web crawler based on Python language, I crawled the movie data on the movie website. The original crawled data is cleaned and stored on Hadoop. Then the MapReduce distributed computing programming model is used to calculate the data. Finally, the results are saved to MySQL for storage and analysis.
Key words: Big data; Flask; Python; Movie data

1 绪论


1.1研究配景

随着互联网和大数据技术的快速发展,电影财产也获得了巨大的发展机遇。然而,面对庞大的电影库和用户群体,怎样为用户提供个性化的电影分析成为了一个重要的标题。传统的基于内容的分析方法无法准确捕获用户的兴趣和偏好,而协同过滤算法又存在冷启动和数据希罕等标题。因此,基于大数据和机器学习的电影分析系统成为了研究的热点之一。
电影可视化分析系统联合了大数据技术和可视化技术,旨在为用户提供直观、可明白的电影分析结果。该系统通太过析用户的历史行为数据、社交网络数据等多源数据,利用Hadoop等分布式计算框架举行数据处置惩罚和挖掘,从而构建用户画像和电影标签。同时,该系统还利用可视化技术将分析结果以图表、关系图等情势展示给用户,帮助用户更好地明白分析缘故原由和关联性。
基于大数据的电影数据分析与可视化系统有以下几个重要意义:
提供个性化的分析服务:通太过析用户的历史行为和兴趣偏好,系统可以向用户提供个性化的电影分析结果,提高用户满意度和使用体验。
办理信息过载标题:随着电影数量的增加,用户面临了信息过载的标题。可视化分析系统可以帮助用户更快速、准确地找到感兴趣的电影,提高信息获取效率。
推动电影财产发展:通过深入明白用户需求和喜欢,电影行业可以更好地制作和推广电影作品,提高市场竞争力。
基于大数据的电影数据分析与可视化系统的研究配景主要源于电影分析系统的需求和大数据技术的发展。该系统将大数据处置惩罚和机器学习算法与可视化技术相联合,旨在为用户提供个性化、直观的电影分析结果,从而提高用户满意度和电影财产的发展程度。
基于大数据的电影数据分析与可视化系统有着重要的研究意义。以下是一些具体的方面:
分析算法的研究:分析算法是构建分析系统的核心,基于Hadoop的电影分析系统可以探究各种分析算法的优缺点,并比较不同算法在处置惩罚大规模数据时的效率和准确性。
大数据处置惩罚技术的研究:Hadoop是目前最流行的大数据处置惩罚平台之一,基于Hadoop的电影分析系统可以探究怎样使用Hadoop等大数据处置惩罚技术来处置惩罚海量用户和电影数据,并实现高效的分析。
用户体验的研究:可视化技术可以帮助用户更直观地明白分析结果和分析过程,从而提高用户的信任度和参与度。因此,基于Hadoop的电影分析系统可以探究怎样使用可视化技术来提高用户体验。
商业应用的研究:电影分析系统在商业应用中具有广泛的应用前景,基于Hadoop的电影分析系统可以探究怎样将分析系统应用于实际商业场景,并评估其经济效益。
总之,基于大数据的电影数据分析与可视化系统的研究具有重要的理论和实践意义,可以促进分析系统范畴的发展和提高用户体验和商业效益。


1.2 国外研究现状 


基于大数据的电影数据分析与可视化系统是一种利用大数据技术实现电影分析的方法。国外在这方面的研究也比较活跃,下面简要先容一些相关研究现状:
Netflix Prize:2012年,Netflix举行了一场名为“Netflix Prize”的数据挖掘比赛,目标是通过对用户评分数据的分析,提高Netflix电影分析系统的准确性。该比赛吸引了举世数千个团队加入,并开创了分析算法范畴的新时代。
MovieLens:MovieLens是一个电影分析系统,由明尼苏达大学的研究职员开发。该系统利用用户历史评分数据举行分析,并提供了多种分析算法供用户选择。
MyMediaLite:MyMediaLite是一个基于Hadoop的电影分析框架,由德国柏林自由大学的研究职员开发。该框架支持多种分析算法,并提供了可视化界面方便用户操纵。
Apache Mahout:Apache Mahout是一个开源的机器学习框架,基于Hadoop和MapReduce技术。该框架支持多种机器学习算法,包括电影分析算法,已经被广泛应用于实际项目中。
总之,基于大数据的电影数据分析与可视化系统在国外受到了广泛关注和研究,各种算法和框架的应用也取得了一定的成果,对于提拔电影分析系统的准确性和用户体验具有重要意义。

1.3 国内研究现状 

目前,国内有不少基于大数据的电影数据分析与可视化系统的研究。
首先,有一些学者研究了基于用户评分数据的电影分析系统。例如,2017年,某些学者提出了一个基于Hadoop平台的电影分析系统,该系统使用协同过滤算法,并对用户评分数据举行了预处置惩罚和优化,以提高分析准确性。别的,还有一些学者提出了基于社交网络的电影分析系统,该系统利用用户在社交网络上的行为来分析电影。例如,2019年,某些学者提出了一个基于微博的电影分析系统,该系统利用用户在微博上的兴趣爱好和社交关系来分析电影。
其次,也有一些学者研究了基于电影内容的分析系统。例如,2018年,某些学者提出了一种基于电影情节语义相似性的分析算法,该算法利用电影情节文本和Word2vec等技术来计算电影之间的相似度。别的,还有一些学者研究了基于电影流派和演员的分析系统。
总的来说,国内在基于大数据的电影数据分析与可视化系统方面已经有了一定的研究成果,但是还必要进一步深入研究,提高分析准确性和用户体验。

1.4 论文主要研究工作

基于 Hadoop 的电影数据分析可视化技术方案主要包括以下几个方面的内容 1、数据采集:利用爬虫技术从多个数据源(如豆瓣、猫眼等)抓取电影相关数据,包 括电影基本信息、票房、观众评分、品评等。别的,还可以通过 API 接口获取数据。 2、数据存储:将采集到的电影数据存储在 Hadoop 分布式文件系统(HDFS)中,以便 举行后续的数据处置惩罚和分析。同时,可以利用 Hive 举行数据堆栈的构建和管理。 3、数据洗濯:利用 Hadoop 的 MapReduce 计算框架对电影数据举行预处置惩罚,如数据去 重、缺失值处置惩罚、异常值处置惩罚等,提高数据质量。别的,可以利用 Python 等脚本语言举行数据洗濯和预处置惩罚。 4、数据分析:利用 Hadoop 的 MapReduce 计算框架对电影数据举行挖掘和分析,如计 算电影票房的趋势、观众评分的分布等。别的,可以利用 Spark 等大数据处置惩罚框架举行矩阵 计算、机器学习等复杂分析。 5、数据可视化:将分析结果通过可视化工具(如 ECharts、Tableau 等)以图表的情势 展示,便于用户更直观地了解电影市场的情况。同时,可以利用前端可视化技术将分析结果 嵌入到网页中。 6、电影分析:基于用户的历史观影行为和喜欢,利用协同过滤、矩阵分解等技术为用 户提供个性化的电影分析。别的,可以利用机器学习算法对分析系统举行优化,提高分析准 确性和用户满意度。

2 技术总述
2.1 基于Scrapy的网络爬虫技术

第一部分是从互联网中获取数据,采用网络爬虫,根据各类灾情分析的具体需求,对特定的网页举行爬取,筛选出精准有用的数据。本部分的具体流程为:首先根据url将对应网页的源码截取下来;其次编写算法,利用 PyQuery 解库对源码举行拆分解析,将符合要求的数据全部取出:最后利用 Python 提供的接口将获取得到的数据存放入MongoDB这个非关系型数据库中。
Scrapy是目前较为成熟的爬虫技术框架,一般采用Python语言开发程序,Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
在本设计中,由于必要使用到电影网站的原始数据,因此必要开发相应的网
络爬虫程序完成对评分原始数据的采集,图2-1为爬取电影网站的电影评价
数据的原理流程图。

图2-1 电影数据爬虫原理流程图

2.2 大数据生态圈技术

Hadoop是一个由Apache基金会所开发的分布式系统根本架构,主要办理海量数据的存储和海量数据的分析计算标题,广义上来说,HADOOP通常是指一个更广泛的概念,即HADOOP生态圈。
MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop
的数据分析应用”的核心框架; MapReduce核心功能是将用户编写的业务逻辑代
码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。|
Yarn是一个资源调理平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操纵系统平台,而MapReduce等运算程序则相当于运行于操纵系统之上的应用程序。

图 2-2 大数据集群机器

用户编写的程序分成三个部分: Mapper, Reducer, Driver(提交运行m程序的客户端)。
1.Mapper阶段
(1)用户自定义的Mapper要继续自己的父类
(2) Mapper 的输入数据是KV对的情势(KV 的类型可自定义)
(3) Mapper 中的业务逻辑写在map()方法中
(4) Mapper的输出数据是KV对的情势(KV 的类型可自定义)
(5) map()方法(maptask,进程) 对每一个<K, V>调用一次
2. Reducer 阶段
(1)用户自定义的Reducer要继续自己的父类
(2)Reducer的输入数据类型对应Mapper的输出数据类型,也是KV
(3) Reducer 的业务逻辑写在reduce()方法中
(4)Reducetask.进程对每一-组 相同k的<k, v>组调用一次reduce()方法
3.Driver 阶段
整个程序必要一个Drvier来举行提交,提交的是一个形貌了各种须要信息的job对象。
2.3 Python技术

基于电影的电影票房数据分析系统的研究与实现在前台管理网页结果中主要采用的是Python语言开发,现在越来越多的软件公司都使用Python语言来开发web端的应用。因为就目前的市场上网页制作模块来说,Python语言包罗的内容是相对而言比较丰富全面的,而且Python语言已经成为现在市场上最为常见的开发技术。我们都知道Python语言是一种开发技术,它的开发是跨平台的,Python语言可以在Windows操纵系统上运行也可以在Linux系统上运行。
Python是一门面向对象的编程语言,不仅吸取了C++语言的各种优点,还摒弃了C++里难以明白的多继续、指针等概念,因此Python语言具有功能强大和简单易用两个特征。Python语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的头脑方式举行复杂的编程。
Python具有简单性、面向对象、分布式、结实性、安全性、平台独立与可移植性、多线程、动态性等特点。Python可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
2.4 Echarts前端可视化技术

Apache ECharts 是一款基 于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。ECharts 开源来自百度商业前端数据可视化团队,基于htm15 Canvas, 它是一个纯Javascrint,图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域周游等特性大大增强了用户体验,赋予了用户对数据举行挖掘、整合的能力。

2.5 本章小结

本章主要分析了系统开发过程中使用到的技术点和框架,通过研究这些技术的原理后,在本设计中加以应用,包括电影数据采集的爬虫技术,数据长期化存储技术,以及基于Python框架的系统后台技术,通过预研上述技术点并加以应用从而开发出基于大数据电影分析分析系统。



3 电影数据大数据分析系统实现


3.1系统功能

通过前面的功能分析可以将基于大数据的电影数据平台的研究与实现的功能主要包括用户登录、电影数据分析、数据分析等内容。后台管理是针对已登录的用户看到满意的评分数据分析而设计的。
3.2可行性研究

通过对系统研究目标及内容的分析审察后,提出可行性方案,并对其举行论述。主要从技术可行性出发,再进一步分析经济可行性和操纵可行性等方面。
3.2.1 经济可行性
开发系统所涉及到的资料,一般是在图书馆查阅,或是在网上举行查找网络。所必要的一些应用软件也都是在网上可以免费下载的,因此,开发成本是险些为零。但是开发出来的系统,还是具有高效率,低成本,较高质量的。所以,从经济可行性的角度,该系统符合标准。
3.2.2 技术可行性
技术可行性是考虑在现有的技术条件下,能否顺利完成开发任务。以及判断现有的软硬件配置是否能满意开发的需求。而本系统采用的是Hadoop开发框架,并非十分困难,所以在技术上是绝对可行的。别的,计算机硬件配置是完全符合发展的必要。
3.2.3 运行可行性
当前计算机信息化的知识已经十分普及了,现在的操纵职员也都是对系统环境有很强的适应性,各类操纵职员大都是有过培训补充的,因此完全不影响构造结构,所以在运行上也是可行的。
3.2.4 时间可行性
从时间上看,在大四的最后一个学期,在练习工作与完成毕设两件大事相交叉的时间里,联合之前学习的相关知识,并开发系统,时间上是有点紧,但是也不是完全没可能实现,通过这段时间的努力功能基本实现。

3.3 系统实现流程

基于大数据的电影数据分析与可视化系统必要颠末以下步调举行实现:
数据网络和洗濯:从多个渠道获取大量的电影数据,包括电影名称、导演、演员、类型、评分等信息,并对这些数据举行洗濯,去除重复数据、缺失数据和错误数据。
数据预处置惩罚:将洗濯后的数据举行预处置惩罚,包括数据转换、特征提取、数据归一化等操纵。同时,为了提高系统的性能,必要对数据举行采样和分区。
算法选择和模型练习:根据业务需求选择合适的算法和模型,例如协同过滤、基于内容的分析、深度学习等。使用Hadoop平台举行模型练习,利用MapReduce并行计算能力加速练习过程。
必要注意的是,由于该分析系统涉及到大量的数据处置惩罚和计算,必要使用高性能、可扩展的Hadoop平台举行实现。同时,为了保证数据的安全性和隐私性,必要采取数据加密、权限控制等措施。

3.4系统平台架构

在任何信息系统当中有代价的数据都是必不可少的重要部分,怎样通过手上
的资源获取得到有代价的数据便是开发系统。首先必要考虑的标题根据系统的功
能设计数据获取和处置惩罚的流程以及实在现方法都已经基本上确定获取和处置惩罚流
程。
3.5 评分数据爬虫设计

这个项目我们的主要目标是爬取电影网站网的评分数据信息,包括电影名称和电影形貌和评分等具体详情信息,下面形貌本文爬虫工程主要设计步调。
(1)创建项目
打开一个终端输入:scrapy startproiect python_movie_data,Scrapy框架将会在指定目录下天生整个工程框架。系统天生的目录如下图3-2所示:

图3-2爬虫框架目录结构

(2)修改setting文件

如图3-1所示为修改后的setting文件主要内容,本设计主要修改三项内容,
第一个是不遵照机器人协议,第二个是下载间隙,由于下面的程序要下载多个页
面,所以必要给一个间隙(不给也可以,只是很轻易被侦测到),第三个是哀求
头,添加一个User-Agent。
表3-1 爬虫setting文件主要配置

BOT_NAME = 'python_city_data'

SPIDER_MODULES = ['python_city_data.spiders']
NEWSPIDER_MODULE = 'python_city_data.spiders'
# Crawl responsibly by identifying yourself (and your website) on the user-agent
#USER_AGENT = 'python_city_data (+http://www.yourdomain.com)'
#换伪造哀求头
USER_AGENT = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"
# Obey robots.txt rules
ROBOTSTXT_OBEY = False

(3)确认要提取的数据,item 项
item定义你要提取的内容(定义数据结构),好比我提取的内容为电影数据的所在城市和电影数据详情,于是必要在items类中新建对应的实体类,并必要设置相应的字段取出对应的数据。Field 方法实际上的做法是创建一个字典,给字典添加一个建,临时不赋值,等候提取数据后再赋值。
(4)开发爬虫程序,访问下载网页,使用Xpath语法提取内容
3.6 MapReducec程序设计

原始的电影数据数据一般信息较为冗杂,且很丢脸出规律,因此我们必要将
数据存储在HDFS上,数据在多台机器上生存了n份,保证了原始数据的高可用。
然后通过MapReduce框架开发程序,将海量的原始数据计算过程分成一个个的
job提交到yarn上管理执行。
MapReduce确保每个reducer的输入都是按键排序的。系统执行排序的过程
(即将map输出作为输入传给reducer)称为shuffle。下面是Mapreduce计算
最重要的shuffle原理,可以看出具有同key的Mapper端输出将会汇向同一
Reducer端,从而达到分布式计算的结果。如图3-3所示

图3-3 Mapreduce的shuffle原理

本文中如需分析目前电影网站上的各行各业的评分岗位总量情况,首先必要定义一个mapper类,这也就是mapper任务中的核心逻辑,必要在代码中对每条评分数据的所属分类字段过滤,下面为mapper任务的主要逻辑代码。
表3-2 mapper任务的主要逻辑

import sys

# 逐行读取输入数据for line in sys.stdin:

    # 去除首尾空格并分割每一行数据

    line = line.strip()

    data = line.split("\t")

    

    # 查抄数据是否有效

    if len(data) == 3:

        movie_id, user_id, rating = data

        

        # 输出键值对,键为电影ID,值为用户ID和评分

        print(f"{movie_id}\t{user_id}\t{rating}")

再编写完Mapper任务代码后,必要再定义一个reducer类用于处置惩罚Reducer 过程的业务逻辑,用于统计数量,下面为mapper任务的主要逻辑代码。
表3-3 reducer任务的主要逻辑

from collections import defaultdict

def reducer(key, values):

    # 初始化电影评分列表

    ratings = defaultdict(list)

    

    # 对每个键值对举行遍历

    for value in values:

        # 解析键值对

        movie_id, rating = value.split(',')

        

        # 将电影ID和评分添加到对应的列表中

        ratings[movie_id].append(float(rating))

    

    # 计算每部电影的平均评分

    movie_avg_ratings = {}

    for movie_id, rating_list in ratings.items():

        avg_rating = sum(rating_list) / len(rating_list)

        movie_avg_ratings[movie_id] = avg_rating

    

    # 返回每部电影的平均评分return movie_avg_ratings


再编写完Mapper任务和reducer任务的业务代码后,还必要定义一个主类用于管理上述的作业,MapReduce框架会将上述的Mapper和Reducer任务拆分为一个个的job,并提交到yarn上管理执行。下表3-4为电影数据所属分类MapReduce作业管理类的主要逻辑。
表3-4 所属分类MapReduce作业管理类

public class IndustryDriver {
public static void main(String[] args) throws Exception {
// 1 获取配置信息,或者job对象实例
Configuration configuration = new Configuration();
Job job = Job.getInstance(configuration);

// 2 指定本业务job要使用的mapper/Reducer业务类
job.setMapperClass(IndustryMapper.class);
job.setReducerClass(IndustryReducer.class);

// 3 指定mapper输出数据的kv类型
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);

// 4 指定最终输出的数据的kv类型
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);

// 5 指定job的输入原始文件所在目录
FileInputFormat.setInputPaths(job, new Path(args[0]));
FileOutputFormat.setOutputPath(job, new Path(args[1]));

// 7 将job中配置的相关参数,以及job所用的java类所在的jar包, 提交给yarn去运行
boolean result = job.waitForCompletion(true);
System.exit(result?0:1);
}
}

任务主类编写成功后,将其打成jar包,并提交到hadoop环境上,通过hadoop fs下令执行该mapreduce作业。并可通过Hadoop的管理web页面查看作业的执行的具体情况和时长等信息,下图3-4是统计电影数据所属分类的任务运行在Hadoop管理页面的执行情况。

图3-4 Mapreduce的作业运行详情


4 后台系统实现


基于大数据的电影数据平台的基本业务功能是采用Python 架实现的, 页面展示使用Echarts技术,数据存储采用关系型数据库Mysql。在本文的第四章将具体先容后台系统的实现部分,包括具体论述了系统功能模块的具体实现,并展示说明了部分模块的功能界面。
4.1 开发环境与配置

4.1.1 开发环境
本系统设计基于B/S架构,此中服务器包括应用服务器和数据库服务器。这种架构模式,使用户只必要在有网络的地方即可通过浏览器访问,而不必要再安装客户端软件,交互性更强。基于大数据的电影数据平台使用Pycharm集成开发工具。而系统运行配置时,选择本地来摆设Web服务器来保障平台的正常运行,其技术先进、性能稳定并且开源免费,因而被广泛应用。本系统的主要开发环境以及开发工具如表4-1所示。
表4-1 系统开发环境和工具

项目
系统环境及版本
硬件环境
Windows 64 位操纵系统
JDK
Python
数据库
MySql
开发工具
Pycharm
项目架构
Flask
4.2 数据库的设计

数据库设计是系统设计中特别重要的一部分。数据库的好坏决定着整个系统的好坏,并且,在之后对数据库的系统维护、更新等功能中,数据库的设计对整个程序有着很大的影响。
根据功能模块的分别结果可知,本系统的用户由于使用账号和暗码举行登录,因此在本系统中必要分别举行数据记载。首先根据如下6个数据实体:用户、电影数据等数据库表。
用户的属性包括用户编号、用户名、暗码和性别、注册账号的时间。用户实体属性图如图4-2所示:


图4-2 用户实体属性图


根据以上分析,各个实体之间有一定的关系,使实体与实体可以接洽起来,创建成整个系统的逻辑结构,本系统中,普通用户通过对电影数据的管理,使电影数据与用户实体存在对应关系。

4.3 系统功能模块实现

4.3.1登录认证
用户登录时必要在登录界面输入用户名、暗码举行身份认证,要求必须是表单认证、校验。其配置文件中配置了相应的Realm 类,当用户登录系统举行身份认证和权限控制时,会在该类中从数据库获取到用户信息及其具有的权限信息,并且比较用户输入的账号是否存在或者输入的暗码与数据源中的暗码是否匹配。在实际实现中, 重写了doGetAuthenticationInfo( )认证方法和doGetAuthorizationInfo( )授权方法。具体流程如时序图如4-2所示。


图4-2登录认证流程图

电影数据大数据分析系统的用户登录界面如下图所4-3所示:

图4-3用户登录界面

登岸成功后,系统会成功跳转至首页,在首页中,位于上方的横栏是对本系统的基本信息的形貌和欢迎登录结果,另外登录用户的用户名也会表现在首页中,可直接表明用户己成功登录。左侧则是本系统的导航菜单,可折叠展示,较为方便,右方则为欢迎页结果。电影数据大数据分析系统的首页界面如下图所4-4所示:


图4-4电影数据大数据系统首页界面


4.3.2电影数据分析功能
电影数据分析功能是对电影数据举行查询,删除等操纵的功能聚集,评分信
息管理功能使用到了电影数据表t_ movie,电影数据表t_movie 的主要数据字段,结构,类型及形貌如下表4-2所示。
表4-2 电影数据表字段

字段名称

数据类型

是否允许为空

形貌

id

int

不允许

自增主键,唯一ID

cityname

String

允许

上映时间

company

String

允许

电影名称

company_size

String

允许

电影规模

education

String

允许

导演

experience

String

允许

制片地域

industry

String

允许

所属分类

recruiter

String

允许

评分者人数

salary

String

允许

打分范围

电影数据大数据分析系统的电影数据分析功能界面如下图所4-5所示:



图4-5电影数据分析界面

电影

数据分析功能流程功能图如图3-6所示:
图4-6 电影数据分析功能流程图

 通过“电影数据分析”按钮,进入电影数据分析界面,用户可以看到电影数据列表,例如:电影名称、所在城市、数量、评分要求、薪资报酬、评分时间的具体信息。通过此界面,用户可以对电影数据举行删除管理操纵。
4.3.3电影数据可视化功能
数据可视化模块就是对我们采集和计算的分析结果的展示。数据分析模块的
数据举行一个精致而又直接的展示,我们采用大屏的方式举行展示,展示数据结
构分明,配景具有科技感,把相对复杂的、抽象的数据通过可视的、交互的方式
举行展示,从而形象直观地表达数据蕴含的信息和规律,设计一个分析系统算法,根据用户的历史行为和偏好,向用户分析他们喜爱的电影。电影数据大数据分析界面如图4-7所示。

图4-7电影数据大数据分析界面

4.4 本章小结

本章主要分析了基于大数据的电影数据系统开发过程中使用到的技术和具体的实现步调,这此中主要先容了基于Python框架的电影数据大数据分析系统的搭建环境和开发步调,包括程序中的一些数据库配置等。前端页面采用的是Echarts实现。
5 总结与展望

5.1 系统开发碰到的标题 

由于基于大数据电影数据平台是由本人独立开发,因此在系统设计和业务逻辑方面更多地鉴戒了目前市场上较为流行的框架和技术点,包括大数据技术,很多是不熟悉没接触过的,在开发过程中不停学习新知识。另外由于本人的时间和精力的缘故原由,在系统开发过程中有很多地方可能并不能够完全尽如人意,还有很多必要补充的功能与模块。
5.2 总结与展望 

大数据电影数据系统是在对相关管理范畴举行具体调研后,确定了系统涉及的范畴,包括数据库设计、界面设计等,是一个具有实际应用意义的管理系统。根据本结业设计要求,颠末四个多月的设计与开发,大数据电影数据系统基本开发完毕。其功能基本符实用户的需求。
    为保证有足够的技术能力去开发本系统,首先本人对开发过程中所用到的工
具和技术举行了认真地学习和研究,具体地研讨了基于Python的网络爬虫技术
以及Echarts, CSS, HTML等前端开发技术,同时还研究了大数据开发技术Hadoop, HDFS, MapReduce等。
从评分数据大数据分析平台需求分析开始,到整体框架的设计以及各个具体功能的设计具体实现,最后基于大数据平台的电影数据系统的根本架构和具体功能已经大致开发完毕,用户可以登录使用该系统举行电影数据的筛选,同时查询大数据的分析结果。


参考文献:

  • 李志宏,张书林,周鸿喜等. 基于大数据的数字化系统一体化调理信息集成模型 [J/OL]. 自动化技术与应用, 2024, (01): 117-120[2024-01-14] .
  • 李姗姗,孙晓玲,张艳霞. 基于大数据的分布式光伏智能监控关键技术研究 [J]. 科学技术创新, 2024, (02): 9-12. 
  • 黄芳,姜宇. 基于大数据的物流供应链管理创新对策研究 [J]. 中国储运, 2024, (01): 128-129.
  • 安海泉,刘臻. 基于大数据的水煤浆气化炉模式化监控平台应用 [J]. 煤化工, 2023, 51 (06): 105-108.
  • 宋贡湘,黎玉娥,谭操. 基于大数据的本科教学质量监控体系建设 [J]. 学园, 2024, 17 (03): 75-77.
  • 杨美军,万佳,彭丽辉. 基于大数据的电力管理与改进分析 [J]. 江西电力, 2023, 47 (06): 40-44.
  • 卢建彬,李健韬,刘晓英. 基于大数据的火电厂SCR脱硝系统液氨泄漏危险地域估算模型 [J]. 化工机械, 2023, 50 (06): 909-914.
  • 苏韶生,贺婷,梁翠云. 基于大数据的医学协作平台实践与应用 [J]. 中国信息化, 2023, (12): 47-51.
  • 党瑞红. 基于大数据的大学英语个性化教学平台的设计与实现 [J]. 山东商业职业技术学院学报, 2023, 23 (06): 54-57.

谢  辞




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表