摘要: 随着旅游行业的发展,民宿作为一种住宿选择越来越受欢迎,因此了解民宿价格趋势和竞争情况对于经营者和投资者至关重要。通过使用Hive平台,可以集成和分析各种来源的数据,提供全面准确的民宿价格数据,并通过灵活的扩展性和强大的并行处理能力进行高效的数据分析。这个选题不仅满足市场需求,还为大数据分析的实际应用提供了实践机会,并为相关领域的学术研究提供了数据支持和分析工具。
本文介绍了基于Hive的民宿价格分析系统,该系统旨在帮助民宿经营者和投资者更好地了解民宿市场价格趋势,提供数据支持和决策参考。系统后台采用Flask框架搭建,数据库使用MySQL存储数据。
通过该系统,用户可以实现对民宿价格数据的采集、存储、分析和可视化展示。首先,系统通过Hive实现对各大民宿平台的价格数据抓取和清洗,将清洗后的数据存储到MySQL数据库中。随后,Flask框架提供了强大的后台支持,处理用户请求、连接数据库,并调用相应的数据分析模块进行处理。
系统主要功能包括:价格数据的实时更新和定时任务调度,价格走势的统计分析和预测,民宿价格的地区比较和热门民宿推荐等。用户可以通过系统提供的图表和报表清晰地了解民宿价格的变化趋势,以及不同地区之间的价格差异,为其制定合理的定价策略和市场竞争策略提供参考。
综上所述,基于Hive的民宿价格分析系统结合了数据采集、存储、分析和展示的功能,为民宿经营者和投资者提供了一个全面的数据分析平台,帮助他们更好地把握市场动态,提升经营效率和竞争力。系统的搭建将有助于推动民宿行业的发展,促进市场的健康竞争。
关键词:大数据;Hive; Flask;民宿价格信息
Design and implementation of a homestand price analysis system based on Hive
Abstract: With the development of the tourism industry, homestays are becoming more and more popular as an accommodation option, so understanding the price trends and competition for homestays is crucial for operators and investors. By using the Hive platform, data from a variety of sources can be integrated and analyzed, providing comprehensive and accurate homestand price data, and efficient data analysis through flexible scalability and powerful parallel processing capabilities. This topic not only meets the market demand, but also provides practical opportunities for the practical application of big data analysis, and provides data support and analysis tools for academic research in related fields.
This paper introduces a homestand price analysis system based on Hive, which aims to help homestand operators and investors better understand the price trend of homestand market, provide data support and decision reference. Flask framework is adopted in the background of the system, and MySQL is used to store data in the database.
Through this system, the user can realize the collection, storage, analysis and visual display of the price data. First of all, the system uses Hive to capture and clean the price data of major guest house platforms, and stores the cleaned data into the MySQL database. Subsequently, the Flask framework provides a strong background support to process user requests, connect to the database, and invoke the corresponding data analysis module for processing.
The main functions of the system include: real-time update of price data and scheduling of scheduled tasks, statistical analysis and prediction of price trend, regional comparison of B&B prices and recommendation of popular B&B. Through the charts and reports provided by the system, users can clearly understand the changing trend of homestaying prices, as well as the price differences between different regions, so as to provide reference for the formulation of reasonable pricing strategies and market competition strategies.
In summary, the Hive-based homestand price analysis system combines the functions of data collection, storage, analysis and display, providing a comprehensive data analysis platform for homestand operators and investors to help them better grasp the market dynamics, improve operating efficiency and competitiveness. The construction of the system will help promote the development of the hotel industry and promote healthy competition in the market.
Key words: Big data; Hive; Flask; Homestay price information
1 绪论
1.1研究背景与现状
随着旅游业的快速发展和民宿行业的兴起,越来越多的人选择民宿作为旅行住宿的首选。民宿市场的竞争日益激烈,价格策略对民宿经营者和投资者至关重要。然而,如何科学合理地定价,把握市场价格趋势,成为了民宿经营者面临的挑战之一。因此,建立一个民宿价格分析系统能够为民宿行业提供数据支持和决策参考,有助于提升民宿经营效率和市场竞争力。
通过对民宿价格数据的收集和分析,深入了解民宿市场的价格变化趋势,掌握市场供需关系,为制定合理的价格策略提供依据。通过对不同地区民宿价格的比较和热门民宿推荐,帮助民宿经营者更好地了解竞争对手的定价策略,找到自身的竞争优势。利用历史价格数据和趋势分析方法,预测未来民宿价格的变化趋势,为民宿经营者提供合理的定价建议。通过数据可视化和报表展示,直观呈现民宿价格数据,帮助用户快速准确地获取市场信息,为其经营决策提供支持。
综上所述,民宿价格分析系统的研究旨在通过数据分析和技术手段,为民宿经营者和投资者提供科学的数据支持和决策参考,促进民宿行业的健康发展和竞争力提升。
1.2国内外研究现状
1.2.1国内研究现状
民宿数据采集与分析:国内一些研究机构和民宿开展了民宿数据采集与分析工作,通过对不同城市、地区的民宿价格数据进行收集整理,为行业提供参考。
民宿市场调研报告:一些研究机构发布了关于民宿市场的调研报告,分析民宿行业的发展趋势、市场规模、竞争格局等,为投资者和从业者提供决策依据。
民宿数据可视化平台:部分民宿和研究机构开发了民宿数据可视化平台,通过图表展示和数据分析,帮助用户更直观地了解民宿市场价格动态和趋势。
综合来看,国内外对民宿价格分析系统的研究主要集中在数据采集、分析模型构建、市场调研和数据可视化等方面。未来随着人工智能和大数据技术的不断发展,民宿价格分析系统将更加智能化和精准化,为民宿经营者和投资者提供更全面和有效的决策支持。
1.2.2国外研究现状
国外研究现状:
Airbnb数据分析平台:一些研究者利用Airbnb平台上的数据进行价格趋势分析和市场研究,探讨民宿价格与各种因素(如地理位置、设施等)之间的关系。
民宿价格预测模型:一些学者借助机器学习和数据挖掘技术,构建民宿价格预测模型,帮助民宿经营者更好地制定定价策略。
1.3论文主要研究工作
1、数据采集:从各种数据源(如网站、API等)收集民宿价格数据,并将其导入Hive中进行存储和管理。
2、数据清洗与预处理:对采集到的数据进行清洗、转换和整理,去除重复值、处理缺失值、标准化数据格式等,以确保数据质量和一致性。
3、数据存储与管理:使用Hive作为数据仓库,存储和管理民宿价格数据,建立适当的数据模型和表结构。
4、数据查询与分析:利用Hive提供的查询语言(HQL)编写查询语句,从Hive中的民宿价格数据中提取有价值的信息。可以计算统计指标,进行数据聚合、筛选和排序等操作。
5、趋势分析:分析民宿价格的变化趋势,例如季节性价格波动、地区价格差异等,帮助用户了解市场动态,并制定相应的决策和策略。
6、市场竞争分析:比较不同民宿之间的价格水平、入住率等指标,分析竞争对手的定价策略和市场份额,为经营者提供参考。
7、可视化展示:将分析结果以图表、报表等形式进行可视化展示,帮助用户直观地理解和解读数据,并支持决策制定。
8、用户交互界面:设计友好的用户界面,提供易于使用的操作界面和功能菜单,使用户能够方便地查询和分析民宿价格数据。
2 技术总述
2.1 基于Scrapy的网络爬虫技术
Scrapy是目前较为成熟的爬虫技术框架,一般采用Python语言开发程序,Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
在本设计中,由于需要使用到价格网站的原始数据,因此需要开发相应的网
络爬虫程序完成对价格原始数据的采集,图2-1为爬取民宿网站的价格
数据的原理流程图。
图2-1民宿网站爬重原理流程图
2.2 Hive技术
Hadoop是一个由Apache基金会所开发的分布式系统基础架构,主要解决海量数据的存储和海量数据的分析计算问题,广义上来说,HADOOP通常是指一个更广泛的概念,即HADOOP生态圈。
Hive是一个构建在Hadoop上的数据仓库框架。最初,Hive是由Facebook开发,后来移交由Apache软件基金会开发,并作为一个Apache开源项目。
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。
其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更进一步可以说hive就是一个MapReduce的客户端。
图2-2 Hive原理图
2.3 Flask技术
Flask是一个基于Python语言编写的轻量级Web应用框架,其核心理念是简单而灵活。Flask提供了基础的Web应用组件(如路由、请求和响应管理等),并可与其他第三方库集成,以实现更高级别的Web应用开发。
以下是Flask的主要特点:
轻量级和灵活性:Flask设计的目的是提供一种简单而灵活的方式来构建Web应用,因此它只提供了基础的Web应用组件,可以根据需求进行自定义扩展。
易学易用:Flask的API非常简洁易懂,上手难度较低,开发者可以很快地了解其基本使用方法,并开始进行Web应用的开发。
可扩展性:Flask可以集成许多第三方库,如SQLAlchemy、WTForms等,以实现更高级别的Web应用开发。
RESTful支持:Flask可以方便地实现RESTful API,使得开发者能够快速构建RESTful服务。
单元测试支持:Flask内置支持Python标准库unittest,使得开发者可以方便地进行单元测试。
Jinja2模板引擎:Flask默认使用Jinja2模板引擎,该模板引擎具有良好的模板继承和自定义过滤器等功能,可以快速构建出美观且高效的用户界面。
总体而言,Flask是一个轻量级、易学易用、可扩展性强的Web框架,适用于构建中小型Web应用。它的灵活性使得开发者可以根据需求进行自定义扩展,同时其集成了许多有用的第三方库,使得开发者可以快速地构建出有用的Web应用。
2.4 Echarts前端可视化技术
Apache ECharts 是一款基 于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。ECharts 开源来自百度商业前端数据可视化团队,基于htm15 Canvas, 它是一个纯Javascrint,图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。
2.5 本章小结
本章主要分析了系统开发过程中使用到的技术点和框架,通过研究这些技术的原理后,在本设计中加以应用,包括民宿价格信息采集的爬虫技术,数据持久化存储技术,Hive分析,以及基于Flask框架的系统后台技术,通过预研上述技术点并加以应用从而开发出基于Hive的民宿价格数据分析系统。
3 民宿价格信息大数据分析系统实现
3.1系统功能
通过前面的功能分析可以将基于大数据的民宿价格信息分析平台的研究与实现的功能主要包括用户登录、民宿价格信息管理、数据分析等内容。后台管理是针对已登录的用户看到满意的价格数据分析而设计的。
3.2可行性研究
通过对系统研究目标及内容的分析审察后,提出可行性方案,并对其进行论述。主要从技术可行性出发,再进一步分析经济可行性和操作可行性等方面。
开发系统所涉及到的资料,一般是在图书馆查阅,或是在网上进行查找收集。所需要的一些应用软件也都是在网上可以免费下载的,因此,开发成本是几乎为零。但是开发出来的系统,还是具有高效率,低成本,较高质量的。所以,从经济可行性的角度,该系统符合标准。
技术可行性是考虑在现有的技术条件下,能否顺利完成开发任务。以及判断现有的软硬件配置是否能满足开发的需求。而本系统采用的是Hadoop开发框架,并非十分困难,所以在技术上是绝对可行的。此外,计算机硬件配置是完全符合发展的需要。
当前计算机信息化的知识已经十分普及了,现在的操作人员也都是对系统环境有很强的适应性,各类操作人员大都是有过培训补充的,因此完全不影响组织结构,所以在运行上也是可行的。
从时间上看,在大四的最后一个学期,在实习工作与完成毕设两件大事相交叉的时间里,结合之前学习的相关知识,并开发系统,时间上是有点紧,但是也不是完全没可能实现,通过这段时间的努力功能基本实现。
3.3 系统实现流程
基于Hive的民宿价格分析系统实现流程大致如下:
数据收集:首先,需要收集民宿价格数据。您可以从民宿平台的公开API接口获取数据,或者通过网页爬虫工具爬取数据,并将数据保存到文件或数据库中。
数据清洗和预处理:在数据加载到Hive之前,通常需要进行数据清洗和预处理,包括去除重复记录、处理缺失值、数据格式转换等操作,以确保数据质量。
数据导入Hive:将经过清洗和预处理的数据导入到Hive表中。您可以使用Hive的LOAD DATA或INSERT INTO语句来加载数据,创建外部表或内部表,视需求而定。
数据分析:利用Hive提供的SQL查询功能,对民宿价格数据进行各种分析。您可以编写SQL查询语句来计算平均价格、最高价格、最低价格,按不同条件进行分组统计等。
数据可视化:使用数据可视化工具(如Tableau、Power BI等)或编程库(如Matplotlib、Seaborn等),将分析结果可视化展示,以便更直观地理解数据。
定时任务和自动化:设置定时任务或自动化脚本,定期更新数据并执行分析任务,以保持系统数据的实时性和准确性。
系统优化:根据实际需求不断优化系统,包括调整数据模型、优化查询性能、增加数据安全措施等,以提高系统效率和稳定性。
3.4 价格数据爬虫设计
这个项目我们的主要目的是爬取民宿网的价格数据信息,包括价格区间、民宿名称和民宿描述和规模等具体详情信息,下面描述本文爬虫工程主要设
计步骤。
(1)创建项目
打开一个终端输入:scrapy startproiect python_ city _data,Scrapy框架将会在指定目录下生成整个工程框架。系统生成的目录如下图3-2所示:
图3-2爬虫框架目录结构
(2)修改setting文件
如图3-1所示为修改后的setting文件主要内容,本设计主要修改三项内容,
第一个是不遵循机器人协议,第二个是下载间隙,由于下面的程序要下载多个页
面,所以需要给一个间隙(不给也可以,只是很容易被侦测到),第三个是请求
头,添加一个User-Agent。
表3-1 爬虫setting文件主要配置
BOT_NAME = 'python_city_data' |
(3)确认要提取的数据,item 项
item定义你要提取的内容(定义数据结构),比如我提取的内容为民宿价格信息的所在城市和民宿价格详情,于是需要在items类中新建对应的实体类,并需要设置相应的字段取出对应的数据。Field 方法实际上的做法是创建一个字典,给字典添加一个建,暂时不赋值,等待提取数据后再赋值。
- 开发爬虫程序,访问下载网页,使用Xpath语法提取内容
表3-1 价格爬取的主要代码
import requestsfrom bs4 import BeautifulSoup # 发送 HTTP 请求获取网页内容 url = 'https://www.example.com/airbnb' response = requests.get(url) if response.status_code == 200: soup = BeautifulSoup(response.text, 'html.parser')
# 解析网页内容,提取民宿价格信息 prices = soup.find_all('span', class_='price')
for price in prices: print(price.text) # 输出民宿价格else: print('Failed to fetch the webpage') |
3.5 Hive程序设计
Hive是建立在Hadoop之上的数据仓库系统,用于提供数据查询和分析功能。以下是一个简单的Hive集群启动流程的概述:
在启动Hive之前,您需要首先准备一个运行Hadoop的集群。这包括配置HDFS(Hadoop分布式文件系统)和YARN(资源管理器)等组件。
首先,需要在每个节点上安装Hive软件。您可以从Apache Hive的官方网站下载最新版本的软件包,并按照官方文档中的指南进行安装。
编辑Hive的配置文件hive-site.xml,配置Hive的元数据存储后端(如MySQL或Derby)、HDFS的URI、YARN的资源管理器地址等相关参数。
Hive Metastore是Hive的元数据存储服务,您需要启动Metastore服务并确保其与所选的元数据存储后端(如MySQL)连接正常。
HiveServer2是Hive的服务,负责接收客户端的请求,并通过执行HiveQL语句来操作Hive数据。您需要启动HiveServer2服务。
最后,您可以使用Hive客户端工具(如beeline或Hue)连接到HiveServer2,并开始执行HiveQL查询和操作。
原始的民宿价格信息数据一般信息较为冗杂,且很难看出规律,因此我们需要将数据存储在HDFS上,数据在多台机器上保存了n份,保证了原始数据的高可用。然后通过Hive框架开发程序,将海量的原始数据计算过程分成一个个的
job提交到yarn上管理执行。
表3-2 民宿价格Hive分析代码
-- 创建民宿价格数据表CREATE TABLE IF NOT EXISTS airbnb_prices ( id INT, location STRING, price DECIMAL(10, 2), room_type STRING, rating DECIMAL(3, 2) ); -- 导入民宿价格数据到Hive表 LOAD DATA INPATH '/path/to/airbnb_prices.csv' INTO TABLE airbnb_prices; -- 查询各地区民宿平均价格SELECT location, AVG(price) AS avg_priceFROM airbnb_pricesGROUP BY locationORDER BY avg_price DESC; -- 查询各种房型的平均价格和评分SELECT room_type, AVG(price) AS avg_price, AVG(rating) AS avg_ratingFROM airbnb_pricesGROUP BY room_type; import pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns # 1. 加载数据# 假设数据保存在名为 airbnb_data.csv 的CSV文件中,包括房源ID、价格等字段 data = pd.read_csv('airbnb_data.csv') # 2. 数据预处理(如果需要)# 如果数据中有缺失值或需要进行数据类型转换等预处理操作,可以在这里进行处理 # 3. 数据分析# 计算平均价格、最高价格、最低价格等统计指标 average_price = data['price'].mean() max_price = data['price'].max() min_price = data['price'].min() # 4. 数据可视化# 绘制价格分布直方图 plt.figure(figsize=(10, 6)) sns.histplot(data['price'], kde=False, bins=30, color='skyblue') plt.axvline(average_price, color='red', linestyle='--', label=f'Average Price: ${average_price:.2f}') plt.title('Distribution of Airbnb Prices') plt.xlabel('Price ($)') plt.ylabel('Count') plt.legend() plt.show() |
4 后台系统实现
基于大数据的民宿价格信息分析平台的基本业务功能是采用Flask框架实现的, 前端 JS采用jQuery框架,页面样式采用EasyUI 框架,页面展示使用Echarts技术,数据 存储采用关系型数据库Mysql。在本文的第四章将详细介绍后台系统的实现部分,包括详细阐述了系统功能模块的具体实现,并展示说明了部分模块的功能界面。
4.1 开发环境与配置
本系统设计基于B/S架构,其中服务器包括应用服务器和数据库服务器。这种架构模式,使用户只需要在有网络的地方即可通过浏览器访问,而不需要再安装客户端软件,交互性更强。基于大数据的民宿价格信息分析平台使用Pycharm集成开发工具。本系统的主要开发环境以及开发工具如表4-1所示。
表4-1 系统开发环境和工具
项目 | 系统环境及版本 |
硬件环境 | Windows 64 位操作系统 |
Python版本 | 3.5 |
数据库 | MySql |
开发工具 | Pycharm |
项目架构 | Hive+Flask+Scrapy |
表4-2 系统配置代码
from flask import Flask app = Flask(__name__) # 配置对象class Config: DEBUG = False SECRET_KEY = 'your_secret_key' DATABASE_URI = 'your_database_uri' # 加载配置 app.config.from_object(Config) # 路由和视图函数@app.route('/')def index(): return 'Hello, World!' if __name__ == '__main__': app.run() |
上述代码中,我们首先定义了一个名为Config的配置对象,其中包含了一些常用的配置项。你可以根据自己的需求添加、修改或删除配置项。在这个示例中,我们添加了DEBUG、SECRET_KEY和DATABASE_URI三个配置项。
接着,我们使用app.config.from_object(Config)方法加载配置对象,将其应用到Flask程序中。
然后,我们定义了一个名为index的路由和视图函数,用于处理根路径的请求。在这个示例中,当用户访问根路径时,浏览器将显示Hello, World!消息。
最后,通过app.run()方法启动Flask应用程序。
你可以根据自己的需求,添加更多的路由和视图函数,并在配置对象中定义适当的配置项。例如,你可以添加数据库连接信息、日志配置、文件上传限制等。需要注意的是,SECRET_KEY是用于加密session数据的密钥,你应该使用一个随机的、安全的字符串来设置它。
另外,你还可以将配置信息存储在独立的配置文件中,并使用app.config.from_pyfile('your_config_file.py')方法加载配置文件。这样可以将配置与代码分离,方便在不同环境下进行配置切换。
4.2 数据库的设计
数据库设计是系统设计中特别重要的一部分。数据库的好坏决定着整个系统的好坏,并且,在之后对数据库的系统维护、更新等功能中,数据库的设计对整个程序有着很大的影响。
根据功能模块的划分结果可知,本系统的用户由于使用账号和密码进行登录,因此在本系统中需要分别进行数据记录。首先根据如下6个数据实体:用户、民宿价格信息等数据库表。
用户的属性包括用户编号、用户名、密码和性别、注册账号的时间。用户实体属性图如图4-2所示:
图4-2 用户实体属性图
根据以上分析,各个实体之间有一定的关系,使实体与实体可以联系起来,建立成整个系统的逻辑结构,本系统中,普通用户通过对民宿价格信息的管理,使民宿价格信息与用户实体存在对应关系。
表4-3 价格类代码
# 创建价格数据表 cursor = conn.cursor() cursor.execute(''' CREATE TABLE IF NOT EXISTS jobs ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT, company TEXT, location TEXT, salary INTEGER ) ''') conn.commit() # 插入价格数据def insert_job(title, company, location, salary): cursor.execute('INSERT INTO jobs (title, company, location, salary) VALUES (?, ?, ?, ?)', (title, company, location, salary)) conn.commit() # 查询价格数据def query_jobs(): cursor.execute('SELECT * FROM jobs') return cursor.fetchall() # 更新价格数据def update_job(id, title, company, location, salary): cursor.execute('UPDATE jobs SET title=?, company=?, location=?, salary=? WHERE id=?', (title, company, location, salary, id)) conn.commit() # 删除价格数据def delete_job(id): cursor.execute('DELETE FROM jobs WHERE id=?', (id,)) conn.commit() # 关闭数据库连接def close_connection(): cursor.close() conn.close() |
4.3 系统功能模块实现
用户登录时需要在登录界面输入用户名、密码进行身份认证,要求必须是表单认证、校验。其配置文件中配置了相应的工具类,当用户登录系统进行身份认证和权限控制时,会在该类中从数据库获取到用户信息及其具有的权限信息,并 且比较用户输入的账号是否存在或者输入的密码与数据源中的密码是否匹配。具体流程如时序图如4-2所示。
图4-2登录认证流程图
民宿价格信息大数据分析系统的用户登录界面如下图所4-3所示:
图4-3用户登录界面
登陆成功后,系统会成功跳转至首页,在首页中,位于上方的横栏是对本系统的基本信息的描述和欢迎登录效果,另外登录用户的用户名也会显示在首页中,可直接表明用户己成功登录。左侧则是本系统的导航菜单,可折叠展示,较为方便,右方则为欢迎页效果。民宿价格信息大数据分析系统的首页界面如下图所4-4所示:
图4-4民宿价格信息大数据系统首页界面
4.3.2民宿价格信息管理功能
民宿价格信息管理功能是对民宿价格信息进行查询,删除等操作的功能集合,价格信
息管理功能使用到了民宿价格信息表t_ ob,民宿价格信息表t_job 的主要数据字段,结构,类型及描述如下表4-2所示。
表4-2 民宿价格信息表字段
字段名称 | 数据类型 | 是否允许为空 | 描述 |
id | int | 不允许 | 自增主键,唯一ID |
cityname | String | 允许 | 所在城市名称 |
company | String | 允许 | 民宿名称 |
size | String | 允许 | 民宿规模 |
title | String | 允许 | 标题 |
experience | String | 允许 | 景区 |
score | String | 允许 | 分数 |
price | String | 允许 | 价格 |
Url | String | 允许 | 链接 |
民宿价格信息大数据分析系统的民宿价格信息管理功能界面如下图所4-5所示:
图4-5民宿价格信息管理菜单界面
民宿价格信息管理
功能流程功能图如图3-6所示:
图4-6 民宿价格信息管理功能流程图
通过“民宿价格信息管理”按钮,进入民宿价格信息管理界面,用户可以看到民宿价格信息列表,例如:民宿名称、所在城市、数量、价格要求、薪资待遇、价格时间的详细信息。通过此界面,用户可以对民宿价格信息进行删除管理操作。
4.3.3民宿价格数据分析大屏
数据可视化模块就是对我们采集和计算的分析结果的展示。数据分析模块的
数据进行一个精美而又直接的展示,我们采用大屏的方式进行展示,展示数据结
构分明,背景具有科技感,把相对复杂的、抽象的数据通过可视的、交互的方式
进行展示,从而形象直观地表达数据蕴含的信息和规律。民宿价格信息大数据看板界面如图4-7所示。
图4-7民宿价格信息大屏
民宿价格信息大数据分析可视化开发的难点并不在于图表类型的多样化,而在于如何能在简单的一页之内让用户读懂价格数据之间的层次与关联,这就关系到布局、色彩、图表、动效的综合运用。如排版布局应服务于业务,避免为展示而展示;配色一般以深色调为主,注重整体背景和单个视觉元素背景的一致性。本文使用Echarts中地图、线条等组件,将分析结果较为直观的展示给平台用户,使得用户能够简便的获取有效的信息。
4.4 本章小结
本章主要分析了基于大数据的民宿价格信息分析系统开发过程中使用到的技术和具体的实现步骤,这其中主要介绍了基于Hive的民宿价格信息大数据分析系统的搭建环境和开发步骤,包括程序中的一些数据库配置等。前端页面采用的是Echarts和html实现。
5 总结与展望
5.1 系统开发遇到的问题
由于基于大数据民宿价格信息分析平台是由本人独立开发,因此在系统设计和业务逻辑方面更多地借鉴了目前市场上较为流行的框架和技术点,包括大数据技术,很多是不熟悉没接触过的,在开发过程中不断学习新知识。另外由于本人的时间和精力的原因,在系统开发过程中有很多地方可能并不能够完全尽如人意,还有许多需要补充的功能与模块。
5.2 总结与展望
大数据民宿价格信息系统是在对相关管理范畴进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计等,是一个具有实际应用意义的管理系统。根据本毕业设计要求,经过四个多月的设计与开发,大数据民宿价格信息系统基本开发完毕。其功能基本符合用户的需求。
为保证有足够的技术能力去开发本系统,首先本人对开发过程中所用到的工
具和技术进行了认真地学习和研究,详细地钻研了基于Python的网络爬虫技术
以及Echarts, CSS, HTML等前端开发技术,同时还研究了大数据开发技术Hadoop, HDFS, Hive等。
[1] 王昭苏,秦余腾,王秀娟等. 一种基于Hive的心血管疾病大数据分析 [J]. 中国科技信息, 2023, (23): 87-91.
[2] Feng Y ,Wang L . Distributed ItemCF Recommendation Algorithm Based on the Combination of MapReduce and Hive [J]. Electronics, 2023, 12 (16):
[3] A V K ,V A K . Accuracy vs. Energy: An Assessment of Bee Object Inference in Videos from On-Hive Video Loggers with YOLOv3, YOLOv4-Tiny, and YOLOv7-Tiny. [J]. Sensors (Basel, Switzerland), 2023, 23 (15):
[4] 王璐瑶. 基于Hive的钻井信息数据仓库的设计与实现[D]. 西安石油大学, 2023.
[5] 李霄扬,朱恒. 基于HHS的离线数据分析平台的设计与实现 [J]. 电脑知识与技术, 2023, 19 (10): 75-77.
[6] K. N M M ,Anna P ,G. M H L , et al. A scientific note on in-hive positioning determines small hive beetle trap efficacy [J]. Journal of Apicultural Research, 2022, 61 (3): 315-316.
[7] 季斯皓. 基于Hive数据仓库的贵金属市场投资者交易行为管理系统的设计和实现[D]. 华东师范大学, 2022.
[8] 徐悦伟,夏凌云. 基于WLAN大数据和Hive数据仓库的高校人流溯源系统设计与实现 [J]. 微型电脑应用, 2021, 37 (11): 71-73.
[9] 王敏. 基于TDH+Hive构建大数据离线计算平台的方法和实现 [J]. 科技风, 2021, (20): 11-12.
[10] 胡雪洁. 基于Hive的电商数据分析平台的实现与应用[D]. 汕头大学, 2021.
[11] 高艳凯. 基于大数据平台的征信数据采集和数据处理研究[D]. 中北大学, 2021.
[12] 叶惠仙. 基于Hadoop+Hive技术的招聘网站数据分析研究 [J]. 网络安全技术与应用, 2020, (12): 77-79.
[13] 李英楠. 基于Hive的购销数据仓库系统的设计与实现[D]. 西南大学, 2020.
[14] 许智宏,王怡峥,王利琴等. 基于Hive的海量公交客流起讫点挖掘方法 [J]. 科学技术与工程, 2020, 20 (20): 8300-8309.
[15] 张欣怡. 基于Hive数据仓库的中国空气质量统计分析系统的设计实现[D]. 安徽财经大学, 2020.
[16] 晔沙. 基于Hive的高寒草地海量数据分析系统设计与实现[D]. 华南农业大学, 2018.
时光飞逝,四年的本科生生涯即将结束。在这四年的时光里,有遇到难题时的手足无措,有获得专业进步时的开心。经历了许多的事情,自己也在不知不觉中成长了很多,心中充盈最多的仍是感激。
首先感谢我的导师,她严谨的治学态度深深地影响每位同学。我要感谢我的父母,他们总是默默的付出,在生活上给与我最大的帮助,在学习上也给我很多建议。
最后,由衷的感谢各位评审老师在百忙之中抽出时间来参与我的论文评审和答辨。