- 博客(39)
- 收藏
- 关注
原创 kaggle 泰坦尼克号数据预测
对age空值处理,处理的方式为用名字的称谓的平均值填充age。Cabin空值太多没有太大的用,直接删除。对Embarked 填充,使用众数填充。
2024-02-29 09:20:32
386
1
原创 centos7 增加虚拟磁盘
dd if=/dev/zero of=/drive.img bs=1M count=10240losetup /dev/loop1 /drive.imglosetup -afdisk -l
2021-11-09 17:34:11
336
转载 数据倾斜问题处理-转载
看到一篇问题处理数据倾斜的,做下备份,基本都是比较常用的方法,启用倾斜连接优化的方法是之前没有使用过的,以后出现数据倾斜的问题尝试下效果。原文地址:实操 : Hive 数据倾斜问题定位排查及解决多数介绍数据倾斜的文章都是以大篇幅的理论为主,并没有给出具体的数据倾斜案例。当工作中遇到了倾斜问题,这些理论很难直接应用,导致我们面对倾斜时还是不知所措。今天我们不扯大篇理论,直接以例子来实践,排查是否出现了数据倾斜,具体是哪段代码导致的倾斜,怎么解决这段代码的倾斜。当执行过程中任务卡在 99%,
2021-10-29 11:40:16
239
原创 hive 读取sparksql的orc文件报ArrayIndexOutOfBoundsException:6
报错日志如下可以看出报错的地方再OrcFile的WriterVersion的from方法,定位代码发生在下面代码的values[val]代码段。values的值从代码可以看出values的数据应该为5,见下图代码而传过来的val是6,向上看代码,version来源是文件的meta,应该是spark版本的原因导致hive不支持的version。解决修改OrcFile文件的WriterVersion的内部类的from方法:public static WriterVersio
2021-10-28 17:13:07
1790
原创 debezium 采集oracle原理
logminerlogminer的用途日志文件中存放着所有进行数据库恢复的数据,记录了针对数据库结构的每一个变化,也就是对数据库操作的所有DML语句。logminer 工具即可以用来分析在线,也可以用来分析离线日志文件,即可以分析本身自己数据库的重作日志文件,也可以用来分析其他数据库的重作日志文件。总的说来,logminer工具的主要用途有: 1.跟踪数据库的变化:可以离线的跟踪数据库的变化,而不会影响在线系统的性能。 2. 回退数据库的变化:回退特定的变化数据,减少point-in-time re
2021-10-12 16:27:35
1625
原创 apache hadoop 升级
hadoop版本apache:2.7.7->2.9.2hadoop集群为非高可用集群1.创建镜像回滚:hdfs dfsadmin -rollingUpgrade prepare2.hdfs dfsadmin -rollingUpgrade query查看镜像回滚状态,直到显示Proceed with rolling upgrade状态3.下载并解压hadoop-2.9.24.将hdfs-site.xml、core-site.xml 、yarn-site.xml拷贝到hadoop-.
2021-10-12 09:40:56
287
转载 从0构建大数据平台,该考虑哪些事情?
之前从头开始搭建起大数据平台,中间有一些疑惑的事情,这篇文章解决了很多的疑惑,所以留作记录。文章地址:从0构建大数据平台,该考虑哪些事情?01公有云 or 私有云我们在第一讲中介绍了大数据的基石——云计算。云计算分为公有云和私有云。那么在大数据平台选型时应该选公有云还是私有云,或是两者结合的混合云?我们认为有以下评估依据:企业规模:小企业、创业公司建议使用公有云搭建大数据平台,甚至直接购买公有云提供的大数据PaaS和SaaS服务。中大型、超大型企业建议使用私有云或...
2021-09-28 11:58:03
271
原创 kafka connect +debezium实时采集postgresql
使用pgoutput的方式设置postgresql修改postgresql.conf添加或者修改以下字段wal_level = logical max_wal_senders = 1 max_replication_slots = 1 修改pg_hba.conflocal replication <youruser> trust host...
2021-09-06 16:28:23
807
原创 oracle 控制文件丢失解决办法
不小心删除掉了备份文件导致oracle挂掉,报了控制文件丢失的问题1.停止oracleshutdown abort2.nomount 启动oraclestartupnomount3.修改控制文件的位置alter system set control_files=$ORACLE_BASE/oradata/orcl/control01.ctl4.启动oraclestartupmount...
2021-09-02 18:46:45
1036
原创 kafka-connect + debezium 实时采集oracle 11 xe
oracle版本:11.2 xekafka版本1.1.1准备:1.下载oracle connect相关jar包 :https://repo1.maven.org/maven2/io/debezium/debezium-connector-oracle/1.6.1.Final/debezium-connector-oracle-1.6.1.Final-plugin.tar.gz2.并将解压到kafka connect的plugn 上详情参考上篇文章mysql的实时采集3.下载oracle的
2021-09-01 15:47:39
1597
原创 debezium+kafka connector 实时采集mysql
配置mysql创建用户并授权创建用户CREATE USER 'debezium'@'%' IDENTIFIED BY 'password';授予权限GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'debezium' IDENTIFIED BY 'password';FLUSH PRIVILEGES;启用二进制日志1.检查是否支持二进制日志SELEC
2021-08-30 18:31:11
782
原创 flink-cdc
1.什么是CDC变化数据捕获,简称CDC。CDC是建立实时数仓的关键技术2.CDC的种类CDC总的可以分成两类,侵入式的和 非侵入式的,侵入式的会对源系统产生性能影响,概括可以分成以下几类,基于时间戳的CDC、基于触发器的CDC、基于快照的CDC。非侵入式的CDC一般是基于日志的,比如比较常见的canal的CDC 通过获取binlog获取变化数据。下表是几种CDC类型的特点(参考https://blog.csdn.net/wzy0623/article/details/53896343)
2021-07-29 10:14:24
4878
原创 hudi 测试程序
向hudi中写入数据1.添加maven依赖 <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclie
2021-07-27 10:11:51
478
原创 java 读取压缩文件
用作记录方便以后查找,用到的工具类:commons-compressmaven依赖<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress --><dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifact
2021-07-05 15:04:32
1220
原创 hudi学习一(初识hudi)
什么是hudiHudi(发音为“hoodie”)摄取与管理处于DFS(HDFS或云存储)之上的大型分析数据集并为查询访问提供三个逻辑视图。读优化视图 - 在纯列式存储上提供出色的查询性能,非常像parquet表。 增量视图 - 在数据集之上提供一个变更流并提供给下游的作业或ETL任务。 准实时的表 - 使用基于列存储和行存储(例如 Parquet +Avro)以提供对实时数据的查询通过仔细地管理数据在存储中的布局和如何将数据暴露给查询,Hudi支持丰富的数据生态系统,在该系统中,外部数据源..
2021-06-21 20:02:53
7991
转载 想要知道孩子的长相吗
想要预测你孩子的长相吗,通过BabyGAN预测你孩子的长相,github地址:https://github.com/tg-bomze/BabyGAN
2021-06-10 11:10:08
115
原创 spark 通过jdbc读取hive jdbc
1.通过spark提供的jdbc方式连接代码如下val spark = SparkSession.builder().master("local").getOrCreate() val rdd = spark.read.format("jdbc") .format("jdbc") .option("driver", "org.apache.hive.jdbc.HiveDriver") .option("url", "jdbc:hive2://hiveserv
2021-06-09 15:43:54
4158
原创 spark 自定义RDD,通过j2ssh远程读取文件
如何自定义RDD1.引用依赖<dependencies> <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core --> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.
2021-06-04 17:26:29
234
1
原创 远程文件解析-j2ssh
j2ssh 是集成ssh、sftp的java的工具包,利用j2ssh基本上可以完成你在服务器操作的所有命令。今天只就sftp讲解。maven 依赖包引入
2021-06-02 18:24:51
796
原创 datax 安装和框架
Datax 安装下载datax:wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz 解压datax: tar –zxf datax.tar.gz 查看datax 命令 datax.py –help参数和作用如下:-j或者—jvm 设置jvm参数如堆栈信息等--jobid 设置jobId 在local和Distribute 模式使用-m 或者--mode 运行模式包括standalone, local.
2021-05-31 11:58:56
324
原创 hdfs 客户端超时时间设置
问题:使用java连接hdfs当输入错误时,都需要等待很长时候或者停止程序,有没有什么办法设置我们的等待时间,客户端的超时连接有那些参数决定参考:https://blog.csdn.net/zhanglong_4444/article/details/99471338解决hdfs的超时连接有两个参数决定:ipc.client.connect.max.retries.on.timeouts 和ipc.client.connect.timeout两个参数决定第一个是尝试次数,第二个是超时的时间,也就是说
2021-05-18 17:40:56
3221
原创 多线程创建FileSystem,当close时导致其他的FileSystem关闭
问题1:当我们使用FileSystem.get(conf)时会创建几个实例针对这个问题我们进行代码测试import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import java.io.IOException;import java.util.List;public class ThreadTest extends Thread{ private FileSystem
2021-05-18 16:12:13
788
转载 OLAP 系统选型,选 Apache Kylin 还是 ClickHouse?
看到一篇不错的文章,做个记录,文章来源:https://mp.weixin.qq.com/s/n97lZGvU_vXLbpXAW61JNgOLAP 系统选型,选 Apache Kylin 还是 ClickHouse?大数据与机器学习文摘前天以下文章来源于apachekylin,作者周耀apachekylinApache Kylin 公众号,介绍 Kylin 的功能特性、应用案例、经验分享、社区资讯、活动等。更多信息,请访问 Kylin 官网:http://kylin.io;相关技..
2021-05-10 11:24:34
230
原创 griffin 集成kerberos
安装griffin:具体安装详见https://griffin.apache.org/docs/quickstart-cn.html文档Kerberos集成:griffin默认情况下是不支持kerberos的所以需要对代码进行改造:改造点如下:(1)访问dataassets时,我们看不到hive的数据的,主要的原因在于hive开启了kerberos,而griffin通过thrift方式访问hivemetastore组件导致权限问题。解决在HiveMetaStoreProxy中代理k.
2021-04-29 17:23:36
259
1
原创 livy 集成kerberos
因为griffin需要安装livy组件的支持,所以需要安装livy提交spark任务。安装livy(1)下载apachelivy 下载地址:https://github.com/apache/incubator-livy/releases/tag/v0.7.0-incubating(2)解压unzip apache-livy-0.7.0-incubating-bin.zip(3)修改配置文件conf/livy-env.sh,加入hadoop_home,spark_home,Hadoop_..
2021-04-29 17:19:26
1051
2
原创 flink 在cdh6上的搭建
Flink在cdh6.2上的搭建下载flink相关的csd和parcel地址:https://archive.cloudera.com/csa/1.0.0.0/csd/,https://archive.cloudera.com/csa/1.0.0.0/parcels/ 将FLINK-1.9.0-csa1.0.0.0-cdh6.3.0.jar 放在/opt/cloudera/csd下 重启cm-server服务 systemctl restart cloudera-scm-server 将对应版..
2021-04-29 17:10:10
490
7
原创 spark 任务监控
Spark提供了restful api的方式用于spark任务的监控api截图如下:api访问方式:http://history-ip:18088/api/v1/官方文档:http://spark.apache.org/docs/latest/monitoring.htmlSpark 分为不同的stage执行所以spark没有提供方式直接查看任务执行成功和失败,可以通过/applications 获取application_id和attempt_id 然后根据 /application...
2021-04-29 17:06:12
1049
原创 CDH6.2 安装
准备规划(1)一般先预估存储量,根据存储预估hdfs存储的磁盘个数,另外也要考虑到机器的磁盘卡槽的个数,注意:cdh推荐的大小为小于或者等于4T的盘,否则可能出现复制风暴,cdh推荐做JBOD(有cdh的实验证明jbod比raid0的要块30%,时间有点长找不到网站了)。数据节点推荐做raid10。其他的存储情况参考:https://docs.cloudera.com/documentation/enterprise/6/6.2/topics/cm_ig_reqs_space.html#concep
2021-04-29 17:03:01
139
原创 python 整理数据库表结构到excel
# python 代码将指定的mysql 数据的表结构写入到excel,用于表的分析 代码如下import pymysqlimport xlwtconnect = pymysql.connect(host="host",user="user",password="password",port=3306,db="CN_Proj_DB")cursor = connect.cursor()# 创建一个workbook 设置编码workbook = xlwt.Workbook(encoding='
2021-04-29 16:06:23
157
转载 数据库SQL优化大总结之 百万级数据库优化方案
数据库SQL优化大总结之 百万级数据库优化方案http://blog.csdn.net/zhushuai1221/article/details/51740846
2018-03-22 15:21:00
138
转载 分布式事务的简单学习
转自http://old.bccn.net/Article/kfyy/java/jszl/200709/6154.html引言 JTA(Java Transaction API)允许应用程序执行分布式事务处理--在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。 本文的目的是要提供一个关于的Java事务处理API(JTA)的
2018-02-06 14:53:28
137
转载 Exception 为什么有的需要抛异常有的不需要
在写代码的时候我们经常需要新建异常,如throw newIllegalStateException("capacity is not less than 0");该异常不需要捕获(在方法前throws 该Exception)。但是有的异常如throw new IOException()需要捕获或抛出异常。主要因为java中异常有两类Runtime(运行时异常)和Checked(编译时异常)
2018-01-08 09:46:09
3834
1
原创 java 面试
一、ArrayList是线程安全的吗?怎么让他变成线程安全的list思考:Map有线程安全的类concurrentHashMap,内部使用AQS极大的提高了Map在多线程的使用效率,但是list中有没有类似concurrentHashMap的类,在网上搜索以后发现了CopyOnWriteArrayList类,但是该类只是在写时拷贝出一个新的list在新的list上修改,如果有list遍历的话不
2017-12-19 22:06:04
135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人