大数据课程H2——TELECOM的电信流量项目实现

文章作者邮箱:yugongshiye@sina.cn              地址:广东惠州

 ▲ 本章节目的

⚪ 了解TELECOM项目的数据收集;

⚪ 了解TELECOM项目的数据清洗;

⚪ 了解TELECOM项目的数据导出;

⚪ 了解TELECOM项目的数据可视化;

⚪ 了解TELECOM项目的其他;

一、数据收集

1. 在实际生产环境中,电信流量日志肯定不只是在一台服务器上产生,而是每一台服务器都会产生流量日志。所以此时,需要先搭建Flume的扇入流动模型,之后将收集到的数据传输到HDFS上进行存储。

2. 步骤:

a. 在第二台和第三台服务器上来创建对应的目录用于存储日志(将第二台和第三台服务器当作是日志产生的服务器) 。

cd /home

mkdir telecomlog

b. 进入对应的目录,将日志上传或者下载到指定目录下(实际过程中,日志肯定是实时产生的) 。

cd telecomlog/

#云主机的下载地址

 wget http://bj-yzjd.ufile.cn-north-02.ucloud.cn/103_20150615143630_00_00_000_2.csv

c. 收集第二台和第三台服务器上的日志,将收集到的日志传输到第一台服务器上,进行数据的扇入。

cd /home/software/apache-flume-1.9.0-bin/data

#编辑文件

vim telecomlog.conf

#在文件中添加如下内容

a1.sources = s1

a1.channels = c1

a1.sinks = k1

# 日志是放在指定目录下的

# 所以此时监控指定目录下的变化

# 如果目录下产生了新的文件

# 需要收集这个新文件中的内容

a1.sources.s1.type = spooldir

# 指定要监听的目录

a1.sources.s1.spoolDir = /home/telecomlog

# 配置Channel

a1.channels.c1.type = memory

a1.channels.c1.capacity = 10000

a1.channels.c1.transactionCapacity = 1000

# 需要将收集到的数据发送到第一台服务器上

a1.sinks.k1.type = avro

a1.sinks.k1.hostname = hadoop01

a1.sinks.k1.port = 8090

# 绑定

a1.sources.s1.channels = c1

a1.sinks.k1.channel = c1

d. 数据收集到第一台服务器上之后,需要将收集到的数据写到HDFS上。

cd /home/software/apache-flume-1.9.0-bin/data/

#编辑文件

vim telecomlog.conf

#在文件中添加如下内容

a1.sources = s1

a1.channels = c1

a1.sinks = k1

# 需要接收第二台和第三台服务器传输来的数据

a1.sources.s1.type = avro

a1.sources.s1.bind = 0.0.0.0

a1.sources.s1.port = 8090

# 需要在数据中来添加一个时间戳

a1.sources.s1.interceptors = i1

a1.sources.s1.interceptors.i1.type = timestamp

# 配置Channel

a1.channels.c1.type = memory

a1.channels.c1.capacity = 10000

a1.channels.c1.transactionCapacity = 1000

# 配置Sink

# 需要将数据写到HDFS上,最好能够实现数据按天存储

a1.sinks.k1.type = hdfs

# 指定数据在HDFS上的存储路径

a1.sinks.k1.hdfs.path = hdfs://hadoop01:9000/telecomlog/reporttime=%Y-%m-%d

# 指定文件在HDFS上的存储类型

a1.sinks.k1.hdfs.fileType = DataStream

# 指定文件的滚动时间间隔

a1.sinks.k1.hdfs.rollInterval = 3600

a1.sinks.k1.hdfs.rollSize = 0

a1.sinks.k1.hdfs.rollCount = 0

# 绑定

a1.sources.s1.channels = c1

a1.sinks.k1.channel = c1

e. 启动HDFS。

start-dfs.sh

f. 启动第一台服务器上的Flume。

../bin/flume-ng agent -n a1 -c ../conf -f telecomlog.conf -

Dflume.root.logger=INFO,console

g. 启动第二台服务器和第三台服务器上的Flume。

../bin/flume-ng agent -n a1 -c ../conf -f telecomlog.conf -

Dflume.root.logger=INFO,console

二、数据清洗

1. 利用Flume将数据收集到了HDFS上,那么此时需要在Hive中建表来管理原始数据。

#启动YARN

start-yarn.sh

#进入HBase的安装目录的lib目录下

cd /home/software/hbase-2.4.2/lib

#进入子目录

cd client-facing-thirdparty/

#重命名

mv commons-logging-1.2.jar commons-logging-1.2.bak

mv log4j-1.2.17.jar log4j-1.2.17.bak

mv slf4j-log4j12-1.7.30.jar slf4j-log4j12-1.7.30.bak

#启动Hive的服务进程

hive --service metastore &

hive --service hiveserver2 &

#进入hive的客户端

hive

#创建库

create database telecom;

#使用这个库

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

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

相关文章

MySQL_事务学习笔记

事务 注意:一定要使用 Innodb 存储引擎 概述:一组操作的集合,是不可分割的工作单元,会把一个部分当成一个整体来处理,事务会把操作同时提交或者是撤销。要么同时成功,要么同时失败。 比如:上云…

如何用套索和RobustScalar建立预测函数?

我试图弄清楚如何在不使用Sklearn提供的.predict函数的情况下使用LASSO回归来预测值。这基本上只是为了扩大我对套索内部工作原理的理解。我在Cross Validated上问了一个关于套索回归如何工作的问题,其中一条评论提到了预测函数的工作原理与线性回归中的相同。正因为…

ESG撑不起波司登的“出海野心”

文 | 螳螂观察 作者 | 青月 ESG(环境、社会和企业治理)这把“火”,烧的是越来越“旺”了。 在“双碳”目标和市场的双重驱动下,各大企业这几年都不约而同的开始关注起ESG,特别是在二级市场上,不少上市公…

竞赛项目 深度学习的水果识别 opencv python

文章目录 0 前言2 开发简介3 识别原理3.1 传统图像识别原理3.2 深度学习水果识别 4 数据集5 部分关键代码5.1 处理训练集的数据结构5.2 模型网络结构5.3 训练模型 6 识别效果7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习…

Die2Die(D2D)和chip2chip(C2C)之间的高速互联接口

随着chiplet的兴起,Die2Die的高速互联越来越重要,相比于传统的C2C(chip2chip)的互联,D2D的片间距离很近(10mm量级),且这些小的chip(裸片)最终形成一个封装【多芯片模块(MCM)】。所以D2D的互联信道短&#x…

python中字符串内建函数篇4

一、ljust() 语法:str.ljust(width,[fillchar]) 参数说明: width – 指定字符串长度。 fillchar – 填充字符,默认为空格。 返回值:返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于原字符串…

什么是Selenium?使用Selenium进行自动化测试

什么是 Selenium?   Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。   等等,先别激动,让我再次重申一下,Selenium 仅可以测试We…

如何将视频转换成音频mp3格式?试一下这几种转换方法

MP3格式是一种被广泛使用的音频格式,可以在几乎所有音频播放器和设备上播放。此外,由于视频文件通常包含大量图像信息,因此其文件大小通常比相应的音频文件要大得多。将视频转换为MP3格式音频可以大大减小文件大小,从而节省硬盘空…

深兰科技熊猫汽车牵手首恒出行,人工智能技术提升商用车运营服务

8月8日,深兰科技集团旗下熊猫新能源汽车(上海)有限公司(下称熊猫新能源汽车)与河南首恒出行服务有限公司(下称首恒出行)在深兰科技总部举行签约仪式,首恒出行将向熊猫新能源汽车年定向采购10000台商用车,双方将在汽车后市场领域进行技术合作。…

12种不宜使用的Javascript语法

1. Javascript有两组相等运算符,一组是和!,另一组是和!。前者只比较值的相等,后者除了值以外,还比较类型是否相同。 请尽量不要使用前一组,永远只使用和!。因为默认会进行类型转换,规则十分难记。如果你…

使用公式与格式控制Excel快速实现计划甘特图

项目中都会遇到做任务计划的需求,有的客户要求需要有甘特图的形式本文介绍如何使用excel 单元格实现甘特图显示,调整任务时间自动填充单元格填色实现甘特图效果。废话不多说,先看效果。 准备工作先创建两列开始时间与完成时间,这…

使用KETTLE工具在Oracle和Dm8之间迁移数据

oracle 代码测试数据 CREATE TABLE PRODUCT_CATEGORY ( PRODUCT_CATEGORYID NUMBER(11,0) NOT NULL , NAME VARCHAR2(255) NOT NULL ENABLE, PRIMARY KEY (PRODUCT_CATEGORYID) )INSERT ALL into PRODUCT_CATEGORY(PRODUCT_CATEGORYID, NAME)VALUES(2,国学) into PRODUCT_CATEG…

uni——不规则tab切换(skew)

案例展示 案例代码 <!-- 切换栏 --> <view class"tabBoxs"><view class"tabBox"><block v-for"(item,index) in tabList" :key"index"><view class"tabItem":class"current item.id&…

华为新版ENSP PRO模拟器测评:性能表现与功能扩展一览

一、引言 在网络领域不断涌现的新技术和复杂的网络拓扑要求&#xff0c;推动了网络设备模拟器的持续发展和创新。华为作为一家领先的通信技术解决方案提供商&#xff0c;不断致力于为网络工程师和技术从业人员提供更优秀的仿真环境。最近&#xff0c;华为推出了ensp pro模拟器的…

Vue+SpringBoot项目开发:后台登陆功能的实现(二)

写在开始:一个搬砖程序员的随缘记录文章目录 一、SpringBoot项目的搭建二、数据库配置1、新建数据库2、新建用户表 三、SpringBoot项目的配置 一、SpringBoot项目的搭建 项目搭建传送门&#xff1a;从零开始&#xff0c;SpringBoot项目快速搭建 二、数据库配置 1、新建数据库…

通过Easy Excel导入数据

目录 &#x1f351;一、背景&#x1f351;二、开发验证&#x1f34a;2.1、引入easyexcel依赖&#x1f34a;2.2、创建表及基础代码&#x1f34a;2.3、处理类及接口&#x1f353;2.3.1、EasyExcel监听处理器&#x1f353;2.3.2、Controller接口&#x1f353;2.3.3、service调用监…

字节跳动推出公共DNS服务,将支持 DoH/DoT/DoQ 等协议

近日&#xff0c;字节跳动旗下的火山引擎正式上线 TrafficRoute 解析调度套件&#xff0c;其实质就是一套“公共 DNS”服务&#xff0c;目前仅支持免费版。该 DNS 后续将提供 DoH、DoT 和 DoQ 加密 DNS 查询协议。 火山引擎公共解析&#xff08;PublicDNS&#xff09;产品介绍&…

LeetCode算法递归类—验证二叉搜索树

目录 98. 验证二叉搜索树 题解&#xff1a; 代码&#xff1a; 运行结果&#xff1a;​编辑 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含…

Android Animation Made Easy

原文链接 Android Animation Made Easy 动画在任何一个GUI系统中都是一个非常重要的设计元素&#xff0c;它可以让交互变得优雅&#xff0c;让界面变得炫酷&#xff0c;让操作变得更加的舒畅&#xff0c;让状态过渡变得更加的顺滑&#xff0c;对视觉效果有极大的提升&#xff…

LeetCode热题100第49题----题目分享

给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 两个字符串互为字母异位词&#xff0c;当且仅当两个字符串包含的字母相同。同一组字母异位词中的字符串具备相同点&a…