数据采集与预处理01: 项目1 数据采集与预处理准备

数据采集与预处理01: 项目1 数据采集与预处理准备

img

任务1 认识数据采集技术,熟悉数据采集平台

数据采集:足够的数据量是企业大数据战略建设的基础,因此数据采集成为大数据分析的前站。数据采集是大数据价值挖掘中重要的一环,其后的分析挖掘都建立在数据采集的基础上。大数据技术的意义确实不在于掌握规模庞大的数据信息,而在于对这些数据进行智能处理,从而分析和挖掘出有价值的信息,但前提是拥有大量的数据。

数据采集过程中涉及3个过程:数据的抽取Extract,数据的清洗转换Transform和数据的加载Load。英文缩写为ETL。

数据采集的来源:管理信息系统、Web信息系统、物理信息系统、科学实验系统。

数据采集的方法:

​ 数据采集的新方法有系统日志采集方法、网络数据采集方法等

​ 另外有网页数据采集的方法。

数据采集的过程基本步骤如下:

  1. 将需要抓取的数据网站的URL信息写入URL队列。
  2. 爬虫从URL队列中获取需要抓取数据网站的URL信息。
  3. 获取某个具体网站的网页内容。
  4. 从网页内容中抽取出该该网站正文页内容的链接地址。
  5. 从数据库中读取已经抓取国内容的网页地址。
  6. 过滤URL。对当前的URL和已经抓去过的URL进行比较。
  7. 如果该网页地址没被抓去过,则将该地址写入数据库。如果该地址已经被抓取过,则放弃对这个地址的抓取操作。
  8. 获取该地址的网页内容,并抽取出所需属性的内容值。
  9. 将抽取的网页内容写入数据库。

任务实施

  1. Scrapy系统环境搭建

Scrapy是Python开发的一个快速、高层次的屏幕抓取和Web抓取框架。支持多种类型的爬虫基类。

sudo apt-get install python-pip
pip install --upgrade pip
pip install scrapy

image-20240122225758803

image-20240122233940997

日志系统环境的搭建

  1. 安装Flume

Flume是Cloudera提供的一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输系统,支持在日志系统中定制各种数据发送方,用于收集数据。同时,Flume具有对数据进行简单处理,并写到各种数据接收方的能力。

Flume需要JDK环境,使用 java -version 命令查看系统是否配置了JDK环境

image-20240122230050079

没有的话则需要下载安装。

接着下载flume。

https://flume.apache.org/

在官网下载。

image-20240122230637526

然后执行解压与安装

cd 下载
sudo tar -zxvf apache-flume-1.11.0-bin.tar.gz -C /usr/local

image-20240122231410869

cd usr/local
sudo chown 777 apache-flume-1.11.0-bin
sudo mv apache-flume-1.11.0-bin flume

  1. 配置环境变量

执行sudo gedit /etc/profile 命令

export FLUME_HOME=/usr/local/flume
export FLUME_CONF_DIR=$FLUME_HOME/conf
export PATH=$java_home/bin:$PATH:$FLUME_HOME/bin

使用source /etc/profile使其生效。

另外还要修改配置文件什么的,非常繁琐。

https://blog.csdn.net/qq_43452181/article/details/109187373

给个参考。

检测成果。

cd /usr/local/flume
./bin/flume-ng version

image-20240122232837586

这样就行。

任务2 认识数据预处理技术

数据预处理是指在对数据进行数据挖掘的主要处理以前,先对原始数据进行必要的清理、集成、转换、离散、归约、特征选择和提取等一系列处理工作,达到挖掘算法进行知识获取、研究所要求的最低规范和标准。

数据预处理的常见问题:

  1. 数据采样 分为加权采样、随机采样和分层采样3类,其目的是从数据集中采集部分样本进行处理。
  2. 数据清理 ,清理技术通常包括填补遗漏的数据值、平滑有噪声数据、识别或者除去异常值。

​ 2.1 数据填充:包括人工填写、特殊值填充、平均值填充、热卡填充(就近填充)、k近邻填充。

​ 2.2 平滑噪声;分箱、回归、聚类

​ 2.3 数据集成: 实体识别、冗余和相关分析、元组重复、数据值冲突的检测与处理、数据转换、数据归约、特征选择和特征提取。

任务实施

搭建pig系统。

https://blog.csdn.net/m0_52595361/article/details/127930651

搭建kettle系统。

https://blog.csdn.net/lcy1619260/article/details/132540385

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python-分享篇-养老金数据统计

代码 import matplotlib.pyplot as plt import numpy as np # 为柱状图添加标注 def label(bars):for bar in bars:height bar.get_height()plt.text(bar.get_x()bar.get_width()/2.- 0.2, 1.03*height, %s % int(height))plt.rcParams[font.sans-serif] [SimHei] # 显示中文…

【数据结构】 顺序表的基本操作 (C语言版)

一、顺序表 1、顺序表的定义: 线性表的顺序存储结构,即将表中的结点按逻辑顺序依次存放在一组地址连续的存储单元里。这种存储方式使得在逻辑结构上相邻的数据元素在物理存储上也是相邻的,可以通过数据元素的物理存储位置来反映其逻辑关系。…

基于Springboot的大学生心理健康管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的大学生心理健康管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体…

【吃灰开发板复活】DIY全志V3s随身终端屏幕适配,LVGL以及各种外设驱动移植教程

在上周的文章中介绍了一款因作者想要学习Linux而动手DIY的终端设备V3S-PI, 《梦回2004!我用全志V3s做了个成本100元,功能媲美MP4的随身终端》:梦回2004!我用全志V3s做了个成本100元,功能媲美MP4的随身终端…

微信小程序如何获取当前日期时间

Hello大家好!我是咕噜铁蛋,获取当前日期时间是小程序中经常会用到的一个功能。因此,在本文中,我通过科技手段给大家收集整理了下,今天我将向大家介绍如何在微信小程序中获取当前日期时间的方法,并分享一些实…

HubSpot在线客户互动:建立强大数字连接的关键一步

HubSpot在线客户互动为企业带来了多方面的具体业务优势,其中一些关键点包括: 提高销售转化率: 通过实时在线聊天、个性化推荐等互动方式,HubSpot使企业能够更主动地接触潜在客户,解答其疑问,提供定制化的…

RabbitMQ——高级篇

目录 一、MQ的常见问题 二、消息可靠性问题 生产者消息确认 消息持久化 消费者消息确认 失败重试机制 三、死信交换机 简介死信交换机 TTL超时机制 延迟队列 四、惰性队列 消息堆积问题 惰性队列 一、MQ的常见问题 消息可靠性问题:如何确保发送的…

解决 Git:ssh: connect to host github.com port 22: Connection timed out 问题的三种方案

1、问题描述: 其一、整体提示为: ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repository. 中文为: ssh:连接到主机 github.com 端口 22:连接超时 fatal&a…

【设计模式】腾讯面经:原型模式怎么理解?

什么是原型模式? 设计模式是编程世界的基石,其中原型模式无疑是一种常用而又高效的创建对象的手段。那么,什么是原型模式呢?又该如何去实现它? 在软件工程中,原型模式是一种创建型设计模式。我们可以这样…

「JavaSE」抽象类接口2

🎇个人主页:Ice_Sugar_7 🎇所属专栏:快来卷Java啦 🎇欢迎点赞收藏加关注哦! 抽象类&接口2 🍉接口间的继承🍉接口的应用🍉总结 🍉接口间的继承 和类的继承…

Pyside6中QTableWidget使用

目录 一:介绍: 二:演示 一:介绍: 在 PySide6 中,QTableWidget 是一个用于展示和编辑表格数据的控件。它提供了在窗口中创建和显示表格的功能,并允许用户通过单元格来编辑数据。 要使用 QTabl…

黑马Java——面向对象进阶(static继承)

1.static静态变量 静态变量是随着类的加载而加载的,优先与对象出现的

Kotlin 开发环境配置指南

一、下载与安装 Kotlin 编译器 步骤 1:获取最新版 Kotlin 编译器 要配置 Kotlin 开发环境,首先需要从 JetBrains 官方 GitHub 仓库下载最新的 Kotlin 编译器。访问以下链接以获取最新版本的编译器: [https://github.com/JetBrains/kotlin/…

Severstal公司的汉语名字是什么,是一家什么样的公司?

问题描述:Severstal公司的汉语名字是什么,是一家什么样的公司? 问题解答: Severstal 公司的中文名字通常被翻译为 "谢韦尔钢铁公司"。这家公司是俄罗斯的一家大型钢铁和矿业企业,总部位于莫斯科。Seversta…

libtorch学习第六

构建卷积网络 #include<torch/torch.h> #include<torch/script.h> #include<iostream>using std::cout; using std::endl;class LinearBnReluImpl : public torch::nn::Module { private:torch::nn::Linear ln{ nullptr };torch::nn::BatchNorm1d bn{ nullp…

[Python] glob内置模块介绍和使用场景(案例)

Unix glob是一种用于匹配文件路径的模式&#xff0c;它可以帮助我们快速地找到符合特定规则的文件。在本文中&#xff0c;我们将介绍glob的基本概念、使用方法以及一些实际应用案例。 glob介绍 Glob(Global Match)是Unix和类Unix系统中的一种文件名扩展功能&#xff0c;它可以…

分布式锁的实现方式

分布式锁是指分布式环境下&#xff0c;系统部署在多个机器中&#xff0c;实现多进程分布式互斥的一种锁。实现分布式锁有三种主流方式&#xff0c;接下来一一盘点。 盘点之前要说说选择时的优缺点 数据库实现的锁表完全不推荐。 Redis分布式锁性能优于ZooKeeper&#xff0c;因…

01、领域驱动设计:微服务设计为什么要选择DDD总结

目录 1、前言 2、软件架构模式的演进 3、微服务设计和拆分的困境 4、为什么 DDD适合微服务 5、DDD与微服务的关系 6、总结 1、前言 我们知道&#xff0c;微服务设计过程中往往会面临边界如何划定的问题&#xff0c;不同的人会根据自己对微服务的理 解而拆分出不同的微服…

通过 GScan 工具自动排查后门

一、简介 GScan 是一款为安全应急响应提供便利的工具&#xff0c;自动化监测系统中常见位置。 工具运行环境&#xff1a;CentOS (6、7) python (2.x、3.x) 工具检查项目&#xff1a; 1、主机信息获取 2、系统初始化 alias 检查 3、文件类安全扫描 3.1、系统重要文件完整行…

JS进阶-深入对象(二)

拓展&#xff1a;深入对象主要介绍的是Js的构造函数&#xff0c;实例成员&#xff0c;静态成员&#xff0c;其中构造函数和Java种的构造函数用法相似&#xff0c;思想是一样的&#xff0c;但静态成员和实例成员和java种的有比较大的差别&#xff0c;需要认真理解 • 创建对象三…