自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 delta格式的表重建

步骤:1. 创建一张正确表结构的临时表tb_table_tmp2. 再把临时表的表结构及数据写入正式表df = spark.sql("select * from dwd.tb_table")df.write \ .format("delta") \ .mode("overwrite") \ .option("overwriteSchema", "true") \ .option("path", "临时表建表路径") \ .partitionBy('分区字段') \ .save

2021-08-25 11:40:11 483 1

原创 Mysql自动生成想要的日期

SET @days = TIMESTAMPDIFF(DAY,'2021-06-01','2022-03-01'); SET @d = -1; INSERT INTO `dw_learn_his_dt`SELECT a.dt from(SELECT @d :=@d+1,ADDDATE('2021-06-01',@d) dtfrom `dw_learn_his_dt` WHERE @d<@days ) a

2021-05-06 09:26:40 390

原创 DBeaver连接不上clickhouse

一、问题描述打开dbeaver,出现can‘t load driver ru.yandex.clickhouse.ClickHouseDriver二、百度找到jar包的坐标我去github 找到了这个坐标三、配置驱动右键点击某个clickhouse连接 ,点编辑连接 ,点编辑驱动设置,再点添加工件点击确定后,点测试链接,完美连接,弹出下载页后,下载对应的驱动,可以尽情玩CK啦!!!!!TIP:最好是配置一下阿里的maven,下载快一点,依次点击dbeaver的如下1、窗口–>首选

2021-01-14 09:13:42 10832

原创 实用 | Dataworks的使用详细说明

一、开通Dataworks(1)百度搜Dataworks,进入如下页面,点击立即开通(2) 这里要选好自己想要的配置,这里展示我之前的配置解决方案:选DataWorks+MaxCompute组合产品DataWorks:标准版购买时长:1年MaxCompute:按量付费(3)开通好之后,进入Dataworks的控制台,点击dataworks首页二、进入dataworks首页三、数据开发(1)点击数据开发,进入如下图(2)新建业务流程(3)红色框的是离线计算常用的节点,可以拖

2020-12-01 15:26:41 9492

原创 实用 | 用户画像:标签化就是数据的抽象能力

王兴说过,我们已经进入到互联网的下半场。在上半场,也就是早期的互联网时代,你永远不知道在对面坐的是什么样的人。那个年代大部分人还是 QQ 的早期用户。在下半场,互联网公司已经不新鲜了,大部分公司已经互联网化。他们已经在用网络进行产品宣传,使用电商销售自己的商品。这两年引领下半场发展的是那些在讲 “大数据”“赋能”的企业,他们有数据,有用户。通过大数据告诉政府该如何智慧地管理交通,做城市规划。通过消费数据分析,告诉企业该在什么时间生产什么产品,以最大化地满足用户的需求。通过生活大...

2020-07-29 16:53:07 498

原创 mysql查看数据库和表的占用空间

1.查看数据库的大小use 数据库名SELECT sum(DATA_LENGTH)+sum(INDEX_LENGTH)FROM information_schema.TABLES where TABLE_SCHEMA='数据库名';得到的结果是以字节为单位,除1024为K,除1048576为M。2.查看表的最后mysql修改时间select TABLE_NAME,UPDATE_TIME from INFORMATION_SCHEMA.tables where TABLE_SCH.

2020-07-28 10:48:12 231

原创 实用 | 安装python模块socket.timeout: The read operation timed out解决方案

1、使用pip安装第三方库过慢导致超时无法安装: pip install pandas出现异常: socket.timeout: The read operation timed out2、原因:    pip下载的时国外的资源,速度过慢,应该切换至国内镜像3、解决方法:    更换 pip 源自国内镜像,在 pip install 后面添加-i https://pypi.tuna.tsinghua.edu.cn/simple     上面蓝色部分是镜像地址,网上可以...

2020-07-24 14:56:35 5871 1

原创 实用 | 解决Sublime Text3的import无法导入Python模块

一、找到Preferances–>Brows packages,进入文件夹下,新建文件夹,命名为python。二、进入python文件夹,新建文档,命名为Completion Rules.tmPreferences。三、编辑文档,添加内容如下:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com

2020-07-20 09:42:57 4537 5

原创 实用 | 数据挖掘的十大算法

为了进行数据挖掘任务,数据科学家们提出了各种模型,在众多的数据挖掘模型中,国际权威的学术组织 ICDM (the IEEE International Conference on Data Mining)评选出了十大经典的算法。按照不同的目的,我可以将这些算法分成四类,以便你更好的理解。l 分类算法:C4.5,朴素贝叶斯(Naive Bayes),SVM,KNN,Adaboost,CARTl 聚类算法:K-Means,EMl 关联分析:Aprioril 连接分析:PageRank.

2020-07-16 16:01:03 1344

原创 彪悍给力的分析型数据库~ClickHouse

本文内容较长,分为三个部分:走马观花,死而后生,遥指杏花村;第一章,走马观花,初步了解一下基本特性;第二章,死而后生,介绍ClickHouse的技术架构演化的今生前世;第三章,遥指杏花村,介绍一些参考资料,包括一些俄文资料。第一章,走马观花俄罗斯的‘百度’叫做Yandex,覆盖了俄语搜索超过68%的市场,有俄语的地方就有Yandex;有中文的地方,就有百度么?好像不一定)Yandex在2016年6月15日开源了一个数据分析的数据库,名字叫做ClickHouse,这对保守俄罗斯人来说是..

2020-06-29 10:48:27 1120 1

原创 DataV分享链接后,柱状图饼图区域热力层显示不出来

这几天用DataV整合了mysql的数据进行展示,刚开始分享链接测试一下的时候,有些图就是死活显示不出来,经过最后的总结教训,DataV的数据不适合做大量计算,所以他的总相应时间限制在10s以内,超过10s则显示不出,所以推荐大家在Datav展示数据的时候尽量减少计算,可以先在数仓中做好相应的计算后,把要展示的数据直接加载到mysql,这样会大大减少计算时间,提高datav查询效率不建议...

2020-03-24 09:32:03 966

原创 Dataworks离线同步--数据过滤和参数设置

参数格式可以为'20200206' 或者'2020-02-06'

2020-02-28 17:53:38 2170

原创 实用 | Sqoop数据导出一致性问题

1)场景1:如Sqoop在导出到Mysql时,使用4个Map任务,过程中有2个任务失败,那此时MySQL中存储了另外两个Map任务导入的数据,此时老板正好看到了这个报表数据。而开发工程师发现任务失败后,会调试问题并最终将全部数据正确的导入MySQL,那后面老板再次看报表数据,发现本次看到的数据与之前的不一致,这在生产环境是不允许的。官网:http://sqoop.apache.org/docs...

2020-02-09 21:15:05 1630

原创 sqoop导出到mysql遇到哪些问题

关于导出update还是insert的问题--update-mode:updateonly 只更新,无法插入新数据allowinsert 允许新增--update-key:允许更新的情况下,指定哪些字段匹配视为同一条数据,进行更新而不增加。多个字段用逗号分隔。--input-null-string和--input-null-non-string:分...

2020-02-09 21:13:18 491

原创 实用 | Hive中case when的两种语法

两种表达方式是等效的方法一:casewhen tb1.os = 'android' then 'android'when tb1.os = 'ios' then 'iPhone'else 'PC'end as os,方法二:case tb1.oswhen 'android' then 'android'when 'ios' then 'iPhone'el...

2020-01-06 15:21:28 527

转载 Hive随机数 rand()函数

随机数函数: rand语法: rand(),rand(int seed)返回值: double说明:返回一个0到1范围内的随机数。如果指定种子seed,则会等到一个稳定的随机数序列举例:hive> select rand() from lxw_dual;0.5577432776034763hive> select rand() from lxw_dual;...

2020-01-06 15:16:47 14061 1

原创 Hive的数据倾斜以及优化策略

一、hive的数据倾斜介绍:只要在分布式一定有shuffle,避免不了出现数据倾斜,在混淆数据的过程中出现数据分布不均匀。比如:在MR编程中reducetask阶中的数据的大小不一致,即很多的数据集中到了一个reducetask中,hive的数据倾斜就是mapreduce的数据倾斜 maptask reducetask最后就是reducetask阶段的数据倾斜。不会产生数据倾斜的场景:  ...

2020-01-06 14:56:18 387

原创 实用 | Flume的多层代理和防止数据丢失

在实际生产中,当我们用Flume采集日志时,由于数据源的多样性,则往往需要配置多个Flume进行采集,如果只是使用单层Flume的话,那么往往会产生很多个文件夹,单个文件夹也只是来自同一个节点的数据组成的。而实际开发中,为了减少HDFS的压力,同时提高后续MR的处理效率。往往会将同一组多个节点的数据汇聚到同一个文件中,这样同时也较少了数据从生产到分析的时间。如下图,第一次agent...

2020-01-06 10:24:10 498

原创 电商数据仓库的架构、模型与应用实践

一. 数据仓库概念二. 项目需求及架构设计1. 项目需求分析2.项目框架2.1技术选型2.2 系统数据流程设计2.3 框架版本选型2.4 服务器选型2.5 集群资源规划设计2)测试集群服务器规划 服务名称 子服务 服务器 hadoop102 服务器...

2019-12-28 14:20:44 4069 1

原创 读写 JSON 格式文件

在ETL中,Spark经常扮演T的职务, 也就是进行数据清洗和数据转换.在业务系统中,JSON是一个非常常见的数据格式, 在前后端交互的时候也往往会使用JSON, 所以从业务系统获取的数据很大可能性是使用JSON格式, 所以就需要Spark能够支持 JSON 格式文件的读取读写JSON文件将要 Dataset 保存为 JSON 格式的文件比...

2019-12-13 21:25:33 540

原创 Catalyst 优化器

为了解决过多依赖Hive的问题,SparkSQL使用了一个新的SQL优化器替代Hive中的优化器, 这个优化器就是Catalyst, 整个SparkSQL的架构大致如下1.API层简单的说就是Spark会通过一些API接受SQL语句2.收到SQL语句以后, 将其交给Catalyst,Catalyst负责解析SQL, 生成执行计划等3...

2019-12-12 21:08:03 1152 1

原创 实用 | RDD依赖关系

一、Lineage RDD只支持粗粒度转换,即在大量记录上执行的单个操作。将创建RDD的一系列Lineage(血统)记录下来,以便恢复丢失的分区。RDD的Lineage会记录RDD的元数据信息和转换行为,当该RDD的部分分区数据丢失时,它可以根据这些信息来重新运算和恢复丢失的数据分区。(1)读取一个HDFS文件并将其中内容映射成一个个元组scala> v...

2019-11-28 17:46:37 375

原创 kafka的架构图

一、官方文档架构图:二、kafka四大核心1、生产者API允许应用程序发布记录流至一个或者多个kafka的主题(topics)。2、消费者API允许应用程序订阅一个或者多个主题,并处理这些主题接收到的记录流。3、StreamsAPI允许应用程序充当流处理器(streamprocessor),从一个或者多个主题获取输入流,并生产一个输出流到一个或者多个主题,能够有...

2019-11-26 21:25:36 4285

原创 通过bulkload的方式批量加载数据到HBase

加载数据到HBase当中去的方式多种多样,我们可以使用HBase的javaAPI或者使用sqoop将我们的数据写入或者导入到HBase当中去,但是这些方式不是慢就是在导入的过程的占用Region资源导致效率低下,我们也可以通过MR的程序,将我们的数据直接转换成HBase的最终存储格式HFile,然后直接load数据到HBase当中去即可 HBase中每张Table在根目...

2019-11-25 21:28:11 575

原创 Retry attempted 10 times without completing, bailing out解决

今天在做通过bulkload的方式批量加载数据到HBase中去的时候遇到了这个异常然后去网上找到了这个方案,我的Hbase是2.0.0,所以试了也没用具体代码如下:BulkLoadMain.classimport org.apache.hadoop.conf.Configuration;import org.apache.hadoop.conf.Configured;i...

2019-11-25 21:07:46 2266 2

原创 Flink任务提交流程(yarn模式)

Flink任务提交后,Client向HDFS上传Flink的Jar包和配置, 之后向YarnResourceManager提交任务, ResourceManager分配Container资源并通知对应的NodeManager启动ApplicationMaster, ApplicationMaster启动后加载Flink的Jar包和配置构建环境,然后启动JobM...

2019-11-21 13:59:50 1552

原创 半数选举机制的原因

为什么Zookeeper和Kafka的follower一定要保证半数以上的投票?1.为什么半数以上的投票选举才能选出leader?防止脑裂2.参与投票的follower至少有多少?半数以上3.如何保证参与投票的半数以上的follower里至少有一个是同步完成的?半数以上的follower同步完成,这样可以保证半数投票里面至少有一个是同步完成的...

2019-11-18 15:49:10 597

原创 Scala 编译完生成两个class文件的区别

编写一个_04ClassObjectDemo.scala文件object _04ClassObjectDemo{ // 1. 创建一个Person类,添加成员变量 class Person { var name:String = _ var age:Int = _ } def main(args: Array[String]): Unit = { ...

2019-11-17 11:00:55 640

原创 实用 | Spark_Yarn模式

一、概述Spark客户端直接连接Yarn,不需要额外构建Spark集群。有yarn-client和yarn-cluster两种模式,主要区别在于:Driver程序的运行节点。yarn-client:Driver程序运行在客户端,适用于交互、调试,希望立即看到app的输出yarn-cluster:Driver程序运行在由RM(ResourceManager)启动的AP(APPMaster...

2019-11-15 20:53:55 185

原创 match模式匹配

一、基本结束Scala 中的模式匹配类似于 Java 中的 switch 语法,但是更加强大。模式匹配语法中,采用 match 关键字声明,每个分支采用 case 关键字进行声明,当需要匹配时,会从第一个 case 分支开始,如果匹配成功,那么执行对应的逻辑代码,如果匹配不成功,继续执行下一个分支进行判断。如果所有 case 都不匹配,那么会执行 case _ 分支,类似于 Java 中 ...

2019-11-15 15:11:22 1365

原创 实用 | Hbase RowKey设计

一、设计原则1.Rowkey的唯一原则 必须在设计上保证其唯一性。由于在HBase中数据存储是Key-Value形式,若HBase中同一表插入相同Rowkey,则原先的数据会被覆盖掉(如果表的version设置为1的话),所以务必保证Rowkey的唯一性2. Rowkey的排序原则 HBase的Rowkey是按照ASCII有序设计的,我们在设计Rowk...

2019-11-09 16:16:39 622

原创 动态地向hadoop集群添加一个新节点

由于hadoop集群的内存和负载有限,所以需要添加新的节点来扩充内存,提高mapreduce运行速度一、将namenode节点的hadoop文件目录全部复制到新节点。二、修改每个节点的hosts文件,将节点4的主机名加进去。三、配置ssh免密登录,使得namenode登录新节点的时候不需要输入密码。四、修改各节点的slaves文件,加入新节点的名称。五、单独启动该节点上的Dat...

2019-11-02 22:42:06 491

原创 Intellij IDEA 安装Scala 遇到 'Plugin 'Scala' is incompatible with this installation' 解决

IDEA安装Scala的时候从本地磁盘导入scala-intellij的zip后出现了Plugin 'Scala' is incompatible with this installation的问题可以选择如图所示的按钮,如下图点击install之后重启IDEA即可显示下图表示安装成功!...

2019-10-31 16:20:18 789

原创 Could not open connection to the HS2 server解决方案

问题如下:Error:Could not open client transport with JDBC Uri: jdbc:hive2://node01:10000/default:java.net.ConnectException refused先输入下面命令,确定metostore能不能启动再确认9083端口有没有启动再确认hive能不能进入shell...

2019-10-26 20:19:13 14935 9

原创 Impala客户端连接不上的解决

安装了impala后,必须在hive服务端才能开启hive metastore服务第一种方式hive --service metastore -p 9083 &第二种方式如果你在hive-site.xml里指定了hive.metastore.uris的port<property> <name>hive.metastore.u...

2019-10-25 14:20:44 2374

原创 RDBMS到Hbase

$ bin/sqoop import \--connect jdbc:mysql://hadoop102:3306/company \--username root \--password 000000 \--table company \--columns "id,name,sex" \--column-family "info" \--hbase-create-table \...

2019-10-22 14:23:03 240

原创 RDBMS到Hive

提示:该过程分为两步,第一步将数据导入到HDFS,第二步将导入到HDFS的数据迁移到Hive仓库,第一步默认的临时目录是/user/${username}/表名$ bin/sqoop import \--connect jdbc:mysql://hadoop102:3306/company \--username root \--password 000000 \--table ...

2019-10-22 14:17:50 384

原创 RDBMS到HDFS

1) 确定Mysql服务开启正常2) 在Mysql中新建一张表并插入一些数据$ mysql -uroot -p000000mysql> create database company;mysql> create table company.staff(id int(4) primary key not null auto_increment, name varchar(2...

2019-10-22 14:15:58 350

原创 WritableComparable排序

因为map、reduce 之间传递的参数是通过本地持久化来实现,所以需要实现序列化接口。但由于Java的 Serializable接口是一个重量级的API,所以Hadoop自定义一套新的API。 如果传递的参数是基本类型和字符串,可以直接使用Text,LongWritable,IntWritable 。但如果是自定义的 Java Bean,就需要自己实现Writable...

2019-10-20 15:00:13 439

原创 实用 | Zookeeper监听器原理

2019-10-17 20:25:15 233

空空如也

空空如也

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

TA关注的人

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