![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大数据
a904364908
白了头.
展开
-
flink scala版本报错JavaConversions$.deprecated$u0020propertiesAsScalaMap
排查发现 从scala 2.12版本开始,Scala官方废除了“scala.collection.JavaConversions”,改用“scala.collection.JavaConverters”。排查了flink lib目录的jar包,flink本身是2.11的Scala版本.依赖的doris connector 的Scala版本是2.12,产生了冲突,将flink doris connector改为Scala 版本,成功解决这个问题.测试启动flink任务的时候,报了如下错误....原创 2022-08-31 11:52:31 · 1069 阅读 · 1 评论 -
Flume采集rsync同步文件,有重复数据,解决方案
最近线上做测试,因为有服务布在公网云,kafka和hadoop集群布在私有云.所以想采用flume->kafka->flume->hadoop方案,将公有云的服务日志收集到hadoop集群.因为公有云上服务布的节点节点比较多,所以采用rsync方式,将所有应用日志采集到一台服务器上.再用flume做采集.开始flume使用agent.sources.s1.type = TAILDIR的方式,将日志发送过去以后,发现日志有重复数据.排查以后发现,rsync用了 -avz 参数, 网上查原创 2021-01-21 12:35:55 · 924 阅读 · 0 评论 -
clickhouse系列之四:clickhouse的表引擎
前言表引擎(即表的类型)决定了:1)数据的存储方式和位置,写到哪里以及从哪里读取数据2)支持哪些查询以及如何支持。3)并发数据访问。4)索引的使用(如果存在)。5)是否可以执行多线程请求。6)数据复制参数。ClickHouse的表引擎有很多,下面介绍其中几种,对其他引擎有兴趣的可以去查阅官方文档:https://clickhouse.yandex/docs/zh/operations/table_engines/1. TinyLog最简单的表引擎,用于将数据存储在磁盘上。每列都存储在单独原创 2020-10-16 17:11:08 · 852 阅读 · 1 评论 -
clickhouse系列之三: clickhouse常用的数据类型
整形固定长度的整型,包括有符号整型或无符号整型。整型范围(-2n-1~2n-1-1):Int8 - [-128 : 127]Int16 - [-32768 : 32767]Int32 - [-2147483648 : 2147483647]Int64 - [-9223372036854775808 : 9223372036854775807]无符号整型范围(0~2n-1):UInt8 - [0 : 255]UInt16 - [0 : 65535]UInt32 - [0 : 42949..原创 2020-09-15 14:57:03 · 601 阅读 · 0 评论 -
Apache Hive 集成Tez引擎
Tez 简介Tez 是一个 Hive 的运行引擎,性能优于 MR。为什么优于 MR 呢?看下图。用 Hive 直接编写 MR 程序,假设有四个有依赖关系的 MR 作业,上图中,绿色是 Reduce Task,云状表示写屏蔽,需要将中间结果持久化写到 HDFS。Tez 可以将多个有依赖的作业转换为一个作业,这样只需写一次 HDFS,且中间节点较少,从而大大提升作业的计算性能。使用版本Hive: 2.3.1.hadoop: 2.7.6.Tez: 0.9.1.Java: 1.8前期准备..原创 2020-09-13 17:24:52 · 436 阅读 · 0 评论 -
sqoop1.4.7导mysql数据到hive报错:ERROR hive.HiveConfig: Could not load org.apache.hadoop.hive.conf.HiveConf
环境:sqoop版本:1.4.7.hadoop2.7.6.hive2.3.1.导入参数:bin/sqoop import --connect jdbc:mysql://192.168.0.55:3306/test?tinyInt1isBit=false --username root --password '123456' --table test_table --fields-terminated-by '\001' --hive-import --hive-table ods.test_tab原创 2020-09-01 10:10:11 · 241 阅读 · 0 评论 -
clickhouse系列之二:clickhouse遇到的报错问题及解决方法
问题一,启动报错启动参数:sudo clickhouse-server --config-file=/etc/clickhouse-server/config.xml2020.08.20 18:49:28.189321 [ 29338 ] {} <Error> Application: DB::Exception: Effective user of the process (root) does not match the owner of the data (clickhouse). R原创 2020-08-20 19:10:38 · 38095 阅读 · 1 评论 -
clickhouse系列之一: clickhouse简介与安装
Clickhouse 简介Clickhouse 是一个开源的面向联机分析处理(OLAP, On-Line Analytical Processing)的列式存储数据库管理系统。Clickhouse 的优势:- 写入快、查询快- SQL 支持- 简单方便,不依赖 Hadoop 技术栈- 支持线性扩展- 深度列存储- 向量化查询执行- 数据压缩- 并行和分布式查询- 实时数据更新Clickhouse 的不足:- 不支持事务- 不适合典型的 K/V 存储- 不适合 Blob/Do..原创 2020-08-13 17:03:05 · 535 阅读 · 0 评论 -
SparkSQL数据DataFrame向ElasticSearch写入的优化,亲测提高数倍
前言最近sparksql写入elasticsearch数据量逐渐增大,所以需要优化写入的速度.先说一下集群情况.es集群:elasticsearch-6.2.4, 机器配置:5台4C*16G阿里云机器.spark: 2.1.3.优化方向从spark参数和es索引两个方向进行优化spark参数es提供了一套完整的hadoop生态支持.可以完整的支持spark读写es.在...原创 2020-05-01 00:03:17 · 2032 阅读 · 0 评论 -
hive常用字符串函数
字符串长度计算函数:length语法: length(string A),返回值: int说明:返回字符串A的长度hive (default)> select length('aaa');3字符串反转函数:reverse语法: reverse(string A)返回值: string说明:返回字符串A的反转结果hive (default)> select reve...转载 2020-04-18 15:12:07 · 319 阅读 · 0 评论 -
flume的ChannelExceptio以及memeryChannel中transactionCapacity和sink的batchsize需要注意事项
最近在做flume的日志收集,在用flume的时候发现一个报错.14 Mar 2020 14:23:58,194 ERROR [SinkRunner-PollingRunner-DefaultSinkProcessor] (org.apache.flume.sink.AbstractRpcSink.process:384) - Rpc Sink k1: Unable to get event ...原创 2020-03-14 15:06:00 · 202 阅读 · 0 评论 -
sparkstreaming ConcurrentModificationException: KafkaConsumer is not safe for multi-threaded access
最近在测试sparkstreaming的时候发现了一个问题,记录一下环境 spark 2.x, kafka_0.10.x示例代码:val ssc: StreamingContext = new StreamingContext(sparkSession.sparkContext,Seconds(5)) val kafkaBrokers:String = "hadoop01:9092...原创 2020-02-22 00:18:40 · 1055 阅读 · 0 评论 -
解决spark.rdd.MapPartitionsRDD cannot be cast to streaming.kafka010.HasOffsetRange问题
最近在做sparkstreaming测试的时候,自己出了一个小问题,记录下.贴部分代码:package com.ybs.screen.test.dataimport java.langimport java.util.Propertiesimport com.ybs.screen.constant.Constantsimport com.ybs.screen.model.{Prop...原创 2020-02-21 20:56:35 · 2553 阅读 · 0 评论 -
记一次Hive 行转列 引起的GC overhead limit exceeded
在一次hive语句进行行转列操作的时候,几千万的数据量发生了omm, GC overhead limit exceeded. 去网上查找了一下,判断是自己给map端和reduce端的内存太小了,才导致的omm,所以增加map端和reduce端的内存就好了.直接在客户端设置一下.hive> set mapreduce.map.memory.mb=2048;hive> set map...原创 2019-11-24 16:17:46 · 1447 阅读 · 0 评论 -
sqoop从mysql导入数据到hive时tinyint字段自动变成Boolean解决方案
最近在做sqoop导出数据的时候,mysql中有的字段到hive中自动转换成boolean类型了.这个需要解决,不然数据对不上.查了查官方文档,官方文档里有说明,这里贴一下文档.27.2.5. MySQL: Import of TINYINT(1) from MySQL behaves strangelyProblem: Sqoop is treating TINYINT(1) colum...原创 2019-09-22 12:43:02 · 729 阅读 · 0 评论 -
SparkSQL读取MySQL数据tinyint字段转换成boolean类型的解决方案
最近在做弄sparksql,在读取mysql数据的时候发现一个问题, 在数据库将字段定义成tinyint,并且长度为1的时候,读取到spark里面,被转换成Boolean类型的字段了.测试表定义CREATE TABLE `test1` ( `id` bigint(4) NOT NULL AUTO_INCREMENT, `name` varchar(36) COLLATE utf8mb4...原创 2019-09-08 14:39:33 · 1638 阅读 · 0 评论 -
sqoop导入数据到hive查询全部为null,sqoop导入到hive数据增多的解决方法
sqoop导入数据到hive查询全部为null.最近在用sqoop导入数据到hive的时候,遇到一个问题.用sqoop将数据导入到hive后,在hive查询,发现数据全部为null.而用sqoop导入命令的时候,没有报错,提示成功bin/sqoop import --connect jdbc:mysql://xxxxxxxxxxxxx:3306/xxxxxx --username xx...原创 2019-08-18 15:31:29 · 5066 阅读 · 0 评论 -
spark写入es报错,[FORBIDDEN/12/index read-only / allow delete (api)]解决方法
最近在进行spark数据写入es的时候,发生了报错,[FORBIDDEN/12/index read-only / allow delete (api)].在网上查了一下,有可能是因为磁盘空间不够,索引变为只读,不可以写入数据,但是能删除数据,修改参数就可以解决.PUT /twitter/_settings{ "index.blocks.read_only_allow_delete":...原创 2019-08-25 17:18:12 · 505 阅读 · 0 评论 -
sqoop运行job避免输入密码的解决方案
最近在增量同步mysql的数据到hive中,用sqoop进行增量导入,将增量任务设置为sqoop的job,每天定时跑sqoop的job就可以了,在创建job的时候sqoop给出提示,不要在命令行使用明文密码.创建job命令:bin/sqoop job --create test01job -- import \--connect jdbc:localhost:3306/test --user...原创 2019-08-03 18:05:41 · 1038 阅读 · 0 评论 -
sqoop的安装和简单使用案例
概述sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等.原理将导入或导出命令翻译成mapreduce程序来实现在翻译出的mapreduce中主要是对inputformat和...原创 2019-07-20 22:32:56 · 183 阅读 · 0 评论 -
启动spark时,提示JAVA_HOME not set,解决
刚部署好的spark,启动时报异常,JAVA_HOME is not set.排查后发现,在sbin目录下的spark-config.sh文件下未添加JAVA_HOME的索引.在该文件下添加jdk的路径,再分发到各个节点上就可以了 ...原创 2018-07-30 11:23:53 · 16899 阅读 · 4 评论 -
hue启动报错,ImportError: No mudule named search.conf
hue安装好后,启动hue的时候,报错ImportError: No mudule named search.conf 检查了配置,发现没有问题,进入mysql,发现,数据库中没有表,所以,是在这里出了问题重新进行编译,进入hue的主目录,运行命令make apps然后再看mysql的数据库中,发现表全部生成了再启动hue的进程,访问页面,页面可以正常访问了...原创 2018-09-05 15:04:09 · 1044 阅读 · 0 评论 -
启动hive,报错 ls: cannot access /export/spark/lib/spark-assembly-*.jar: No such file or directory,解决
安装好spark,安装hive,安装的spark版本是2.1.3版本,hive版本是1.1.0安装好hive后,启动,发现一个报错,cannot access /export/spark/lib/spark-assembly-*.jar: No such file or directory. 看了一下,出现这个问题的原因是因为spark版本升级到2.x以后,原有lib目录下的大JAR包...原创 2018-09-20 20:52:45 · 4103 阅读 · 1 评论 -
hive 异常jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes的解决
最近在操作hive,在进入hive后,在show databases;的时候报了异常,如图在网上百度了之后,发现应该是hive元数据库的编码问题.按如下办法得到解决1.删除原hive连接MySQL数据库中存放hive元数据的数据库。drop database hive;2.新建存放元数据库的数据。create database hive;3.修改数据的编码为lat...原创 2018-12-13 23:42:00 · 1383 阅读 · 0 评论 -
spark部署,standalone,ha,配置历史服务器
spark集群安装之前需要满足如下条件:集群主机名和hosts文件映射一一对应集群ssh免密登录配置集群每个节点防火墙关闭JDK正确安装Scala正确安装Hadoop集群安装,因为Spark存储层要用到HDFS,所以应该至少保证HDFS服务的正常运行集群环境:3节点,node01,node02,node03.standalone模式下载,解压spark,我用的是spark-2...原创 2019-01-05 00:20:45 · 735 阅读 · 0 评论 -
elasticsearch-5.5.2安装,及安装遇到的问题
elasticsearch-5.5.2安装最近在自己电脑上折腾elasticsearch,安装过程中出现许多问题,记录下来,供以后查阅参考,也希望可以帮到遇到同样问题的小伙伴本人安装的是elasticsearch-5.5.2,软件安装目录/export/servers,我采取的是集群安装,三台虚拟机,node01:192.168.25.120,node02:192.168.25.121,nod...原创 2019-01-07 23:47:16 · 330 阅读 · 0 评论 -
hue安装,及遇到的问题
本人安装的是hue-3.9.0-cdh5.14.0版本.看网上的教程都很简单.但是在安装过程中,遇到各种坑.记录下来,方便以后回顾总结.hue的安装可以分为几步:1.安装依赖. 2.配置hue.创建数据库.3.编译. 启动,页面访问1. 下载,解压hue安装包,然后联网安装依赖cdh安装包下载地址,我的安装目录/export/servers/,将安装包解压到安装目录tar -zxvf hue...原创 2019-01-13 23:08:00 · 2230 阅读 · 2 评论 -
解决hadoop重启时,hdfs停止不了,no namenode to stop问题
自己的集群启动挺长时间,有天改了文件,需要重启,在主目录下停止hdfs发现报错,no namenode to stop.再jps一下,果然没停掉.网上查找原因,发现是hadoop启动时会生成namenode/datanode/zkfc/journalnode等的pid文件,而hadoop的pid文件是默认保存在/tmp目录下的,Linux系统默认会定时去清理这个目录下的文件.所以是没有pid文...原创 2019-01-25 23:23:27 · 2679 阅读 · 1 评论 -
sparkSQL 数据写入es
最近有需求,要将spark的数据写入es.在网上查找了一番,再测试过后,顺利将任务完成,记录下.直接上代码:pom文件:<dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>...原创 2019-02-25 00:06:20 · 7110 阅读 · 4 评论 -
sparksql 对MongoDB数据的读取(scala版本)
最近折腾sparksql,正好有需求,需要读取MongoDB的数据,在网上查找后,能顺利用sparksql读取MongoDB的数据.记录下添加依赖<dependencies> <dependency> <groupId>org.apache.spark</groupId> <...原创 2019-02-28 22:01:04 · 2273 阅读 · 0 评论 -
HBase完全分布式搭建
前言HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处...原创 2019-04-21 17:52:23 · 276 阅读 · 0 评论 -
Zookeeper的简单介绍和搭建
zookeeper概述Zookeeper 是一个分布式协调服务的开源框架。 主要用来解决分布式集群中应用系统的一致性问题,例如怎样避免同时操作同一数据造成脏读的问题。ZooKeeper 本质上是一个分布式的小文件存储系统。 提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理。从而用来维护和监控你存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的...原创 2019-04-13 23:54:21 · 150 阅读 · 0 评论 -
HBase的Java API基本操作,测试(完全分布式)
HBase搭建完成后,可以进行基本的API操作,对HBase进行测试.导入依赖:<dependencies> <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</art...原创 2019-05-01 15:31:36 · 573 阅读 · 0 评论 -
sqoop导入hive警告WARN TableDefWriter:Column height had to be cast to a less precise type in Hive
最近在进行用sqoop将业务表数据导入到hive,在导入的时候发现一直在报一个WARN,WARN TableDefWriter:Column height had to be cast to a less precise type in Hive. 具体日志贴图.看到报警以后,查看了hive表的数据,发现数据并没有丢失,又查看了hive表结构,发现很多字段的数据类型发生了改变.在进行表导入的时候...原创 2019-05-24 22:37:01 · 1930 阅读 · 0 评论 -
Azkaban的简介和安装(3.47.0版本,两个服务模式安装)
Azkaban简介官网: https://azkaban.github.io/Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件(properties)格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。它有如下功能特点:Web用户界面方便上传工作流...原创 2019-06-08 23:46:50 · 481 阅读 · 0 评论 -
Azkaban的简单实战案例
Azkaban安装成功以后就可以进行任务调度了,这里简单演示几个调度任务。单一job示例创建文本文件,更改名称为mycommand.job内容如下type=commandcommand=echo 'hello world'将job资源打包成zip文件通过azkaban的web管理平台创建project并上传job压缩包首先创建project上传zip包启动执行job...原创 2019-06-14 22:20:00 · 183 阅读 · 0 评论 -
spark读取MySQL的方式及并发度优化
前段时间用sparksession读取MySQL的一个表的时候,出现耗时长,频繁出现oom等情况,去网上查找了一下,是因为用的默认读取jdbc方式,单线程任务重,所以出现耗时长,oom等现象.这时候需要提高读取的并发度.现简单记录下.看sparsession DataFrameReader源码,读取jdbc有三个方法重载.单partition,无并发def jdbc(url: String,...原创 2019-07-07 16:47:20 · 4485 阅读 · 1 评论 -
解决Windows环境下Exception: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z
因为在Linux的环境下运行代码不是特别方便,所以,文章介绍的是在Windows环境下运行hadoop程序,搭配的环境是hadoop2.7.2+Windows10+eclipse. 一,搭建环境 1.将编译后的hadoop.jar包解压到非中文路径 2.Windows10环境下,可能需要在bin目录下添加文件 3.配置hadoop环境变量,配置HADOOP_HOME...原创 2018-07-16 11:35:04 · 1457 阅读 · 2 评论