大数据1

article/2025/6/22 21:35:06

cd sysconfig(目录名)    进目录

ll(listlist)        查看所有的目录

cat       看目录里的内容打开文件

~当前目录的用户主体目录

cd / 根路径

pwd 当前路径

vi 修改文件

I 才可以编辑

然后更改BOOTPROTO"STATIC"

IPADDR=IP地址192.168.52.随便写0-255

GATEWAY=网关

NETMAXK=255.255.255.0

DNS1=202.106.0.20

Esc退出编辑

保存:shift+:+wq 按回车

重启:/etc/init.d/network restart

联网:ifconfig回车 ping www.baidu.com回车

连接Xshell:

登录<获取虚拟机的的IP<打开Xshell<新建回话<保存

创建一个新用户hadoop:useradd hadoop -m  命令或程序,参数-m为hadoop的主体目录

su root:切换用户

cd:切换目录

cd ~:切换到主体目录

useradd zhangsan -m

mkdir text:创建目录

touch text:创建文件

增加权限:chmod o+w /home/zhangsan/text/text (o代表用户,W代表写权限,+添加)

rm:删除文件  -r删除目录及文件 -f忽略是否删除的提示

rm test -rf

JDK开发工具包

创建 mkrip opt

cd /

cd home

cd hadoop

mkrip opt

hadoop.apache.org/官网

创建一个目录 hadoop fs -mkdir -p /user/hadoop

Hadoop是一个开源、高可靠、可扩展的分布式计算框架来解决:海量数据的储存(HDFS)海量数据分析(Map(打散,设计成自己想要的),Reduce(集成)) 分布式资源调度(Yarn)


装饰器:


WordCount:


 

spark使用scala语言进行,scala建立在java之上

scala优点语法特别简洁,可以写在一行不停的写,以分号结束,效率快。但是没有Python函数库分丰富

注释:多行/****/  单行//  

变量:var声明变量

常量:不变的 val声明常量

启动scala :  spark-shell

获取文件:var lines=sc.textFile("hdfs://python5:9000/user/hadoop/data.txt")

查看取值lines.collect()

以空格拆分:lines.map(x=>x.split(" ").collect()

只作了分组lines.map(x=>x.split(" ")).flatMap(x=>for(i <- x) yield(i,1)).groupByKey().map(x=>(x._1,x._2.sum)).collect()

进行了计算lines.map(x=>x.split(" ")).flatMap(x=>for(i <- x) yield(i,1)).reduceByKey((x,y)=>x+y).collect()

数据分析有几种:hadoop里的mapreduce , scala, pyspark :DAG(有向无环图):计算最优路径

SPARK:的核心是RDD(懒操作)

通过文件系统或者并行集合得到RDD

RDD两种计算方式:变换(transformations)map,filter,flatmap,redoucebykey,groupbykey,countbyvalue,transformations是一种懒操作lazy,在worker上运行

操作(actions)count,collect,则优,在driver上运行

RDD两种类型:并行集合(parallelize,map,filter也是并行集合)

转换rdd:  Rdd=sc.parallelize([11,22,33])

Rdd.collect()

文件系统数据集

union 并

intersection 交

subtract 差 a.subtract(b) a-b

cartesian 每一个配一遍

countbyvalue: 统计,谁出现了多少次


wget 可以下载网页 wget 网页地址  去统计网页有多少

打开jupyter:

Jupyter-notbook --ip python5

import os

import sys

spark_home = os.environ.get('SPARK_HOME',None)

if not spark_home:

    raise ValueError('SPARK_HOME enviroment variable is not set')

sys.path.insert(0,os.path.join(spark_home,'python'))

sys.path.insert(0,os.path.join(spark_home,'python/lib/py4j-0.10.4-src.zip'))

exec(open(os.path.join(spark_home,'python/pyspark/shell.py')).read())


SPARK CORE的任务就是对这些数据进行分布式计算 简写sc

yarn代表整个集群,通用资源管理系统,主要成员RM[resourcemanager](资源管理,控制整个集群,分配给NodeManager每个节点),container(相当于容器)

AM[applicationmaster](作业调度/监控,管理在YARN运行的应用程序的每个实例,AM是应用程序的主宰者,负责协调来自RM的资源)

Reduce():并行汇总所有RDD元素

Rdd=sc.parallelize([1,2,3,4],2),2是默认几个分区

Rdd.reduce(lambda x,y:x+y)

结果:分区为:[(1,2),(3,4)]

初步计算:[3,7]

最终计算:10,x是汇总,y是每个元素

Aggregate:有三个参数,第一个参数是给第二个第三个初始化

 

 

Join:内连接

rdd1=sc.parallelize([('a',1),('a',2),('a',3)])

rdd2=sc.parallelize([('b',3),('b',4),('a',5)])

rdd3=rdd1.join(rdd2)

print(rdd3.collect())

结果为:[('a', (1, 5)), ('a', (2, 5)), ('a', (3, 5))]

leftOuterJoin:左链接

rdd4=rdd1.leftOuterJoin(rdd2)

print(rdd4.collect())

结果为:[('a', (1, 5)), ('a', (1, 6)), ('a', (2, 5)), ('a', (2, 6)), ('a', (3, 5)), ('a', (3, 6))]

rightOuterJoin:右链接

rdd5=rdd1.rightOuterJoin(rdd2)

print(rdd5.collect())

结果为:[('b', (None, 3)), ('b', (None, 4)), ('a', (1, 5)), ('a', (1, 6)), ('a', (2, 5)), ('a', (2, 6)), ('a', (3, 5)), ('a', (3, 6))]

Cogroup:全连接

SubtractByKey:减链接

 

combineByKeyRdd(k,v)变成了rdd(k,c)只是类型变了

 x = sc.parallelize([("a", 1), ("b", 1), ("a", 2)])

 def to_list(a):

    return [a]

 def append(a, b):

   a.append(b)

    return a

 def extend(a, b):

    a.extend(b)

    return a

sorted(x.combineByKey(to_list, append, extend).collect())

结果:[('a', [1, 2]), ('b', [1])]

 

练习题:

#区,姓名,钱

#r1,aa,12

#r2,ss,22

#r3,ww,33

#r1,qq,32

#r2,tt,55

#r3,cc,77

#统计王者荣耀共赚多少钱?

Rdd=sc.textfile(“/user/hadoop/wangzhe.csv”)

Print(rdd.collect)

Rdd1=rdd.map(lambda x:x.split(‘,’)).map(lambad x:int(x[2]))

Print(rdd1.collect())

Rdd1.reduce(lambad x,y:x+y)

#分别统计每个区赚了多少

Rdd2=rdd.map(lambda x:x.split(‘,’)).map(lambad x:(x[1],int(x[2])))

Rdd2.redoucebykey(lambad x,y:x+y).collect()

#分别统计每个区每个人花了多少钱

Rdd3=rdd.map(lambda x:x.split(‘,’)).map(lambad x:(x[0],x[1]),int(x[2])))

Rdd3.redoucebykey(lambad x,y:x+y).collect()

#按照钱进行排序

rdd4=rdd3.redoucebykey(lambad x,y:x+y)

Rdd4.map(lambad X:(x[1],x[0])).sortbykey(ture).collect()

#先按照姓名正序排序,如果姓名相同则按照区进行倒序排序

Rdd4.sort(key=lambad x:x[0][0],x[0][1])这是一种二维数组

Rdd4=rdd3.map(lambad x:(x[0][1],(x[0][0],x[1]))).sortbykey(false)

Print(rdd4.collect())

Rdd4=rdd4.map(lambad x:(x[1][0],(x[0],x[1][1]))).sortbakey(ture)

Print(rdd4.collect())

Rdd4=rdd4.map(lambad x:(x[0],x[1][0],x[1][1]))

Print(rdd4.collect())

第二种方法

Rs=rdd3.collect()

Print(“----------------------------------”)

Class CompareValue(object):

Def __init__(self,obj)

Self.obj=obj

Def __lt__(self,other):    #__lt__(self,other)比较小于的

If self.obj>other.obj:

Return self.obj>other.obj

Rs=sorted(rs,key=lambad x:(x[0][0],CompareValue(x[0][1]))),reverse=False)


http://chatgpt.dhexx.cn/article/N3xG8BYT.shtml

相关文章

大数据2 Hadoop

Hadoop是Apache软件基金会下的顶级开源项目&#xff0c;用以提供&#xff1a; • 分布式数据存储 • 分布式数据计算 • 分布式资源调度 为一体的整体解决方案。 Apache Hadoop是典型的分布式软件框架&#xff0c;可以部署在1台乃至成千上万台服务器节点上协同工作。 个人或企…

数分-理论-大数据2-Hadoop

数分-理论-大数据2-Hadoop (数据分析系列) 文章目录 数分-理论-大数据2-Hadoop1知识点2具体内容2.1发展2.2简介2.3项目架构2.4安装应用 参考 1知识点 发展简介项目架构安装应用 2具体内容 2.1发展 Lucene&#xff1a;文本搜索的函数库&#xff0c;全文检索引擎Nutch&…

大数据2

机器学习和数据挖掘的区别 数据挖掘是一个比较大的概念&#xff0c;由许多学科综合而成&#xff0c;其包括机器学习、统计学习、数据库、领域知识及模式识别等领域。数据挖掘与机器学习可以看成是一种相交关系&#xff0c;两者都是依靠规律分析来预测数据趋势的&#xff0c;但不…

大数据行业部署实战2:环境大数据统计

实验二、环境大数据&#xff08;必须基于实验一验证通过的环境&#xff09; 一、实验目的二、实验要求三、实验原理四、实验步骤1、 分析数据文件2、 将数据文件上传至HDFS3 、编写月平均气温统计程序4 、查看月平均气温统计结果5、 编写每日空气质量统计程序6、 查看每日空气…

大数据(2)--Hadoop

目录标题 1.初识大数据1.1 大数据相关技术1.2 日志流量分析系统1.2.1 项目设计1.2.2 日志的捕获1.2.3 离线分析1.2.4 实时分析 1.3 系统搭建 2.Hadoop2.1 Hadoop概述2.1.1 历史2.1.2 作用 2.2 Hadoop的安装2.2.1 Hadoop版本介绍2.2.2 Hadoop 的安装有三种方式2.2.3 Hadoop伪分布…

《大数据时代》书评及书摘

三天的零碎时间把这本书读完了&#xff0c;内容本身其实很简单&#xff0c;也谈不上特别精彩&#xff0c;五分制的话我只能打三分。 我的理解&#xff0c;数据一生应该是包含了三个阶段&#xff1a;收集&#xff0c;分析&#xff0c;最后是预测。我们总能根据现有的数据&#x…

Python 与SQL sever数据库 图形化智能停车场管理系统

这个是我的一次课程设计&#xff0c;写了236行代码&#xff0c;都是最简单的函数和图形化界面。特别简单。首先你应该确保你的SQL数据库可以在Pycham中连接成功。不会SQL连接的的可以去其他博客写看一看。在Pycham中需要安装 Tkinter win32com.client 第三方库。 序言界面截…

asp毕业设计——基于asp+sqlserver的WEB车辆管理系统设计与实现(毕业论文+程序源码)——车辆管理系统

基于aspsqlserver的WEB车辆管理系统设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于aspsqlserver的WEB车辆管理系统设计与实现&#xff0c;文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模…

基于Java+控制台实现车辆信息管理系统

基于Java控制台实现车辆信息管理系统 一、系统介绍二、功能展示1.主要功能2.查看所有车辆信息3.车辆信息添加4.车辆信息查询5.车辆信息删除 三、系统实现1.car.java 四、其它1.其他系统实现 五、源码下载 一、系统介绍 该系统实现了简单的增删查改、采用面对对象&#xff08;O…

qt 汽车管理系统

界面设计 运行后界面 数据库表: connection.h文件 #ifndef CONNECTION_H #define CONNECTION_H #include<Qtsql> #include<QDebug> #include<qdom.h> #include<QDebug> #include <QSqlQuery> static bool createConnection() { // "O…

计算机毕业设计-基于SSM的汽车维修管理系统

项目背景 随着计算机技术的高速发展&#xff0c;现代计算机系统已经从以计算为中心向以信息化处理为中心的方向发展。而汽车维修&#xff0c;不仅需要在硬件上为现代社会的人们提供一个汽车维修的平台&#xff0c;获取汽车知识的环境&#xff0c;更要在软件上为车辆提供汽车维…

ASP.NET+C#+Sql Server 1125数据库 汽车租赁系统的设计与实现+讲解视频

绪论 随着汽车行业的快速发展&#xff0c;汽车租赁行业交易的数量也随之增加&#xff0c;自2000年起&#xff0c;我国汽车租赁交易量开始进入一个快速发展的状态&#xff0c;也是汽车行业市场经济发展的重要一部分&#xff0c;近几年&#xff0c;越来越多汽车租赁公司进军当前…

Java项目:springBoot+Vue汽车销售管理系统

作者主页&#xff1a;夜未央5788 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目基于spring boot以及Vue开发&#xff0c;为前后端分离的项目。针对汽车销售提供客户信息、车辆信息、订单信息、销售人员管理、财务报表等功能…

基于JSP的物流公司信息管理系统设计与实现

目 录 第一章 绪论 1 1.1 研究背景 1 1.2课题研究意义 1 1.3 国内外的研究状况 2 第二章 相关技术分析 3 2.1技术简介 3 2.2 工作原理 3 2.3体系结构 3 2.4编程语言的特点 3 2.5 数据库 4 第三章 需求分析 5 3.1 可行性分析 5 3.1.1 经济可行性 5 3.1.2 技术可行性 5 3.1.3 运…

C#毕业设计——基于C#+asp.net+sqlserver的汽车销售管理系统设计与实现(毕业论文+程序源码)——汽车销售管理系统

基于C#asp.netsqlserver的汽车销售管理系统设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于C#asp.netsqlserver的汽车销售管理系统设计与实现&#xff0c;文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及…

汽车销售管理系统

文章目录 汽车销售管理系统**背景****环境****项目结构**项目详情**数据库****DBConn.java****Login.java****Data.java****CircleProgressBar.java**运行截图 汽车销售管理系统 背景 Java基础课程设计 环境 数据库&#xff1a;MySQL8.0开发环境&#xff1a;JDK1.8开发工具…

Java+SSM+Jsp+Mysql实现Web汽车信息管理系统

目录 一、系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库文件 5.工程截图 二、系统展示 1.登录系统 2.系统首页 3.用户管理-添加用户 4.用户管理-查询用户 5.用户管理-修改用户 6.客户管理-添加客户 7.客户管理-查询客户 8.客户管理-修改客户 9.汽车管理-…

基于Java+Swing+Mysql实现汽车信息管理系统(含实训报告)

TOC 一、系统介绍 系统实现汽车入库&#xff0c;汽车出库&#xff0c;汽车查询&#xff0c;汽车信息修改和管理员登录等功能 二、功能展示 1.登陆 2.车辆信息 3.车辆入库 4.车辆出库 5.车辆查询 6、车辆信息修改 三、数据库 /*Navicat Premium Data TransferSource Serv…

汽车租赁管理系统的设计与实现(JSP+SqlServer在线租车网站)

目录 第一章 系统概述 1 1.1背景 1 1.2发展现状 1 第二章 需求分析 2 2.1 功能需求 2 2.2 数据需求 3 第三章 系统设计 5 3.1系统结构 5 3.2 数据库设计 5 3.2.1 ER图 6 3.2.2 逻辑结构 6 3.2.3 数据库物理结构 7 3.2.4 数据库实现 9 3.3用户控制系统 9 3.4模块设计 10 3.4.1 汽…

Qt下的综合练习—汽车信息管理系统(三)车辆出售功能的实现

项目介绍 这次练习的项目是汽车信息管理系统&#xff0c;项目参考Qt5开发及实例&#xff08;第3版&#xff09;中的汽车销售管理系统&#xff0c;写到博客上的目的是为了梳理自己的思路&#xff0c;所以代码很大程度上是参照书上的实例。 项目实现了车辆与销售的的管理&#xf…