自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 day02-Spark集群及参数

交互式# 没有任何指定,采用是local模式,调用的是本机资源无法使用集群资源,相当于是单机计算pyspark​# 使用standalone资源调度 需要启动standalone服务​# 使用yarn资源调度,高可用的使用方式一样 需要启动yarn服务脚本式在代码中指定​# 没有指定任何参数,使用本地local模式​# master参数可以指定调用的资源服务# 使用standalone资源调度​# 使用yarn资源调度​。

2024-06-29 19:50:34 617

原创 FineReport基础

FineReport产品简介- FineReport帮助文档 - 全面的报表使用教程和学习资料报表是以表格、图表的形式来动态展示数据,企业通过报表进行数据分析,进而用于辅助经营管理决策。FineReport 是一款用于报表制作,分析和展示的工具,用户通过使用 FineReport 可以轻松的构建出灵活的数据分析和报表系统,大大缩短项目周期,减少实施成本,最终解决企业信息孤岛的问题,使数据真正产生其应用价值。类型FineBIFineReport数据引擎提供实时数据。

2024-06-19 20:26:31 897

原创 Python数据分析II

左表.merge(右表,left_on='关联字段1',right_on='关联字段2',how='inner',suffixes=('_left','_right'))表名['新列名'] = pd.cut(表名['列名'],bins = [0,10,20,30],labels=['名称1','名称2','名称3'])print(表名.groupby(by=['分组列1','分组列2']).agg({'操作列1':'mean','操作列2':'max'}))

2024-06-18 20:05:02 811

原创 Python的数据分析

表名[(表名['区域'].isin(['望京租房','回尨观租房'])) & (表名['朝向'].isin(['西南 东北','南 北']))]表名.query('区域 in ["望京租房","回龙观租房"]').query('朝向 in ["东","南"]')['单独取该列']表名.query('区域 in ["望京租房","回龙观租房"] and 朝向 in ["东","南"]')['单独取该列']表名.query('区域 in ["望京租房","回龙观租房"]')['单独取该列']

2024-06-18 20:02:48 857

原创 python.Pandas

df.groupby(['区域','户型'],as_index=False).agg({'价格':'mean','面积':'max'})df_result2 = df.groupby(['区域','户型']).agg({'价格':'mean','面积':'max'})df_result= df.groupby('区域')[['价格','面积']].agg(['mean','max'])多个字段分组, 多个字段聚合, 得到的结果 MultiIndex 通过MultiIndex 做数据筛选, 传入的是元组。

2024-06-07 10:12:44 948 1

原创 python的DataFrame和Series

创建pd.DataFrame() # 字典{'列名':[值1,值2],} [[]] [()]numpy Pandas的底层的数据结构,就是numpy的数组 ndarray常用属性shape (行数,) (行数,列数)index 索引名sizecolumns 列名常用方法统计方法describe()修改数据的 inplacedrop_duplicates() 去重sort_values() 排序unique()dataframe info() 返回相关的信息。

2024-06-04 17:50:53 828

原创 python数据分析

s.index # Series的索引, 如果手动指定, 就是一个ndarray类型, 如果是自动生成 rangeIndex()count 计数,unique 唯一值的数量, top出现次数最多的字符串是啥 freq 出现次数最多的字符串出现的频率(次数)修改数据的API默认不会再原始的数据上进行修改, 而是会在副本上进行修改, 并且会把这个修改后的副本作为方法的返回值, 返回来。如果两行行索引不一样,不能在一起算, 如果一个Series里有的行索引, 另一个Series没有, 返回NaN。

2024-06-04 08:43:57 1093

原创 ReduceTask工作机制

按照MapReduce语义 ,用户编写reduce()函数输入数据是按key进行聚集的一组数据。同的数据聚在一起 ,Hadoop采用了基于排序的策略。ReduceTask从各个MapTask上远程拷贝一片数据,并针对某一片数据,如果其大小超过一定阈值,在远程拷贝数据的同时 ,ReduceTask启动了两个后台线程对内存和磁盘上的文件进行合并 ,以。排序 ,因此 ,ReduceTask只需对所有数据进行一次归并排序即可。则写到磁盘上 ,否则直接放到内存中。(4)Reduce阶段。(2)Merge阶段。

2024-06-02 14:38:31 155

原创 day05-多任务-正则-装饰器

运行多个进程或线程执行代码逻辑多个进程或线程同时执行叫做并行执行多个进程或线程交替执行叫做并发执行必行还是并发有cpu个数决定5个进程 cpu核心是3个 计算时时并发执行 5个进程需要抢占cpu资源,谁抢到谁执行代码计算5个进程 cpu核心10个 计算时时并行执行 不需要抢占资源,没个进程都已一个独立的cpu核心使用完成计算多任务在执行计算时,可以执行的同一的计算任务,也可以执行不同的任务进程和线程进程是分配资源的最小单元 线程是执行任务的最小单元实现多任务可以使用多进程或多线。

2024-06-01 20:08:56 1460

原创 Day-04python模块

网络通讯就是程序之间进行通讯,相互传递数据内容网络通讯三要素(1)IP地址:网络虚拟环境下的唯一标识,类似于人的身份证号,通过IP可以找到计算机;(2)端口:表示计算机中某软件的地址信息,通过端口可以找到计算机中的软件;(3)协议:协议就是通信规则,程序之间必须按照规则传递信息,否则双方无法识别彼此信息本质就是编写一个python文件文件名要符合python的命名规范定义一个模块文件# 自定义的模块文件# 封装业务代码name = '张三'​data = a+b​​​。

2024-05-31 17:35:46 1017

原创 Day03-python异常处理

通过语法捕获代码中的异常,根据异常信息,解决异常的问题,保证代码能持续运行。# 将异常的错误信息传递到调用地方 当前没有处理异常。print('finally :无论是否有异常都执行')# 把出现的错误的代码逻辑放入try的作用域中。print('else 没有异常逻辑')# 异常被捕获后,可以正常执行后续的逻辑。函数内捕获到异常不处理,在传递给掉用函数的地方。print('捕获0为除数的异常')print('异常错误')data = {'name':'张三'}# 异常被捕获后,可以正常执行后续的逻辑。

2024-05-30 17:51:03 908

原创 Day03-python面向对象继承和多态

多继承时,父类方法都能被继承,但是如果有相同方法名,则在执行方法时,会按照print(Apprentice.1-定义一个父类,在父类中定义需要执行的业务方法,具体方法的逻辑不用实现,直接pass,由继承的子类实现。子类重写父类方法,在调用时执行的子类的逻辑,还想调用父类方方法,需要借助super()方法实现。子类中定义了和父类相同的方法,就是对父类方法的重写,在执行方法时,使用的是子类的逻辑代码。当对父类方法重写后,执行时只会执行子类的的方法逻辑,不会再执行父类方法中的逻辑。

2024-05-30 14:30:04 1156

原创 Day-02面向对象

程序开发时,有两种编程思想面向过程侧重点是过程按照一定的顺序步骤完成对某一特定问题的处理如何将大象放入冰箱中?1-打开冰箱门2-将大象放入冰箱3-关上冰箱门如何将老虎放入冰箱中?1-打开冰箱门2-将老虎放入冰箱3-关上冰箱门如何将狮子关在笼子中?1-打开笼子门2-将狮子赶入笼子中3-关上笼子门面向过程需要针对某一类问题需要重复编写代码面向对象侧重点在对象将一类问题进行归纳总结,按照一个统一标准处理同一类问题如何将一项物品放入一个空间内?物品是什么?和空间是什么?

2024-05-28 19:37:38 1233

原创 Day02-python容器类型

元组定义​# 元组只有一个元素数据时,需要加逗号data_tuple7 = ('张三',)# 字典定义# 字典中不要重复定义key值,保证key值唯一​# 使用key的下标值进行value部分取值​# 字典下标不支持切片操作# 集合的定义# data_set5 = {{'id':1,'name':'张三'},{'id':2,'name':'李四'}}有序的数据可以通过下标和for循环取值list[0]str[0]tuple[0]dict[key]

2024-05-28 19:34:41 852

原创 Day01-python函数

函数就是代码片段的封装,实现某一特定功能,当程序中需要执行该功能时,可以通过函数调用方式,执行函数中封装的代码片段函数中三要素函数名 必须定义参数 (可选)将数据传递函数中使用返回值 (可选)将函数中的数据传递外部进行使用# 函数的介绍# 功能1def login(name_list,password_list): # 接受参数# 函数作用域# 通过四个空格,来确认函数所执行的逻辑从哪里开始name = input('请输入用户名:')

2024-05-27 19:55:59 860

原创 day01-python循环和容器

容器就是存放数据的python 中的容器数据有多种形式,每种形式有自己的存储格式, 数据存储特性不一样字符串 str 就是容器 存放一个一个字母 格式 : 单引号 '数据' ,双引号 "数据" ,三个引号 """ 数据 """列表 list 格式: [数据1,数据2,数据3.....]元祖 tuple 格式: (数据1,数据2,数据3,)集合 set 格式: {数据1,数据2,数据3,}字典 dict 格式: {key1:value1,key2:value....}数据存储的特性有序和无序。

2024-05-27 15:13:41 979

原创 day01-Python基础

Python是一个计算编程语言,可以实现计算程序开发,也可以用于数据处理。SQL语言只能用于结构化数据的处理。Python的比SQL应用更广泛。1990年推广Python,最初是应用于运维开发,随着不断更新迭代Python的功能更加丰富,在更多场景中进行使用。Python的特点简单易学Python的应用场景主要是使用Python各类模块进行相关功能开发网站Web开发Django,Flask,FastAPI等模块开发游戏Pygame模块(小游戏)人工智能NLP自然语言处理和CV视觉处理。

2024-05-27 15:09:28 979

原创 HDFS数据的压缩算法,及每种场景的应用场景

优点:压缩率比较高,而且压缩/解压速度也比较快;hadoop本身支持,在应用中处理gzip格式的文件就和直 接处理文本一样;大部分linux系统都自带gzip命令 ,使用方便。缺点:不支持split。应用场景:当每个文件压缩之后在130M以内的(1个块大小内),都可以考虑用gzip压缩格式。例如说一天或 者一个小时的日志压缩成一个gzip文件 ,运行mapreduce程序的时候通过多个gzip文件达到并发。hive程序,

2024-05-14 10:36:35 180

原创 HDFS小文件优化方法

HDFS上每个文件都要在namenode上建立一个索引,这个索引的大小约为150byte,这样当小文件比较多的时 候 ,就会产生很多的索引文件,一方面会大量占用namenode的内存空间 ,另一方面就是索引文件过大是的索引速 度变慢。

2024-05-14 10:25:55 232

原创 mapreduce的优化方法

也就是说 ,buffer和reduce是没有直接关联的 ,中间多个一个写磁盘->读磁 盘的过程 ,既然有这个弊端 ,那么就可以通过参数来配置 ,使得buffer中的一部分数据可以直接输送到reduce ,从而减少IO开销 :mapred.job.reduce.input.buffer.percent ,默认为0.0。(1)合并小文件:在执行mr任务前将小文件进行合并,大量的小文件会产生大量的map任务,增大map任务装载次数 ,而任务的装载比较耗时 ,从而导致 mr 运行较慢。部分reduce实例。

2024-05-13 21:06:46 423

原创 Hadoop序列化和反序列化及自定义bean对象实现序列化

(7)如果需要将自定义的bean放在key中传输,则还需要实现comparable接口,因为mapreduce框中的。Java的序列化是一个重量级序列化框架(Serializable),一个对象被序列化后,会附带很多额外的信息(序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是硬盘的持久化数据,转换成内存中的对象。(6)要想把结果显示在文件中,需要重写toString(),且用”\t”分开,方便后续用。

2024-05-13 14:40:24 160

原创 缓慢渐变维与拉链表

Slowly Changing Dimensions简称SCD缓慢变化维的提出是因为在现实世界中,维度的属性并不是静态的,它会随着时间的流逝发生缓慢的变化。这种随时间发生变化的维度我们一般称之为缓慢变化维比如学历,住址学历维度本科,硕士,博士select 学历,count(*) from tb_user group by 学历区域维度在数仓中如何处理变化的维度数据?对于发生变化的数据在数仓中有三种方式处理方式1直接覆盖原有数据方式2增加一行新数据方式2增加一列新数据。

2024-05-11 19:39:10 1516

原创 一、Hive优化

将那些产生倾斜的key和对应v2的数据, 从当前这个MR中移出去, 单独找一个MR来处理即可, 处理后, 和之前的MR进行汇总结果即可。候, 将其提前配置设置好即可, 在后续运行的时候, 程序会自动将设置的key的数据单独找一个MR来进行处理即可, 处。当前这个k2的数据存在数据倾斜, 自动将其剔除, 交由给一个单独的MR来处理即可,两个MR处理完成后, 将结果基于。思路: 在执行MR的时候, 会动态统计每一个 k2的值出现重复的次数, 当这个重复的次数达到一定的阈值后, 认为。

2024-05-10 17:18:32 1035

原创 数仓开发,分层(ods,dw,app层)

10、DW第一层我们就可以把,ODS层里面的销售,订单表,都汇总到第一层来,有一张所有商品订单的大表,从线上支付,商城支付就可以分成,线上和线下支付,从退款,换货,我们可以把他理解成为一个词叫核销,是否订单交易成功,支付金额,在订单表中,也可以从退换货分成库调表,退是返回库中,换是从库中拿取物品。8、从ODS层我们可以获知有关于门店的销售明细,详情,线上支付,商城支付,商城订单,商城退款,商城退款明细,商城退换货————————这些都是有关于销售有关的数据表。6、通过某些指标我们可以确定ADS层的表。

2024-05-08 20:29:55 542

原创 大数据中的HDFS读写流程(namenode,datanode)

2、namenode通过secondarynamenode存储的元数据,去定位datanode。5、客户端请求dn1调用数据,d1收到请求会继续调用d2,d2调用d3,将通信管道建立完成。3、挑选一台datanode(就近原则,然后随机)服务器,请求读取数据。4、数据读取完,发送给客户端,以packet(128MB)的形式存储。4、namenode返回3个datanode节点,d1,d2,d3。1、客户端向namenode发送请求写入数据,2、namenode检查是否存在,可以上传,

2024-05-08 08:43:24 506

原创 数仓开发中期:理论巩固

基于前述对DW/BI系统目标的介绍,本节开始介绍维度建模的基本概念。维度建模是展现分析数据的首选技术,这一观点之所以被广泛接受,主要基于以下两个需要同时满足的需求:以商业用户可理解的方式发布数据。提供高效的查询性能。维度建模并不是一种新技术,早期主要用于简化数据库。50多年来,经过大量案例的考验,IT 组织、行业顾问和商业用户自然而然地被这种以单一维度结构满足人们基本需求的简单性所吸引。简单性至关重要,因为它能够确保用户方便地理解数据,以及确保软件能够快速、有效地发现及发布结果。

2024-05-07 21:14:35 846

原创 ZooKeeper以及DolphinScheduler的用法

希望对大家有帮助,谢谢大家的支持!

2024-05-04 20:20:12 1529

原创 数仓开发:DIM层数据处理

希望对大家有帮助!

2024-05-04 19:58:29 961 2

原创 数仓设计阶段

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-29 19:57:06 653

原创 数仓开发:DataX数据采集阶段

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-29 09:05:15 1531 3

原创 大数据开发,数仓阶段

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-25 21:51:19 727

原创 Oracle今日复习,业务练习

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-24 19:51:21 309

原创 Oracle知识点Day06

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-24 19:41:07 537

原创 PLSQL练习(小试牛刀)

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-22 20:13:00 715

原创 Oracle知识点Day05

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-22 20:03:35 941

原创 Oracle知识点Day04

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-21 21:24:06 613

原创 业务复习知识点Oracle查询

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-21 15:10:47 871

原创 Oracle進階SQLDay03

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-19 21:06:22 1395 1

原创 Oracle语句深入了解Day02

今天的语法会比较难,知识量也比较大,需要学习的同学,要多多复习,巩固已经所学知识。

2024-04-18 21:43:35 1083 1

原创 Oracle昨日复习以及注意事项(与MYSQL不同的点)

希望对大家有帮助,谢谢大家的支持!!❤️❤️❤️

2024-04-18 11:53:45 687 1

数仓设计,概述其中细节知识点

数仓设计,概述其中细节知识点

2024-04-29

PLSQL练习(小试牛刀)

PLSQL练习(小试牛刀)

2024-04-22

Oracle知识点Day05

Oracle知识点Day05

2024-04-22

Oracle知识点Day04

Oracle知识点Day04

2024-04-21

Oracle昨日复习以及注意事项(与MYSQL不同的点)

Oracle昨日复习以及注意事项(与MYSQL不同的点)

2024-04-18

Hive进阶Day06

Hive进阶Day06

2024-04-15

Hive进阶Day05

Hive进阶Day05

2024-04-14

HiveSQL基础Day02

HiveSQL基础Day02

2024-04-10

Hive基础,详解介绍HIVESQL中的语法

Hive基础,详解介绍HIVESQL中的语法

2024-04-08

HiveSQL的概况和过程

HiveSQL的概况和过程

2024-04-07

Mapreduce分布式计算组件和YARN分布式资源调度

Mapreduce分布式计算组件和YARN分布式资源调度

2024-04-07

HDFS服务角色构成简述图

HDFS目录文件

2024-04-02

分布式HDFS部署和shell指令

HDFS目录文件

2024-04-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除