自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 IP冲突导致访问不了请求

最近DAP环境的一台portal机频繁被反馈无法正常访问,进页面大多数是404,屡次重启tbds-portal、tbds-server、cas、nginx等服务,稍微一两次恢复正常访问,但是好景不长,很快又恢复原状,无法访问,经过高手排查了一天,终于发现了问题所在。 由于服务是部署在linux服务器172.16.119.151上面的,该服务是对一定网段的用户开放的,所以正常情况下我们通过window的cmd命令窗口去ping这台服务器,和telnet这台服务器相应的服务端口是可以通的,而现在是只...

2021-11-11 14:53:27 2004

原创 SparkRDD 读写HBase

首先导入POM依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache

2021-04-23 16:48:36 273

原创 大数据组件之Maxwell与Canal工具对比

Maxwell和Canal对比Maxwell 没有 Canal那种server+client模式,只有一个server把数据发送到消息队列或redis。➢ Maxwell 有一个亮点功能,就是Canal只能抓取最新数据,对已存在的历史数据没有办法处理。而Maxwell有一个bootstrap功能,可以直接引导出完整的历史数据用于初始化,非常好用。➢ Maxwell不能直接支持HA,但是它支持断点还原,即错误解决后重启继续上次点儿读取数据。➢ Maxwell只支持json格式,而Canal如果...

2021-04-13 12:01:06 1921

原创 ES基本操作

查询各个节点状态API:GET /_cat/nodes?v查询各个索引状态GET /_cat/indices?v创建索引API:PUT 索引名?prettyPUT movie_index?pretty查询某个索引的分片情况GET/_cat/shards/movie_index删除索引API:DELETE /索引名DELETE /movie_index现在向索引movie_index中放入文档,文档ID分别为1,2,3PUT /movie_index/movie/1{

2021-03-26 11:32:13 149

原创 Hive源码编译,自定义UDF,并整合到Hive源码

在生产实践当中,我们往往需要自定义UDF函数,整合到hive源码,并对hive源码进行编译,使得我们的函数和hive自带的函数一样,打开hive便可以使用 先在自己的服务器准备好Maven,本人的maven版本是 3.6.1本人事先已经下载好别人编译好的hive1.2.1,再此基础再去整合编译可以省去不少麻烦!!!此版本下载地址为 https://download.csdn.net/download/faded1573606285/11846507?utm_mediu...

2021-03-10 11:58:42 269

原创 数据生成脚本

注意:com.atguigu.appclient.AppMain要和自己建的全类名一致。

2021-02-18 10:18:21 361

原创 scala-OO-伴生关系

/** * Apply * * object class * * object xxx * class xxx * 伴生类 和 伴生对象 * 互为伴生 **/object ApplyApp { def main(args: Array[String]): Unit = {// ApplyTest.static//// for(i <- 1 to 10) {// ApplyTest.inc// }// println(A.

2021-01-25 20:19:44 280

原创 scala-OO-构造器

/** * 构造器 **/object ConstructorApp { def main(args: Array[String]): Unit = {// val person = new Person("若泽", 30)// println(s"name is: ${person.name}, age is: ${person.age}")// val p2 = new Person("PK哥", 31, "M") // 调用的附属构造器// print.

2021-01-25 20:13:30 86

原创 Hadoop HA 元数据管理架构

2021-01-15 10:55:14 113

转载 sqoop query时单双引号选用以及$CONDITION使用的探究

这段时间碰见了一个奇怪的sqoop导入问题。我的业务目标是想将postgresql库里的某张表内的数据导入到hive里,而且在导入的时候需要做一步查询。但在导入的时候,围绕着"$CONDITION"这个参数,会有不同的运行结果,有的报错,有的查询结果为空,我们下面来看看:在pgsql里的查询语句为:# postgresql 查询语句select id,check_code,lastupdatetime,check_num,report_name,json_object_keys(reportin

2020-11-03 15:48:40 1219

原创 Hive导生产数据到测试环境的步骤

现在导数的原则变了,直接按分区表导数,数据可以直接put到测试环境目标表。hdfs dfs -put NAS盘位置 hdfs位置MSCK REPAIR TABLE tableName ----注意刷新一下元数据如果读不出数据,就是生产和测试环境数据结构有问题了。需要根据建表语句进行比对。生产环境建表语句见:show_create_table.txt...

2020-10-27 11:04:18 427

原创 确保业务意图在网络中的正确实施——网络验证研究

https://mp.weixin.qq.com/s?src=11&timestamp=1593671795&ver=2435&signature=EqdGpM*bdRI2X7YwH95HZcTr3f2L5xrvAWnNkh8d4e95xvbJwQabChk6wo6V5nN7KQwGVnTLq29DRjrXM5JtdBVfXFUahQVBGlTRUj5FM*IC0a4SxlWKASwV7dfLyqSH&new=1

2020-07-02 14:41:13 198

原创 Spark温故而知新

重要角色Driver(驱动器)Spark的驱动器是执行开发程序中的main方法的进程。它负责开发人员编写的用来创建SparkContext、创建RDD,以及进行RDD的转化操作和行动操作代码的执行。如果你是用spark shell,那么当你启动Spark shell的时候,系统后台自启了一个Spark驱动器程序,就是在Spark shell中预加载的一个叫作 sc的SparkContext...

2020-03-27 14:58:12 115

原创 HBase与Hive的对比

1.Hive(1) 数据仓库Hive的本质其实就相当于将HDFS中已经存储的文件在Mysql中做了一个双射关系,以方便使用HQL去管理查询。(2) 用于数据分析、清洗Hive适用于离线的数据分析和清洗,延迟较高。(3) 基于HDFS、MapReduceHive存储的数据依旧在DataNode上,编写的HQL语句终将是转换为MapReduce代码执行。2.HBase(...

2020-03-25 16:53:27 183

原创 HBase的读写流程

HBase读数据流程如图3所示图3所示 HBase读数据流程1)Client先访问zookeeper,从meta表读取region的位置,然后读取meta表中的数据。meta中又存储了用户表的region信息;2)根据namespace、表名和rowkey在meta表中找到对应的region信息;3)找到这个region对应的regionserver;4)查找对应的regi...

2020-03-25 16:38:19 3094

原创 HBase复习

HBase的特点1)海量存储Hbase适合存储PB级别的海量数据,在PB级别的数据以及采用廉价PC存储的情况下,能在几十到百毫秒内返回数据。这与Hbase的极易扩展性息息相关。正式因为Hbase良好的扩展性,才为海量数据的存储提供了便利。2)列式存储这里的列式存储其实说的是列族存储,Hbase是根据列族来存储数据的。列族下面可以有非常多的列,列族在创建表的时候就必须指定。3)极...

2020-03-25 16:35:09 248

原创 Hive的分区字段能否插入到普通字段,普通字段能否插入到分区字段

1、现在新增了一个date类型的新字段值,默认空值,尝试将分区的字段值插入执行以下的语句,将p_pftp_dim_currency表的2019-10-31号的数据插入到p_pftp_dim_currency_jeff中其中data_dt是p_pftp_dim_currency的分区字段,data_date是p_pftp_dim_currency_jeff的普通字段insert o...

2020-03-25 15:44:34 2230

原创 Hive的日期处理函数

1)date_format函数(根据格式整理日期)hive (gmall)> select date_format('2019-02-10','yyyy-MM');2019-022)date_add函数(加减日期)hive (gmall)> select date_add('2019-02-10',-1);2019-02-09hive (gmall)> s...

2020-01-28 10:16:51 238

原创 Hive的collect_set函数

1)创建原数据表hive (gmall)>drop table if exists stud;create table stud (name string, area string, course string, score int);2)向原数据表中插入数据hive (gmall)>insert into table stud values('zhang3',...

2020-01-28 10:15:03 1349

原创 电商业务术语归类

用户用户以设备为判断标准,在移动统计中,每个独立设备认为是一个独立用户。Android系统根据IMEI号,IOS系统根据OpenUDID来标识一个独立用户,每部手机一个用户。 新增用户首次联网使用应用的用户。如果一个用户首次打开某APP,那这个用户定义为新增用户;卸载再安装的设备,不会被算作一次新增。新增用户包括日新增用户、周新增用户、月新增用户。 活跃用户...

2020-01-28 10:04:33 266

转载 SHELL脚本中单引号和双引号的区别

在Linux操作系统上编写Shell脚本时候,我们是在变量的前面使用$符号来获取该变量的值,通常在脚本中使用”$param”这种带双引号的格式,但也有出现使用'$param'这种带引号的使用的场景,首先大家看一段例子:[root@linux ~]# name=TekTea[root@linux ~]# echo $nameTekTea[root@linux ~]# sayhello=”H...

2019-12-04 11:25:08 926

原创 Hive的分区问题以及hdfs映射到Hive的过程

在创建Hive表时,字段分区是一个非常非常容易导致将来遇到问题的一个地方,我们常常将时间日期来作为分区字段。考虑到数据源之间的转换,日期字段作为分区时,不要用date类型!oracle的date类型只支持全格式的数据类型,就是yyyy-MM-dd hh:mm:ss,而Hive则时yyyy-MM-dd,oracle导数据到Hive中,系统会自动截掉后面的时分秒,然而反过来,就不会!!...

2019-11-14 14:19:35 1701

原创 使用DBeaver访问Kerberos下的Hive 最强教程

配置 Windows 的 kerberos 认证操作场景本文以安全模式为例,如果使用 FusionInsight 非安全模式进行对接不需要使用 kerberos认证。前提条件已完成 FusionInsight HD V100R002C70SPC200 的安装,包含 KrbServer 组件。配置kerberos认证步骤 1 下载并安装 MIT Kerberos。下载...

2019-10-10 11:00:51 2699

原创 史上最全IntelliJ IDEA 快捷键,速度收藏!

程序员每日都会花费数小时使用ide编写和调试代码,其中很多操作都是机械重复且频率非常高,本着"工欲善其事必先利其器"的精神,闷头写代码之外花点时间研究一下自己用的ide,其带来的效率提升非常可观。自动代码常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。例如要输入for(User user : u...

2019-09-04 09:16:20 129

转载 2019最新spark面试题,看了它,你还怕找不到工作吗?

【导读】本篇文章为大家带来spark面试指南,文内会有两种题型,问答题和代码题,题目大部分来自于网络上,有小部分是来自于工作中的总结,每个题目会给出一个参考答案。为什么考察Spark?Spark作为大数据组件中的执行引擎,具备以下优势特性。 高效性。内存计算下,Spark 比 MapReduce 快100倍。Spark使用最先进的DAG调度程序、查询优化程序和...

2019-09-03 09:14:20 401

原创 在Windows10,IDEA下进行pyspark编程

python3.7IDEA 2019.1spark2.4.3先在本地Windows下安装好Python(记得安装时候勾选上将配置环境变量)https://baijiahao.baidu.com/s?id=1606573927720991570&wfr=spider&for=pccmd里输入 python -V查看是否安装和配置成功下载好...

2019-08-14 16:12:15 307

转载 unix_timestamp、from_unixtime时间戳函数的使用

一、unix_timestamp函数用法1、UNIX_TIMESTAMP() :若无参数调用,则返回一个 Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒数) 作为无符号整数,得到当前时间戳2、UNIX_TIMESTAMP(date):若用date 来调用 UNIX_TIMESTAMP(),它会将参数值以'1970-01-01 00:00:00...

2019-08-03 09:05:42 741

原创 sparkSQL外部数据源读JDBC

def getDataFrameFromDb(spark: SparkSession, jdbcUrl: String, userName: String, password: String, queryString: String,driverClass: String="com.mysql.jdbc.Driver"): DataFrame = { spark.read.form...

2019-07-31 10:10:58 108

转载 Git从入门到精通

https://www.liaoxuefeng.com/wiki/896043488029600

2019-07-30 10:00:57 88

转载 having和where的区别

下面以一个例子来具体的讲解:1. where和having都可以使用的场景1)select addtime,name from dw_users where addtime> 15000000002)select addtime,name from dw_users having addtime> 1500000000解释:上面的having可以用的前提是我已经筛选出了...

2019-07-24 09:03:09 97

原创 数据分层

在流式数据模型中,数据模型整体上分为五层。1. ODS跟离线系统的定义一样, ODS 层属于操作数据层,是直接从业务系统采集过来的最原始数据,包含了所有业务的变更过程,数据粒度也是最细的。在这一层,实时和离线在源头上是统一的, 这样的好处是用同一份数据加工出来的指标,口径基本是统一的,可以更方便进行实时和离线间数据比对。例如:原始的订单变更记录数据、服务器引擎的访问日志。...

2019-07-10 16:45:10 450

原创 HBase的表设计与rowKey设计

HBase 一张表须要有 row key ,而 rowkey 是按照 ASCII 码来排序的,这就像关系型数据库的索引一样, row key 的规则限制了读取数据的方式。如果业务方需要使用另一种读取数据的方式,就必须重新输出 row key 。从这个角度来看, HBase 没有关系型数据库方便。但是 Base 张表能够存储TB 甚至几十 TB 的数据,而关系型数据库必须要分库分表才能实现这个量级...

2019-07-10 15:01:37 407

原创 浅谈Cassandra与其特性

Cassandra是一个NoSQL的高可靠,可扩展的分布式数据库,因为其能够处理大量数据,数据放置在多个副本上的不同机器上,所以它能保障避免单点故障的问题。 NoSQL即非关系型数据库,能提供一种机制来存储和检索关系型数据库中使用表格关系以外的数据。这些数据库是无架构的,支持轻松复制,具有简单的API,最终一致,并且可以处理大量的数据。 Cassand...

2019-07-09 17:04:15 809

转载 流表的二元性

https://www.cnblogs.com/jixp/p/9767690.html

2019-07-04 14:50:35 175

原创 KSQL实战之music_demo

--The STREAM and TABLE names are prefixed with `ksql_` to enable you to run this demo--concurrently with the Kafka Streams Music Demo java application, to avoid conflicting names--The play-events...

2019-07-03 09:07:37 238

原创 KSQL入门,史上最详细语法解析之一(2)还在更新中。。。

KSQL入门,史上最详细语法解析之一(1)注意一条完整的ksql语句结束,必须以“;”结尾在CLI中 要空掉一行又不结束命令语句 ,可以以“\”结尾但是在script的.sql中用不了“\”streams, tables, topics, and columns的命名中不支持“-”不要用引号,在创建命名stream和table时CREATE STREAMCREATE S...

2019-06-26 10:57:41 2488

原创 KSQL入门,史上最详细语法解析之一(1)

KSQL是类SQL操作,要以 ";" 结尾,通过使用两个连续的单引号('')来转义字符串文字中的单引号字符(')。例如,要逃避'T',请写''T''。Streamstream是一个无序的数据结构。打个比方,我们可以进行一些列交易,Alice向Bob发送了100美元,然后Charlie向Bob发送了50美元。stream中发生的事件是不可改变的,已经被认定为事实,新的事件加入到这个s...

2019-06-25 18:01:20 11601

原创 Confluent Platform5.2.2的本地安装部署(目前版本最新)

前置条件:支持JDK8和JDK11(JDK9和JDK11不支持)下载Confluent平台并开启服务官方有两个版本,一个是收费的企业版(30天试用),一个是开源版,为了更好地体验服务,我下载的是企业版的下载之前需要输入相关的个人基本信息点击下载下载好并解压之后的目录结构是:文件夹 描述 /bin/ 启动和停止服务的驱动程序脚本 /etc/ ...

2019-06-25 16:17:14 3378

原创 Confluent入门简介

Confluent一个是企业版(付费)试用30天,一个是开源版(免费)Confluent让我们可以将数据用作不断更新的时间流,而不是离快照,大部分世界100强企业都用事件流,其中用confluent的占大多数。Confluent是基于Kafka构造的,它提供单一平台给实时和历史时间,构建全新类别的事件驱动应用程序并获取通用事件管道。通过Confluent我们能非常容易的构建...

2019-06-21 15:13:58 8805 1

原创 Struct Streaming的简介

Struct Streaming是底层基于SparkSQL引擎的、可扩容和容错的流处理引擎。允许我们利用处理静态数据的方式来处理我们的流计算。随着流数据的不断流入,Sparksql引擎会增量的连续不断的处理并且更新结果。可以使用DataSet/DataFrame的API进行 streaming aggregations, event-time windows, stream-to-bat...

2019-06-20 10:47:38 1529

空空如也

空空如也

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

TA关注的人

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