自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

需求是无耻的

需求是无耻的,数据的生命周期不是我们能完全左右的。

  • 博客(29)
  • 资源 (5)
  • 收藏
  • 关注

原创 2020-12-16

spark-sql 读取hive报出Caused by: java.lang.NullPointerException**20/12/16 14:37:27 ERROR SparkSQLDriver: Failed in [select student_id from tmp.tmp_user_device_log_info_temp where dt = '2020-10-02' limit 10]java.lang.RuntimeException: serious problem** at or

2020-12-16 14:59:01 401

原创 java判断时间格式是否为指定格式,时间是否正确

/** * * @param strDate 时间 * @param formatter new SimpleDateFormat("yyyy-MM-dd"),new SimpleDateFormat("yyyy-MM-dd yyyy-MM-dd HH:mm:ss") * @param legalLen 10 , 19 * @return */ private static boolean isDate(String strDate,Da.

2020-09-14 12:06:33 1386

原创 linux ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES) 安装mysql

一般这个错误是由密码错误引起,解决的办法自然就是重置密码。我使用的是root账户。1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:#vi/etc/my.cnf在[mysqld]后面第一行添加“skip-grant-tables”用来跳过密码验证的过程保存文档并退出:#:wq2.接下来我们需要重启MySQL:/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)3.重启之后...

2020-07-25 23:20:40 389

原创 hdfs常用命令:一

文件操作(1) 列出HDFS下的文件hdfs dfs -ls /(2) 列出HDFS文件下名为users的文档中的文件hdfs dfs -ls /users(3) 上传文件将hadoop目录下的test01文件上传到HDFS上并重命名为test02:hdfs dfs -put test01 /test02(4) 文件被复制到本地系统中将HDFS中的tes...

2018-08-21 16:11:25 427

原创 spark读取postgresql中的数据

spark读取postgresql中的数据: 代码实现val pgUrl = "jdbc:postgresql://ip:5433/databaseName"// 读取pg中的数据val df1 = hiveContext.read.format("jdbc") .option("url", pgUrl) .option("user", "user") .opti...

2018-08-17 12:18:45 3300

原创 spark将数据加载到postgresql中的Scala实现

spark将数据加载到postgresql中: 方法一:def save2Postgresql(jdbcDf: DataFrame, url: String, tableName: String) = { jdbcDf.insertIntoJDBC(url, tableName, false) }方法二:def save2Postgresql(jdbcDf: Da...

2018-08-17 12:12:29 1959

原创 Scala实现--获取两个日期至今的所有日期包括开始日期和结束日期

获取两个日期至今的所有日期包括开始日期和结束日期: /** * 获取两个日期之间的日期 * @param start 开始日期 * @param end 结束日期 * @return 日期集合 */ def getBetweenDates(start: String, end: String) = { val startData = new Simpl...

2018-08-17 11:47:08 4835

转载 Hive修改表语句

1.ALTER TABLE table_name RENAME TO new_table_name; 上面这个命令可以重命名表,数据所在的位置和分区都没有改变。2:改变列名/类型/位置/注释1.ALTER TABLE table_name CHANGE[CLOUMN] col_old_name col_new_name column_type[CONMMENT col_conmment]...

2018-08-09 15:42:52 2056

原创 Hive中关于日期函数使用

1.时间戳函数 日期转时间戳:从1970-01-01 00:00:00 UTC到指定时间的秒数 获得当前时区的UNIX时间戳: select unix_timestamp(); 1533716607将指定的时间转为UNIX时间戳 :select unix_timestamp('2018-08-08 16:22:01'); 1533716521将指定的时间转为UNIX时间戳: sele...

2018-08-08 16:43:41 5391

转载 Hadoop Yarn 的三种资源调度器详解

理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源。在Yarn中,负责给应用分配资源的就是Scheduler。其实调度本身就是一个难题,很难找到一个完美的策略可以解决所有的应用场景。为此,Yarn提供了多种调度器和可配置的策略供我们选择。 一、调度器的选择在Yarn中有三种调...

2018-08-08 16:19:23 8343

转载 hive函数大全

hive的内置方法很多,特被容易忘,记录在次方便使用。 1.内置运算符 1.1关系运算符 运算符 类型 说明 A = B 所有原始类型 如果A与B相等,返回TRUE,否则返回FALSE 。 A <> B 所有原始类型 如果A不等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 A != B 所有原始类型 如果A不等于B返回TRU...

2018-08-02 11:18:50 543

原创 hive 和spark sql 中日期相关使用技巧(一)

hive 和spark sql 中日期相关使用技巧 常用日期/时间相关字段、类型、及示例:类型包括:BIGINT,TIMESTAMP和STRING 下面是这几种类型之间相互转换的方法:BIGINT转TIMESTAMP:from_unixtime(time/1000) TIMESTAMP转BIGINT:unix_timestamp(time)*1000 BIGINT转STRING(y...

2018-07-30 13:11:17 3004

转载 net.sf.json的jar包:JSONArray问题解决

今天在使用经纬度通过al的接口获取详细地址时使用到了 net.sf.json的jar包:JSONArray 用maven添加net.sf.json的jar包的时候,代码如下: <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>jso

2018-07-30 12:37:00 8101

转载 java设计模式之单例模式

常见的几种单例模式   单例模式:是一种常用的软件设计模式,在它的核心结构中值包含一个被称为单例的特殊类。一个类只有一个实例,即一个类只有一个对象实例。       单例模式可以分为懒汉式和饿汉式:    懒汉式单例模式:在类加载时不初始化。    饿汉式单例模式:在类加载时就完成了初始化,所以类加载比较慢,但获取对象的速度快。  第一种(懒汉,线程不安全):public...

2018-07-27 13:59:33 138

原创 Hive动态分区需要注意的参数

使用Hive动态分区需要注意设定以下参数:1.是否开启动态分区功能,默认false关闭。 默认值:falsehive.exec.dynamic.partition =false使用动态分区时候,该参数必须设置成true;hive.exec.dynamic.partition =true2.动态分区的模式: 默认值:stricthive.exec.dynamic.part...

2018-07-05 16:56:17 1777

原创 hive表的建表语句批量获取

有时hive中的一个数据库中有大量的表,对表的建表语句备份就显得重要和麻烦了,但是是使用hive的命令和shell脚本会很容易实现1.导出所有表的名称(可以指定数据库名称)hive -e "use dbName;show tables;" > tablesName.txt2.使用hive内置语法导出hive表的建表语句,这里使用的是一个shell#!/bin/bash ...

2018-07-05 15:44:47 4253

原创 Hive计算引擎的切换方法

1、配置mapreduce计算引擎set hive.execution.engine=mr;2、配置spark计算引擎set hive.execution.engine=spark;3、配置tez 计算引擎set hive.execution.engine=tez;

2018-07-05 15:28:16 15538

原创 Hive外部表误删后的恢复

Hive中的外部表是比较安全的一种数据管理方式,有时也会误删使用外部表有一个很好的好处,如果不小心将表误删了,只需要重新创建外部表然后使用下面的语句修复分区即可。MSCK REPAIR TABLE table_name;...

2018-03-01 15:56:55 4000

转载 自动化监控spark进程并重启

自动化监控spark进程并重启,实际生产中可能会出现服务进程挂掉的异常,自动监控与重启是非常重要。1、监控主节点的shell脚本[plain] view plain copy#!/bin/bash  #  master=`ps -ef | grep Master | grep spark | awk '{print $2}

2018-03-01 11:26:26 1325

原创 001:spark-submit提交参数之num-executors,num-executors,executor-cores

1.num-executors参数说明:该参数用于设置Spark作业总共要用多少个Executor进程来执行。Driver在向YARN集群管理器申请资源时,YARN集群管理器会尽可能按照你的设置来在集群的各个工作节点上,启动相应数量的Executor进程。这个参数非常之重要,如果不设置的话,默认只会给你启动少量的Executor进程,此时你的Spark作业的运行速度是非常慢的。参数调优

2018-01-04 10:16:17 15959 2

翻译 更新HIve表的简单方法2

这是系列的第二部分。管理缓慢变化的维度在第1部分中,我们展示了使用SQL MERGE,UPDATE和DELETE更新Hive中的数据是多么容易。让我们把事情做好,看看Hive中用于管理缓慢变化维度(SCD)的策略,这些维度可以让您随时分析数据的整个变化。在数据仓库中,缓慢变化的维度(SCD)捕获的数据在不规则和不可预知的时间间隔内变化。根据不同的业务需求,管理SCD

2017-12-16 17:07:47 9695

翻译 更新HIVE表格的简单方法

第一部分,用于如何更容易地更新Hive表从历史上看,在Apache Hive中保持数据最新,需要定制应用程序开发,这是复杂的,非高性能的,难以维护的。HDP 2.6通过在Hive中引入SQL MERGE从根本上简化了数据维护,补充了现有的INSERT,UPDATE和DELETE功能。这个博客展示了如何解决常见的数据管理问题,包括:Hive插件,将Hive数据与源RD

2017-12-16 15:37:51 5402 1

原创 spark sql 中的细节,判断字段是否为null

开始用的 是'字段'=null'字段'!=null执行后的的数据表中没有数据后改为'字段' is null'字段' is not null执行的结果正确自己真是记性差.........

2017-12-13 10:34:50 20473 2

转载 Hive四种数据导入方式

Hive的几种常见的数据导入方式这里介绍四种:(1)、从本地文件系统中导入数据到Hive表;(2)、从HDFS上导入数据到Hive表;(3)、从别的表中查询出相应的数据并导入到Hive表中;(4)、在创建表的时候通过从别的表中查询出相应的记录并插入到所创建的表中。一、从本地文件系统中导入数据到Hive表先在Hive里面创建好表,如下:

2017-12-11 15:18:18 314

原创 sparksql减少输出数据中的小文件数量

由于项目中开发用到sparksql ,将一个大表的数据查询后插入到另一种表中,此时数据令也不是太大,但是产生了200多个小文件,占用namenode资源,为了改善该情况使用,将hive中的表加载为一个df,然后重新分区+缓存+注册为临时表,在进行查询,插入操作,此时文件为20个关键代码如下:...........val aDF =hiveContext.

2017-11-30 14:19:53 8946

原创 CentOs7修改主机名

在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty)。“静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。“瞬态”主机名是在系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。而另一方面,

2017-11-30 14:10:18 498

原创 spark读取hdfs上的bson包,并解析

公司的数据是bson的格式的,需要用到spark的dataF,代码如下:val mongoConfig =new Configuration()   //输入数据的格式路径    mongoConfig.set("mongo.job.input.format","com.mongodb.hadoop.BSONFileInputFormat");   

2017-11-29 11:38:24 1106 1

原创 org.apache.spark.shuffle.MetadataFetchFailedException:Missing an output location for shuffle 5

org.apache.spark.shuffle.MetadataFetchFailedException:Missing an output location for shuffle 5解决方案:excouters分配的内存不足,分配更多内存后解决问题

2017-11-29 11:32:37 7837 2

翻译 Spark 重分区coalesce和repartition,合并小文件

源码包路径: org.apache.spark.rdd.RDDcoalesce函数:方法注释:Return a new RDDthat is reduced into numPartitions partitions. This results in a narrowdependency, e.g. if

2017-11-29 11:25:40 6432

x-pack-sql-jdbc.rar

x-pack-sql-jdbc-7.7.1 + x-pack-sql-jdbc-7.7.1是数据库客户端连接elasticsearch的驱动jdbc库

2020-09-01

scala-2.12.11.tgz

本资源是scala-2.12.11.tgz 用于linux的安装包,spark2以上需要用scala2.12以上的版本,本软件安全无毒,放心使用。便于大家的使用,可以直接下载使用。

2020-06-08

docker-compose-Linux-x86_64

Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。 说明:Compose是Fig的升级版,Fig已经不再维护。Compose向下兼容Fig,所有fig.yml只需要更名为docker-compose.yml即可被Compose使用。 服务编排工具使得Docker应用管理更为方便快捷。

2018-11-08

cfree4_0_std_setup_ch_ysr16ofP2rbKyoE=.exe

轻便的C环境开发,免费,不需要注册,也可开发c++是初学者的不错选择。

2014-12-24

空空如也

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

TA关注的人

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