自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CM调整后台元数据库信息

CM修改后台元数据连接信息

2022-07-01 10:20:01 523 1

原创 Streamsets报错“‘NoneType‘ object does not support item assignment”

StreamSets 使用报错

2022-06-09 14:04:34 2388

原创 CDH 配置 HADOOP_CLASSPATH

如何配置HADOOP_CLASSPATH

2022-06-02 13:49:45 2823

原创 idea报错“Static methods in interface require -target:jvm-1.8”

问题的原因很明显是 idea 中的 jdk 版本设置有问题,针对性作如下排查

2022-06-02 10:24:29 574

原创 HDFS 上文件 block 的副本参不参与计算

前段时间在部门内部做了一个 大数据组件 的知识分享,期间说到 hdfs 的文件多副本存储 和 Spark 的数据本地性时,一位同学提到“既然文件在集群上有多个副本,那么,Spark 计算时会不会有重复?” 我的第一反应是不会重复,但,原因呢?后面特意去查了下 Spark 的源码 以及 HDFS 上的文件读写过程,简单记录下我的理解。1. Spark 读取 HDFS 上的文件时,为什么计算结果不会重复?Spark 在读取 HDFS 上的文件时,首先向 HDFS 发起一个读请求,这时,Spark 相当.

2022-05-27 15:18:56 137

原创 Grafana 获取 api 的数据

最近在做数据质量管理,使用的组件是 Griffin 。在收集到数据后,还是想把数据用起来,比如说自动告警啥的。就想到了能否使用 Grafana 接入 Griffin 的数据,来自动告警,这里简单记录下实验过程。Grafana 接入 api 的数据Grafana 自带的 DataSource plugin(插件)不能接入 api 的数据,需要通过安装额外的插件。去Grafana plugin 的官网上找了几个支持 api 的插件,例如 JSON API、Infinity 、Simple Json,逐个.

2022-05-24 18:40:06 5033

原创 github镜像站

由于工作中 Github 访问较多,但由于不可描述原因,国内访问速度很慢,甚至大部分时候直接不能访问。这里记录下在网上找到的 镜像站,供后续备查。首选https://gh.api.99988866.xyz/网速还阔以,大概有300kb/s,使用方式如下:# 1. 文件下载加速直接在页面上输入待下载的地址,点击 下载即可。# 2. git clone 直接把域名添加到 git 地址前面,例如git clone https://gh.api.99988866.xyz/https://git.

2022-05-24 17:58:14 4069

原创 Hive 中的不规则日期格式大小比较出错

记录一个 Hive 查询中,关于 不规则时间/日期格式比较 的问题。在数仓实施时,数据源中关于 时间/日期类型 的字段格式有很多,例如 2022-05-10、2022-05-10 15:30:15、2022/05/10、2022/05/10 15:30:15,还有很多不规范的数据,例如 2022-5-10、2022-5-8 15:30:15等等 。我们在进行日期大小比较时,如果直接使用这些原始数据,就很容易出现问题。看下面的例子:# 直接用 时间字符串 比对查询,返回结果为 falsesele.

2022-05-10 11:19:10 2028

原创 调度DolphinScheduler安装文档

本文档为DolphinScheduler 集群部署模式安装文档,主要参考 官方文档,这里对之前安装过程简单做些记录,供后续备查。1. 准备工作JDK : 下载JDK (1.8+),并将 JAVA_HOME 配置到以及 PATH 变量中;数据库:PostgreSQL (8.2.15+) 或者 MySQL (5.7+),两者任选其一即可,如 MySQL 则需要 JDBC Driver 8.0.16;大数据基础环境,例如,Hive、Spark等等;创建部署用户,并且一定要配置 sudo 免密###.

2022-04-07 14:37:20 2392

原创 CDH集成Griffin

最近部门准备做数据质量管理,在调研了社区中常用的几个数据质量管理组件后,最终选取了Griffin作为大数据这边的数据质量管理组件。本文档为CDH集群集成Griffin集成文档,所以Griffin需要的基础依赖服务,例如HDFS、Hive、Spark 下面将不再额外说明。1. 版本选择Griffin 的版本:最新版 0.6.0;Griffin 依赖服务Livy:0.5.0(官方版本为0.3.0,)Griffin 依赖服务ElasticSearch:6.4.1(官方Maven中版本为6.4.1,.

2022-03-08 14:18:13 1708

转载 Apache Hadoop2.0之HDFS均衡操作分析

文章转载自:https://www.cnblogs.com/xiaoliang-y/p/4920170.html1. HDFS均衡操作原理HDFS默认的块的副本存放策略是在发起请求的客户端存放一个副本,如果这个客户端在集群以外,那就选择一个不是太忙,存储不是太满的节点来存放,第二个副本放在与第一个副本相同的机架但是不同节点上,第三个放在与第二个和第一个副本不同的机架上,原则是尽量避免在相同的机架上放太多的副本。随着时间的推移,在各个DataNode节点上的数据块会分布的越来越不均衡。如果集群不均.

2022-02-22 14:16:22 435

原创 CM/CDH 问题记录

本文档为离线安装CDH 6.3.1 时,记录安装过程中出现的一些问题,供后续备查。从2021年1月31日开始,所有Cloudera软件都需要有效的订阅,并且只能通过付费墙进行访问。之前的在线安装,目前都不能用了。1. CM/CDH 安装包无法下载由于之前的CM 安装包和CDH parcel 包都不能直接通过cloudera官网下载了,这里需要手动下载相关的安装包,地址详见CM/CDH离线下载包。下载好后,需要在CM安装集群上找台服务器配置安装包分发服务。参考官方文档CM / CDH,以及这篇比较.

2022-02-16 11:27:37 3272

原创 CDH 使用 CM下线节点

本文档为cdh集群,下线/上线节点操作文档。CM 集群下线节点,主要参考官方文档:操作前调优文档: https://docs.cloudera.com/documentation/enterprise/6/latest/topics/cm_mc_decomm_host.html#concept_urw_wyw_cy操作文档:https://docs.cloudera.com/documentation/enterprise/6/latest/topics/cm_mc_host_maint.html#

2022-02-10 11:19:15 2035

转载 PySpark 的背后原理

本博客转载自 守护之鲨Spark主要是由Scala语言开发,为了方便和其他系统集成而不引入scala相关依赖,部分实现使用Java语言开发,例如External Shuffle Service等。总体来说,Spark是由JVM语言实现,会运行在JVM中。然而,Spark除了提供Scala/Java开发接口外,还提供了Python、R等语言的开发接口,为了保证Spark核心实现的独立性,Spark仅在外围做包装,实现对不同语言的开发支持,本文主要介绍Python Spark的实现原理,剖析pyspark.

2022-01-07 18:24:35 160

原创 Spark中内存参数的理解

最近开始使用 pyspark ,对于 executor 中的内存参数有些之前没注意到的地方,查看资料后,这里作下记录。1. spark 内存划分Spark 的内存分为:JVM 内存JVM之外的内存JVM内部的内存分为4部分:存储内存-此内存用于spark缓存数据、广播变量等;执行内存-此内存用于存储执行spark任务期间所需的数据(主要是shuffle阶段);用户内存-此内存用于用户目的。您可以在这里存储自定义数据结构、udf、UDAFs等;保留内存-此内存用于spark用途,从sp

2021-12-28 10:46:43 1540

原创 通过 rest api的方式向yarn集群提交应用

上一篇文章,提到通过通过 rest api的方式获取yarn app的相关信息,这一篇文章就讲一下怎么通过 yarn rest api 向yarn集群提交应用。文章分为三个部分:使用场景使用方式及注意事项使用示例

2021-08-19 20:43:36 1293

原创 Hive 多字符分隔列或行

Hive 的默认分隔符为:字段:\001行:\n当数据中包含了例如 \001、\n 时,就需要自定义分隔符了。并且,自定义的分隔符要为多字符,单字符重复的概率太高了。Hive 的 MultiDelimitSerDe 只支持字段的多字符分隔,行的换行符不支持自定义修改。这里重写 TextInputFormat ,用来支持行的多字符分隔。依赖 <dependencies> <dependency> <groupId>

2021-08-09 15:37:11 771

原创 Hive on Spark && Spark-sql 中插入数据时的文件数量

Hive on Spark 表明 schema 使用的是 hive catalog,engine 使用的是spark;Spark-sql 则是schema 和 engine 都是用的是Spark。那么,使用上述两种方式向表里多次插入数据据时,底层的文件数量是怎么样的呢?是否严格按照 hdfs block 的大小来划分的?结论使用 Hive on Spark 每次插入都会生成一个copy文件,和block大小无关,和原始表的文件数量无关;使用 Saprk-sql 时,则按照原始表的文件数量进行 co

2021-08-02 11:13:10 583

原创 Sqoop 增量同步(自动更新 last value)

我们在使用Sqoop进行增量同步的时候,是需要指定 last value 的。但一般我们都是自动化进行数据同步的,这就需要有一个地方,能够自动记录和填充 上次增量同步的 last value。抛开 手动 维护这个 last value,繁琐,而且还很容易失败。后面查了下Sqoop 的官网,发现 Sqoop job 提供了类似的功能。这里记录下,供后续查看。官方文档 上面有详细的说明,这里说明下几个点:1. 目的The job tool allows you to create and work w

2021-07-29 12:22:30 3458

原创 Sqoop 导入 Hive 添加不属于来源表的字段

最近在接手 Sqoop的数据导入到处工作较多,其中碰到了一个之前没有遇到过的问题,即Sqoop在导入postgresql数据到Hive时,需要添加一个字段 租户id 到Hive表中,但是这个租户id在来源表中是不存在的。在Sqoop脚本中,需要手动处理下,这里记录下处理方式,供今后查看。我们一般情况下,通过Sqoop导入数据到Hive时,采用--table的方式导入全表、全字段的情况居多。当需要在来源表已有字段的基础上添加字段时,就需要使用到 --query了。这里有几个细节需要注意下:1.--ta

2021-07-12 14:50:07 291

转载 JVM内存管理算法

1.判断对象是否存活引用计数法很多教科书判断对象是否存活的算法是这样昨给对象中添加一个引用计数器,每当有 一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1;任何时刻计数器为 0的对象就是不可能再被使用的。客观地说,引用计数算法(Reference Counting)的实现简单,判定效率也很高,在大部分情况下它都是一个不错的算法.也有一些比较著名的应用案例,例如微软公司的COM(Component Object Model)技术、使用Action5cript 3的FIashPlayer.P

2021-04-29 11:14:13 194

原创 Amazon S3 Tools 简介及使用

Amazon S3 Tools 简介及使用Amazon 提供了两种客户端工具 S3cmd 和 S3Express,方便用户快速操作开放 s3 标准接口的分布式文件存储系统。前者用于 Linux 环境,后者用于 Windows 环境,这里主要介绍 Linux 环境的客户端工具 S3cmd .一、S3cmd 是什么官方 文档给出了说明,S3cmd is a free command line tool and client for uploading, retrieving and managing

2021-03-23 13:55:16 2082

原创 数据湖和数据仓库的对比

定义看下维基百科的定义:A data lake is a system or repository of data stored in its natural/raw format, usually object blobs or files. A data lake is usually a single store of data including raw copies of source system data, sensor data, social data etc.and transfor

2021-03-18 16:45:57 597

原创 如何实现自定义的 Hive Serde

前言1. 什么是 Hive Serde官网上给出了定义,由于英语不好,我这里直接复制过来。SerDe is short for Serializer/Deserializer. Hive uses the SerDe interface for IO. The interface handles both serialization and deserialization and also interpreting the results of serialization as individua

2021-03-04 11:26:46 873 1

原创 通过 rest api的方式获取yarn app的相关信息

有些时候,我们需要使用 yarn api来获取应用的相关信息,主要的使用场景包括:数据质量管理,比如检查查询主键是否异常、记录数是否异常任务运行监控,比如获取任务的执行用户、执行时长、申请资源等等。对外开放的统一数据管理平台这里对自己做的相关测试,做一个简单记录,供后来查阅。接口类型hadoop 版本选择 3.0.1,不同的版本,接口查询/返回字段可能不同,详见官方文档。关于 yarn 应用状态的接口,有两个。yarn 集群所有应用:ResourceManagerRestCluster

2021-02-22 13:41:53 2751

转载 分布式系统协议Paxos、Raft和ZAB

分布式系统协议Paxos、Raft和ZAB文章转载自:https://zhuanlan.zhihu.com/p/147691282首先得放在开头,分布式系统的一致性协议一直是分布式系统的难题,本人没有阅读过 Lamport 老人家的论文原文(估计直接读也未必读的懂),以下所有内容来自网络博文、书籍和网站的整理,加上自己的理解润色。水平有限不敢说全都正确,仅供参考。Paxos说到分布式一致性协议,Paxos 肯定是绕不开的,关于它和其作者 Lamport 的传奇故事也是有很多,这里就不啰嗦了,感兴趣的

2021-02-19 13:13:27 436

转载 大数据_Zookeeper_Raft 协议

这篇文章讲解的非常好,直接摘录过来了。转载自:https://blog.csdn.net/u010003835/article/details/886501210 - Raft协议和Paxos的因缘​ 读过Raft论文《In Search of an Understandable Consensus Algorithm》的同学都知道,Raft是因为Paxos而产生的。Paxos协议是出了名的难懂,而且不够详细,紧紧依据Paxos这篇论文开发出可用的系统是非常困难的。Raft的作者也说是被Pax

2021-02-19 11:13:32 185

转载 解码OneData,阿里的数仓之路

干货:解码OneData,阿里的数仓之路。转载自:https://developer.aliyun.com/article/67011简介: 据IDC报告,预计到2020年全球数据总量将超过40ZB(相当于4万亿GB),这一数据量是2013年的10倍。正在“爆炸式”增长的数据的潜在巨大价值正在被发掘,它有可能成为商业世界的“新能源”,变革我们的生产,影响我们生活。当我们面对如此庞大的数据之时,如果我们不能有序、有结构的进行分类组织据IDC报告,预计到2020年全球数据总量将超过40ZB(相当于4万亿G

2021-02-03 15:10:28 286

转载 Flink窗口全解析:三种时间窗口、窗口处理函数使用及案例

Flink窗口全解析:三种时间窗口、窗口处理函数使用及案例转发自:https://zhuanlan.zhihu.com/p/102325190讲得很好的一个帖子,学习了。我们经常需要在一个时间窗口维度上对数据进行聚合,窗口是流处理应用中经常需要解决的问题。Flink的窗口算子为我们提供了方便易用的API,我们可以将数据流切分成一个个窗口,对窗口内的数据进行处理。本文将介绍如何在Flink上进行窗口的计算。一个Flink窗口应用的大致骨架结构如下所示:// Keyed Windowstream

2021-01-18 15:47:22 759

转载 网易云音乐基于 Flink + Kafka 的实时数仓建设实践

转载自: 网易云音乐基于 Flink + Kafka 的实时数仓建设实践简介:本文由网易云音乐实时计算平台研发工程师岳猛分享,主要从以下四个部分将为大家介绍 Flink + Kafka 在网易云音乐的应用实战:背景Flink + Kafka 平台化设计Kafka 在实时数仓中的应用问题 & 改进直播回放:https://developer.aliyun.com/live/2894一、背景介绍(一)流平台通用框架目前流平台通用的架构一般来说包括消息队列、计算引擎和存储三部分,通用

2021-01-12 16:57:56 220

转载 Kappa架构与Lambda架构比较

Kappa架构与Lambda架构比较转载自:Kappa架构与Lambda架构比较目标市场上的许多玩家已经建立了成功的MapReduce工作流程来每天处理以TB计的历史数据。但是谁愿意等待24小时才能获得最新的分析结果?这篇博文将向您介绍旨在利用批处理和流处理方法的Lambda架构。我们将利用Apache Spark(Core,SQL,Streaming),Apache Parquet,Twitter Stream等实时流数据快速访问历史数据。还包括清晰的代码和直观的演示!简史Apache Hado

2021-01-11 18:03:55 502

转载 Kudu、Hudi和Delta Lake的比较

Kudu、Hudi和Delta Lake的比较转发自:Kudu、Hudi和Delta Lake的比较kudu、hudi和delta lake是目前比较热门的支持行级别数据增删改查的存储方案,本文对三者之间进行了比较。存储机制kudukudu的存储机制和hudi的写优化方式有些相似。kudu的最新数据保存在内存,称为MemRowSet(行式存储,基于primary key有序),当MemRowSet写满(默认1G或者120s)后flush到磁盘,形成DiskRowSet(列式存储)。DiskR

2021-01-11 17:22:01 892

转载 时序数据库介绍和使用

本文转载自:时序数据库介绍和使用链接:https://blog.csdn.net/liukuan73/article/details/799503291.基础1.1 时序数据的定义什么是时间序列数据(Time Series Data,TSD,以下简称时序)从定义上来说,就是一串按时间维度索引的数据。用描述性的语言来解释什么是时序数据,简单的说,就是这类数据描述了某个被测量的主体在一个时间范围内的每个时间点上的测量值。它普遍存在于IT基础设施、运维监控系统和物联网中。  对时序数据进行建模的话,会

2021-01-07 17:46:45 2996

原创 play 框架返回 json 类型

前言play 框架返回 json 类型的数据,和 java 的区别较大。之前碰到了 model 转 json 结果为空的情况,这里做下简单的记录,供后来查询使用。项目中,使用 slick 作为 FRM 框架集成方式。问题slick 查询返回的 model 实体类,需要转换为 json。解决办法方式一:通过 fastjson 转换。通过 Alibaba 的 fastjson 来进行转换的话,需要额外使用 @BeanProperty 来注解所有字段,自动生成 get 和 set 方法,并且多个实体

2021-01-05 16:07:47 318

转载 彻底打通实时数据仓库该如何实现及多种技术架构解析

彻底打通实时数据仓库该如何实现及多种技术架构解析本文转自:https://www.aboutyun.com/forum.php?mod=viewthread&tid=30039问题导读1.实时数据仓库有哪些特点?2.公司构建实时数据仓库有哪些好处?3.如何构建实时数据仓库?4.实时数据仓库本文解析了哪些架构?越来越多的实时数据需求,需要更多的实时数据来做业务决策,例如需要依据销售情况做一个资源位的调整;同时有些活动也需要实时数据来增强与用户的互动。如果数据有实时和离线两种方案,优先考虑

2020-12-30 09:12:50 529

原创 Spark借助Alluxio保障在k8s中的数据本地性

Spark借助Alluxio保障在k8s中的数据本地性继续接着之前的文章谈一谈,Spark在k8s中的数据本地性。上一篇文章详见Spark在k8s中的数据本地性,这里开始实际操作。主要参考官网文档,下面主要记录几个需要注意的地方:开启短读【short-cuit】特性【默认开启】,短读特性是指client在读取数据时,如果数据在worker本地节点存在的话,client会直接读取数据而不是通过worker读取数据,对性能有较好的提升。# 用户自定义的config.yaml中,在worker定义部分

2020-07-03 14:21:59 792 1

原创 Alluxio分布式存储系统

Alluxio分布式存储系统Alluxio简介Alluxio简介详见官网Alluxio,这里抄录部分官网简介内容。什么是AlluxioAlluxio是全球首个 用于分析的开源数据编排技术和用于云的AI。它弥合了数据驱动应用程序和存储系统之间的鸿沟,使存储层中的数据更接近数据驱动应用程序,并使其易于访问,从而使应用程序可以通过通用接口连接到众多存储系统。Alluxio的内存优先分层架构使数据访问的速度比现有解决方案快几个数量级。在数据生态系统中,Alluxio位于数据驱动的应用程序(例如Apache

2020-07-03 10:53:48 531

原创 Spark在k8s中的数据本地性

Spark在k8s中的数据本地性在k8s中,天然存在着数据隔离和网络隔离,这就造成了Spark在k8s中运行时,很难达到较好的数据本地性级别。常规意义上讲Spark的数据本地性,大部分是指的是Spark在读取数据时,第一个stage的数据本地性。这是由于Spark在读取数据时,首先会先去task执行位置寻找数据是否有缓存,其次会寻找数据是否存在优选位置【检查checkpointRDD的数据位置,主要是有的任务设置的checkpoint,任务失败恢复时,直接读取checkpoint的数据】,最后才是寻找窄依

2020-07-03 09:21:13 448

转载 Spark Scheduler模块源码分析之TaskScheduler和SchedulerBackend

原文链接:[https://blog.csdn.net/dabokele/article/details/51932102](https://blog.csdn.net/dabokele/article/details/51932102)  本文是Scheduler模块源码分析的第二篇,第一篇Spark Scheduler模块源码...

2020-06-23 15:37:16 183

转载 Spark+Alluxio性能调优十大技巧

Spark+Alluxio性能调优十大技巧转载自 Alluxio 原文链接:https://blog.csdn.net/Alluxio/article/details/89461741由于统一访问对象存储(如S3)和HDFS数据的场景的出现和普及,Apache Spark结合Alluxio的大数据栈越来越受欢迎。此外,越来越流行的计算与存储分离的架构导致计算端查询延迟增大。因此,Alluxio常被用作贴近计算端的热数据存储以提高性能。为了能够获得最佳性能,用户需要像使用其他技术栈组合一样遵循最佳的实战经

2020-05-22 15:19:47 300

空空如也

空空如也

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

TA关注的人

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