基于Hadoop部署实践对网站日志分析(大数据分析案例)(三)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: 基于Hadoop部署实践对网站日志分析(大数据分析案例)



3.6 使用Sqoop将hive分析结果表导入mysql

3.6.1 创建mysql表

mysql -u root -p(启动MySQL,需要输入密码,不显示)


create database whw;(创建数据库)


创建一个表格


create table whw_logs_stat(logdate varchar(10) primary key,pv int,reguser int,ip int,jumper int);


image.png


3.6.2 将hive结果文件导入mysql

查看hive存放的表位置


show create table whw_2013_05_30;


image.png


使用sqoop将我们的hive里面的结果表导入到我们的MySQL里面,使用sqoop export –connect jdbc:mysql://localhost:3306/数据库 –username root -p –table MySQL里面的表名 –export-dir hive里面结果表的存储位置 -m 1 –input -fields-terminated -by ‘\001’


新建终端执行:


sqoop export --connect jdbc:mysql://localhost:3306/whw --username root -P --table whw_logs_stat --export-dir  /opt/hadoop/hive/warehouse/data.db/whw_2013_05_30  -m 1 --input-fields-terminated-by '\001'


image.png


sqoop export --connect jdbc:mysql://localhost:3306/whw --username root -P --table whw_logs_stat --export-dir  /opt/hadoop/hive/warehouse/data.db/whw_2013_05_31  -m 1 --input-fields-terminated-by '\001'


image.png


查看MySQL是否导入成功


select * from whw_logs_stat;


image.png


成功导入!


image.png



附加操作—增添色彩

本地Navicat连接

(我们用虚拟机里面的IP来连接我们的本地Navicat,这样有助于我们数据分析可视化!)


image.png


数据可视化(项目色彩一);

数据可视化可以直观的把我们的数据展现出来,作为领导者决策的重要参考意见


我采用pycharm的pymysql对虚拟机里面的MySQL进行远程连接,通过编程对数据可视化一键展示,不需要我们手动的添加数据,直接可以保存变量数据


image.png


简单的数据分析:很明显我们可以通过可视化的效果得知,2013-05-31的浏览量、注册用户、独立IP数这些正向指标都比较的好,都是高于2013-05-30的效果,所以我们可以在这一天对网站加大维护和投入相应的广告来盈利。


from pyecharts.globals import ThemeType
from pyecharts import options as opts
from pyecharts.charts import Bar
import pymysql
conn = pymysql.connect(
                host='192.168.190.135',
                user='root',
                password='2211',
                database='whw',
                port=3306,
                charset='utf8'
)
cur = conn.cursor()
sql = 'select logdate as `日期`,pv as `浏览量`,reguser as `注册用户数`,ip as `独立IP数量`,jumper as `跳出用户数` from `whw_logs_stat`;'
cur.execute(sql)
data = cur.fetchall()
print(data)
x_1=list(data[0][1:])
x_2=list(data[1][1:])
print(x_1)
print(x_2)
a=[]
for x in data:
    a.append(x[0])
a_1=a[0]
a_2=a[1]
print(a_1)
print(a_2)
conn.close()
data_0=['浏览量', '注册用户', '独立IP数', '跳出用户数']
c = (
    Bar({"theme": ThemeType.MACARONS})
    .add_xaxis(data_0)
    .add_yaxis(a_1, x_1)    #gap="0%"   这个可设置柱状图之间的距离
    .add_yaxis(a_2, x_2)    #gap="0%"   这个可设置柱状图之间的距离
    .set_global_opts(title_opts={"text": "某网站日志数据分析", "subtext": "柱状图"},     #该标题的颜色跟随主题
                     # 该标题默认为黑体显示,一般作为显示常态
                     # title_opts=opts.TitleOpts(title="标题")
                     xaxis_opts=opts.AxisOpts(
                         name='类别',
                         name_location='middle',
                         name_gap=30,  # 标签与轴线之间的距离,默认为20,最好不要设置20
                         name_textstyle_opts=opts.TextStyleOpts(
                             font_family='Times New Roman',
                             font_size=16  # 标签字体大小
                         )),
                     yaxis_opts=opts.AxisOpts(
                         name='数量',
                         name_location='middle',
                         name_gap=60,
                         name_textstyle_opts=opts.TextStyleOpts(
                             font_family='Times New Roman',
                             font_size=16
                             # font_weight='bolder',
                         )),
                    # datazoom_opts=opts.DataZoomOpts(type_="inside"),  #鼠标可以滑动控制
                     # toolbox_opts=opts.ToolboxOpts()  # 工具选项
                    # brush_opts=opts.BrushOpts()       #可以保存选择
    )
    .render("简单柱状图.html")
)
print("图表已生成!请查收!")


将数据导入到hbase(项目色彩二)

创建数据表和列族:create 'whw','data'

插入数据:


Put 'whw','1','data:londate,pv,reguser,jumper','2013-05-30,69857,28,10411,3749'

put 'whw','2','data:londate,pv,reguser,jumper','2013-05-31,502404,523,24635,8454'

参数说明:添加数据:put ‘表名称’,’行键’,’列族:列名1,列名2……’,‘数据1,数据2……’在这里我们就可以理解为是一个二维表,也就是Excel类似的,一行一列确定一个单元格


image.png


扫描整个列族:scan ‘表名称’, {COLUMN=>‘列族’}


Scan ‘whw’,{ COLUMN =>’data’}


image.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
Rust 前端开发 JavaScript
Tauri 开发实践 — Tauri 日志记录功能开发
本文介绍了如何为 Tauri 应用配置日志记录。Tauri 是一个利用 Web 技术构建桌面应用的框架。文章详细说明了如何在 Rust 和 JavaScript 代码中设置和集成日志记录,并控制日志输出。通过添加 `log` crate 和 Tauri 日志插件,可以轻松实现多平台日志记录,包括控制台输出、Webview 控制台和日志文件。文章还展示了如何调整日志级别以优化输出内容。配置完成后,日志记录功能将显著提升开发体验和程序稳定性。
125 1
Tauri 开发实践 — Tauri 日志记录功能开发
|
2月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
192 6
|
2月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
83 2
|
9天前
|
存储 数据采集 监控
云上数据安全保护:敏感日志扫描与脱敏实践详解
随着企业对云服务的广泛应用,数据安全成为重要课题。通过对云上数据进行敏感数据扫描和保护,可以有效提升企业或组织的数据安全。本文主要基于阿里云的数据安全中心数据识别功能进行深入实践探索。通过对商品购买日志的模拟,分析了如何使用阿里云的工具对日志数据进行识别、脱敏(3 种模式)处理和基于 StoreView 的查询脱敏方式,从而在保障数据安全的同时满足业务需求。通过这些实践,企业可以有效降低数据泄漏风险,提升数据治理能力和系统安全性。
云上数据安全保护:敏感日志扫描与脱敏实践详解
|
6天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
33 4
|
1月前
|
存储 数据采集 监控
云上数据安全保护:敏感日志扫描与脱敏实践详解
随着企业对云服务的广泛应用,数据安全成为重要课题。通过对云上数据进行敏感数据扫描和保护,可以有效提升企业或组织的数据安全。本文主要基于阿里云的数据安全中心数据识别功能进行深入实践探索。通过对商品购买日志的模拟,分析了如何使用阿里云的工具对日志数据进行识别、脱敏(3 种模式)处理和基于 StoreView 的查询脱敏方式,从而在保障数据安全的同时满足业务需求。通过这些实践,企业可以有效降低数据泄漏风险,提升数据治理能力和系统安全性。
|
2月前
|
Web App开发 存储 监控
iLogtail 开源两周年:UC 工程师分享日志查询服务建设实践案例
本文为 iLogtail 开源两周年的实践案例分享,讨论了 iLogtail 作为日志采集工具的优势,包括它在性能上超越 Filebeat 的能力,并通过一系列优化解决了在生产环境中替换 Filebeat 和 Logstash 时遇到的挑战。
137 13
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
115 2
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
84 1
|
2月前
|
分布式计算 Hadoop 大数据
大数据体系知识学习(一):PySpark和Hadoop环境的搭建与测试
这篇文章是关于大数据体系知识学习的,主要介绍了Apache Spark的基本概念、特点、组件,以及如何安装配置Java、PySpark和Hadoop环境。文章还提供了详细的安装步骤和测试代码,帮助读者搭建和测试大数据环境。
81 1