计算机毕业设计hadoop+spark+hive知识图谱音乐推荐系统 音乐数据分析可视化大屏 音乐爬虫 LSTM情感分析 大数据毕设 深度学习 机器学习

新余学院本科毕业设计(论文)开题报告

学    号

202253025

学生姓名

毛维星

届    别

24届

专    业

数据科学与大数据技术

指导教师

姓名及职称

 潘诚 研究生

毕业设计

(论文)题目

基于Hadoop+Spark的音乐数据仓库的设计与实现

  1. 选题的依据和意义

随着移动互联网迅猛发展、数字音乐的兴起,人们听音乐的方式转变为在线音乐,导致在线音乐的需求不断在增加,各大音乐网站上也有了海量的用户群体。成长在移动互联网环境下年轻一代,越发依赖在线音乐。QQ音乐、酷我音乐、网易云音乐等是国内现有的几大主流音乐平台。其中网易云音乐登顶音乐类App用户的榜首。网易云音乐最初的目标是建立一个音乐社交网络,就不同操作系统客户端上线效率而言,网易云音乐侧重于小众圈子,提高了对小众人群的关注,而小众人群有比较大的概率形成社群,经过这种网络关系来提升品牌价值。根据易观分析发布的《2021中国在线用户洞察报告》中的数据显示,相比酷我音乐、酷狗音乐和QQ音乐等,网易云音乐是年轻用户占比最大的平台,35岁以下的用户约占80%。如图1所示,根据《2020年网易云音乐销售手册》显示:网易云的用户中,以学生及白领、15~35岁、高学历、一二线城市、可支配收入高的群体为主,听歌的人群更加年轻化。因此对网易云音乐进行数据可视化分析,有利于提高用户的音乐体验,即用户可以根据自己的喜好,选择自己对应音乐标签的听音乐,也有利于更加直观地剖析音乐数据,辅助音乐公司做出决策。

  1. 国内外有关本选题研究的动态

可视化分析主要应用于海量数据关联分析。由于涉及的信息比较分散,数据结构有可能不统一,而且通常以人工分析为主,再加上分析过程的非结构性和不确定性,所以普通的数据分析系统不易形成固定的分析流程或模式,很难将数据调入应用系统中进行分析挖掘。而功能强大的可视化数据分析平台,可以辅助人工操作,将数据进行关联分析,并做出完整的分析图表。图表中包含所有事件的相关信息,也能完整展示数据分析的过程和数据链走向。同时,这些分析图表也可通过另存为其他格式,供相关人员调阅。

大数据处理通常包括数据的采集、整理、存储、分析和挖掘、展示等多个环节。可视化是大数据分析的重要环节之一,因为它可能以更直观的图形、表格、地图等方式展现数据。“可视化分析并不是简单地将单一来源的数据用非常漂亮的图表展现出来,而是对不同来源的数据,比如财务数据、销售数据、人力资源数据、商业分析数据等进行分析,形成企业自己的洞见,然后再通过直观、形象的方式把它呈现出来。这才是真正的可视化。

早在2009 年,Qlik 就已经进入中国市场,目前拥有大量客户,比如联想、苏泊尔等。“中国客户对可视化分析、云服务、数据可控等有很强烈的需求。现在对我们来说,最大的挑战在于时间紧迫。我们要以更快的速度、更全面的产品和服务满足中国不同行业客户快速增长的需求。

用户要对大数据有正确的理解,大数据是用钱买不来的,一个企业如果想充分利用大数据,那么可以从一个细分的应用开始,逐渐扩展,慢慢了解和掌握数据的属性。这时,用户就需要一个平台化的工具。

在互联网信息时代,基于网络人们可以对各种信息轻松掌握,对于各种数据背后所反映出来的信息越来越重视。例如新浪微博、知乎等人们日常使用的APP背后都离不开大数据的支持。设计一个对流行音乐的数据分析,从不同方面呈现时下音乐的热度以及流行元素。以此为契机,也能在以后对其他数据的研究有更加深入的了解。

  1. 论文的基本内容,拟解决的主要问题

内容:

  1. 爬取网易云音乐数据作为数据分析的基础数据集;
  2. 搭建Linux数据分析环境,包括hadoop、spark生态圈组件;
  3. 将数据仓库的理论知识应用于实践,进行数据仓库建模;
  4. 完成数据清洗、数据分析等数仓流程;
  5. 研究FineReport报表技术,进行可视化实现;

拟解决的问题:

  1. 网易云反爬问题,数据获取不全面;
  2. 数据量较大数仓、MySQL数据库查询缓慢问题;
  3. 实时计算/离线计算数据倾斜问题、JVM内存计算溢出问题;
  4. 可视化指标精度问题;

  1. 研究方法
  1. 项目整体数通过对网易云网站数据进行分析,通过爬虫歌单 歌手 专辑等相关信息,将爬取到的数据存入MySQL;
  2. 通过sqoop工具将MySQL数据导入到大数据Hadoop平台;
  3. 使用Hive并采用数据仓库建设方法对相关指标进行数据分析,将分析出来的结果再次通过sqoop导出到MySQL供给可视化查询使用;
  4. 最终通过帆软大屏的方式对结果数据进行展示。
  5. 通过调度工具azkaban将整个项目流程串通,一键启动项目即可完成整个数据分析过程。
  6. 同时为了方便查hive数据,还采用了目前主流的数据查询工具hue;

  1. 选题的特色及创新点
  1. Hive离线数仓与Spark实时数仓相结合;
  2. FineReport一键拖拽可视化大屏工具的应用提高可视化开发效率;
  3. 即使千万真实数据量,通过构建MySQL索引、优化JVM等运维手段做到系统百万千万数据秒查;
  4. Python爬虫模拟人类真实浏览情况采集上千万网易云音乐数据作为数据分析基础数据集,并且数据种类丰富;

学生签名:                                   年     月     日

指导

教师

开题

报告

意见

    指导教师签名:                             年     月     日

说明:本表须双面打印。

核心算法代码分享如下:

# -*- codeing = utf-8 -*-
# @Time: 2022/4/29 12:10
# @Author: Administrator
# @File: lyric.py
# @Desc: 评论情感分析
import pymysql
from snownlp import SnowNLP
connect = pymysql.connect(host="bigdata",port=3306, user="root",password="123456", database="hive_music2024")
cur = connect.cursor()
cur.execute('''SELECT * FROM tb_comment''')
rv = cur.fetchall()
for result in rv:id=result[0]songId=result[1]userId=result[2]content=result[3]nickname=result[4]avatar=result[5]commentId=result[6]likedCount=result[7]isHot=result[8]pubTime=result[9]s = SnowNLP(content)score = s.sentimentsif score < 0.5:label='negative'else:label = 'positive'print('情感分析',label,score, content)sql = "replace into tb_comment2 (songId,userId,content,nickname,avatar,commentId,likedCount,isHot,pubTime,label,score) " \"values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"data = (songId,userId,content,nickname,avatar,commentId,likedCount,isHot,pubTime,label,score)cur.execute(sql, data)connect.commit()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/340960.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Python操作Redis

大家好&#xff0c;在当今的互联网时代&#xff0c;随着数据量和用户量的爆发式增长&#xff0c;对于数据存储和处理的需求也日益增加。Redis作为一种高性能的键值存储数据库&#xff0c;以其快速的读写速度、丰富的数据结构支持和灵活的应用场景而备受青睐。本文将介绍Redis数…

加密经济浪潮:探索Web3对金融体系的颠覆

随着区块链技术的快速发展&#xff0c;加密经济正在成为全球金融领域的一股新的浪潮。而Web3作为下一代互联网的代表&#xff0c;以其去中心化、可编程的特性&#xff0c;正深刻影响着传统金融体系的格局和运作方式。本文将深入探讨加密经济对金融体系的颠覆&#xff0c;探索We…

C++数组实现推箱子游戏

前言 我是三天打鱼两天晒网的闲人,今天跟着课程视频学习c的数组的运用. 准备好游戏用到的图片资源 代码逻辑实现 #include<iostream> #include<graphics.h> #include<string> #include<conio.h>using namespace std;//设置画布大小 #define SCREEN…

kafka-守护启动

文章目录 1、kafka守护启动1.1、先启动zookeeper1.1.1、查看 zookeeper-server-start.sh 的地址1.1.2、查看 zookeeper.properties 的地址 1.2、查看 jps -l1.3、再启动kafka1.3.1、查看 kafka-server-start.sh 地址1.3.2、查看 server.properties 地址 1.4、再次查看 jps -l 1…

【python】OpenCV—Cartoonify and Portray

参考来自 使用PythonOpenCV将照片变成卡通照片 文章目录 1 卡通化codecv2.medianBlurcv2.adaptiveThresholdcv2.kmeanscv2.bilateralFilter 2 肖像画cv2.divide 1 卡通化 code import cv2 import numpy as npdef edge_mask(img, line_size, blur_value):gray cv2.cvtColor(…

代码随想录算法训练营第二十八天|93.复原IP地址 ,78.子集 ,90.子集II

93. 复原 IP 地址 - 力扣&#xff08;LeetCode&#xff09; class Solution {ArrayList<String> results new ArrayList<>();public List<String> restoreIpAddresses(String s) {if(s.length() > 12){return new ArrayList<>();}char[] ipChars …

OBS+nginx+nginx-http-flv-module实现阿里云的推流和拉流

背景&#xff1a;需要将球机视频推送到阿里云nginx&#xff0c;使用网页和移动端进行播放&#xff0c;以前视频格式为RTMP&#xff0c;但是在网页上面播放RTMP格式需要安装flash插件&#xff0c;chrome浏览器不给安装&#xff0c;调研后发现可以使用nginx的模块nginx-http-flv-…

MySQL之查询性能优化(四)

查询性能优化 MySQL客户端/服务器通信协议 一般来说&#xff0c;不需要去理解MySQL通信协议的内部实现细节&#xff0c;只需要大致理解通信协议是如何工作的。MySQL客户端和服务器之间的通信协议是"半双工"的&#xff0c;这意味着&#xff0c;在任何一个时刻&#…

9.抽象类和接口

抽象类 抽象类概念 在面向对象的概念中&#xff0c;所有的对象都是通过类来描绘的&#xff0c;但是反过来&#xff0c;并不是所有的类都是用来描绘对象的&#xff0c;如果一个类中没有包含足够的信息来描绘一个具体的对象&#xff0c;这样的类就是抽象类 比如&#xff1a; 我…

Vue进阶之Vue无代码可视化项目(二)

Vue无代码可视化项目 项目初始化路由子路由错误示范正确示范App.vuerouter/index.tsAboutView.vueAboutAboutview.vuerouter/index.ts项目路由router/index.tsApp.vueActionsView.vueDataSourceView.vueLayoutView.vue路由样式App.vue进一步的App.vue项目初始化 路由 router i…

高精度滚珠丝杆在自动化生产中的关键因素!

如今&#xff0c;自动化技术正以前所未有的速度改变着人们的生活和工作方式&#xff0c;特别是在高精度精密设备的制造与应用领域&#xff0c;提高生产效率和优化生产流程正变得越来越重要。在自动化生产中&#xff0c;滚珠丝杆的优化应用对于提高生产效率、保证产品质量至关重…

k8s Pods漂移时间配置

默认为300秒 apiVersion: apps/v1 kind: Deployment metadata:name: my-test spec:replicas: 1selector:matchLabels:app: my-apptemplate:metadata:labels:app: my-appspec:containers:- name: my-containerimage: nginx:latestports:- containerPort: 80tolerations:- key: &…

面试二十六、c++语言级别的多线程编程

一、 多线程编程 ​​​​​ 这里的c语言级别的多线程和linux的有一定的区别&#xff0c;c语言级别提供的多线程比较严格&#xff0c;如果主线程结束了&#xff0c;但是子线程没有结束&#xff0c;进程就会异常终止&#xff0c;而linux不会&#xff0c;会继续执行。 二、模拟卖…

LLama学习记录

学习前&#xff1a; 五大问题&#xff1a; 为什么SwiGLU激活函数能够提升模型性能&#xff1f;RoPE位置编码是什么&#xff1f;怎么用的&#xff1f;还有哪些位置编码方式&#xff1f;GQA&#xff08;Grouped-Query Attention, GQA&#xff09;分组查询注意力机制是什么&…

FL Studio21.2.8中文版水果音乐制作的革新之旅!

在数字化浪潮的推动下&#xff0c;音乐制作领域经历了翻天覆地的变化。从最初的模拟技术到如今的全数字化处理&#xff0c;音乐制作的门槛被大幅降低&#xff0c;越来越多的音乐爱好者和专业人士开始尝试自行创作和编辑音乐。在这个过程中&#xff0c;各种专业音乐制作软件成为…

CVE-2022-22947

漏洞描述 Spring Cloud Gateway 远程代码执行漏洞&#xff08;CVE-2022-22947&#xff09;发生在Spring Cloud Gateway应用程序的Actuator端点&#xff0c;其在启用、公开和不安全的情况下容易受到代码注入的攻击。攻击者可通过该漏洞恶意创建允许在远程主机上执行任意远程执行…

第二十五章新增H5基础(以及视频~兼容)

1.HTML5中新增布局标签 HTML5新增了页眉&#xff0c;页脚&#xff0c;内容块等文档结构相关标签&#xff0c;可以使文档结构更加清晰明了。 1.新增的结构标签 1、<header>标签 定义文档或者文档中内容块的页眉。通常可以包含整个页面或一个内容区域的标题&#xff0c…

UI案例——登陆系统

UI的登陆界面实例 在学习了UILabel&#xff0c;UIButton&#xff0c;UIView&#xff0c;UITextField的内容之后&#xff0c;我们就可以写一个简单的登陆界面 我们可以通过UILabel来编写我们显示在登陆界面上的文字比方说下面这两行字就是通过UILabel去实现的。 下面给出一下实现…

直播美颜插件详解:美颜SDK的技术原理

美颜SDK作为实现美颜功能的核心技术&#xff0c;已被广泛应用于各种直播和短视频应用中。那么&#xff0c;美颜SDK究竟是如何工作的&#xff1f;它背后的技术原理又是什么&#xff1f;本文将对直播美颜插件及其技术原理进行详解。 一、美颜SDK的概述 美颜SDK包含了各种图像处…

二叉树遍历 和 线索二叉树

文章目录 1.1 二叉树遍历1.1 前提问题1&#xff1a; 什么叫二叉树的遍历&#xff1f;二叉树的三种遍历&#xff1a;三个概念&#xff1a;遍历 和 访问 和 经过重要概念&#xff1a;遍历过程中的经过节点&#xff0c;不代表访问节点 问题2&#xff1a;遍历和访问的联系&#xff…