
Hadoop
文章平均质量分 55
kwame211
这个作者很懒,什么都没留下…
展开
-
Flink 水位线
水位线是什么窗口 有了,但是要知道我们面对的是实时数据,而这些数据随时会出现延迟的情况,从几秒到几小时都有可能。如果要忽略这些数据,那么显然对于结果的计算是不准确的,可是要等待这些延迟数据的话, 那岂不是等同于批处理了,我们等不了那么久的。这个时候水位线恰好就是来描述和解决这个问题的。它指定一个时间 T,表示时间 T 之前的数据已经全部到达,后续再迟到的数据会被直接丢弃。水位线用在哪里显然,使用处理时间来处理事件不会有延迟,因此也不需要水位线。所以水位线只出现在事件时间窗口,因而也可以将水位线看原创 2021-01-25 10:52:26 · 663 阅读 · 1 评论 -
flink 窗口滚动/滑动介绍
什么是窗口Flink作业中的窗口是指一种对无限数据流设置有限数据集,从而实现了处理无线数据流的机制。窗口本身只是个划分数据集的依据,它并不存储数据。当我们需要在时间窗口维度上对数据进行聚合时,窗口是流处理应用中经常需要解决的问题。Flink的窗口算子为我们提供了方便易用的API,我们可以将数据流切分成一个个窗口,对窗口内的数据进行处理窗口主要有两种,一种基于时间(Time-based Window),一种基于数量(Count-based Window)。本文主要讨论Time-based W...原创 2021-01-18 18:01:54 · 1403 阅读 · 1 评论 -
UnsatisfiedLinkError:org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray
报错:java.lang.UnsatisfiedLinkError:org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray.https://github.com/steveloughran/winutilshadoop.dll放在C:\Windows\System32下原创 2021-01-13 12:34:02 · 252 阅读 · 0 评论 -
python使用kafka收发消息
简介kafka是最近几年很流行的消息队列中间件。在大数据以及后端服务领域有很广泛的应用。废话不多说,接下来直接上代码介绍python如何向kafka发送数据以及订阅数据。消息发布Kafka的消息是 " 发布--订阅" 模式的。 接下来先介绍向kakfa发布消息。先安装python的kafka连接模块。pip install kafka-python.import timefrom kafka import KafkaProducerclass KafkaMsgProduc...原创 2021-01-12 17:56:14 · 5448 阅读 · 3 评论 -
大数据框架Flink 部署模式
Flink支持三大部署模式:1. Local 本地部署Flink 可以运行在 Linux、Mac OS X 和 Windows 上。本地模式的安装唯一需要的只是Java 1.7.x或更高版本,本地运行会启动Single JVM,主要用于测试调试代码。2. Standalone Cluster集群部署Flink自带了集群模式Standalone,这个模式对软件有些要求:1.安装Java1.8或者更高版本2.集群各个节点需要ssh免密登录3. Flink ON YARNFli原创 2021-01-12 15:58:52 · 196 阅读 · 0 评论 -
Flink 1.11.3 本地环境调试webui
1 pom文件<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.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelV原创 2021-01-12 11:53:49 · 1410 阅读 · 0 评论 -
Lambda架构与Kappa架构 区别
Lambda 架构:Lambda 架构总共由三层系统组成的:批处理层(Batch Layer),速度处理层(Speed Layer),以及用于响应查询的服务层(Serving Layer)。批处理层:使用可处理大量数据的分布式处理系统预先计算结果。它通过处理所有的已有历史数据来实现数据的准确性。这意味着它是基于完整的数据集来重新计算的,能够修复任何错误,然后更新现有的数据视图。输出通常存储在只读数据库中,更新则完全取代现有的预先计算好的视图。速度层:通过提供最新...原创 2021-01-06 14:42:36 · 2366 阅读 · 0 评论 -
Flink的特点以及优势
Flink的优势、数据量&吞吐量&延迟性Flink 的流处理引擎只需要很少配置就能实现高吞吐率和低延迟。2、支持 Event Time 和乱序事件Flink 支持了流处理和 Event Time 语义的窗口机制。Event time 使得计算乱序到达的事件或可能延迟到达的事件更加简单。3、状态计算的 exactly-once 语义流程序可以在计算过程中维护自定义状态。Flink 的 checkpointing 机制保证了即时在故障发生下也能保障状态的.原创 2020-12-01 10:12:30 · 3026 阅读 · 0 评论 -
Distinct window functions are not supported: count(distinct _w0# ) windowspecdefinition
方案一、可以使用approx_count_distinct,但是它是概率统计,非精确统计,其是使用HyperLogLog实现的import org.apache.spark.sql.functions._val windowSpec = Window.partitionBy($"site_id",$"pxSessionId").orderBy($"timeMs").rowsBetween(Long.MinValue,Long.MaxValue)res.withColumn("pageVie..原创 2020-10-26 18:54:50 · 1980 阅读 · 1 评论 -
Kafka 丢数据问题
Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。主要应用场景是:日志收集系统和消息系统。Kafka主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。 高吞吐率。即使在非常廉价的商用机器上也能做到单原创 2020-07-17 10:18:54 · 2677 阅读 · 0 评论 -
Kafka的优点
1)解耦:在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2)冗余:(副本)有些情况下,处理数据的过程会失败。除非数据被持久化,否则将造成丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的..原创 2020-07-17 09:48:22 · 410 阅读 · 0 评论 -
kafka 模式对比
Receiver是使用Kafka的高层次Consumer API来实现的。receiver从Kafka中获取的数据都是存储在Spark Executor的内存中的,然后Spark Streaming启动的job会去处理那些数据。然而,在默认的配置下,这种方式可能会因为底层的失败而丢失数据。如果要启用高可靠机制,让数据零丢失,就必须启用Spark Streaming的预写日志机制(Write Ahead Log,WAL)。该机制会同步地将接收到的Kafka数据写入分布式文件系统(比如HDFS)上的预写日志..原创 2020-07-17 09:37:08 · 468 阅读 · 0 评论 -
Kafka的简介与架构
一、简介Kafka 很好地替代了传统的message broker(消息代理)。 Message brokers 可用于各种场合(如将数据生成器与数据处理解耦,缓冲未处理的消息等)。 与大多数消息系统相比,Kafka拥有更好的吞吐量、内置分区、具有复制和容错的功能,这使它成为一个非常理想的大型消息处理应用。根据我们的经验,通常消息传递使用较低的吞吐量,但可能要求较低的端到端延迟,Kafka提供强大的持久性来满足这一要求。在这方面,Kafka 可以与传统的消息传递系统(ActiveMQ和R...原创 2020-07-17 09:36:13 · 228 阅读 · 0 评论 -
OLTP与OLAP的区别
一,OLTP概念OLTP的全称是On-line Transaction Processing,中文名称是联机事务处理。其特点是会有高并发且数据量级不大的查询,是主要用于管理事务(transaction-oriented)的系统。此类系统专注于short on-line-tansactions 如INSERT, UPDATE, DELETE操作。通常存在此类系统中的数据都是以实体对象模型来存储数据,并满足3NF(数据库第三范式)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如原创 2020-07-15 09:25:01 · 248 阅读 · 0 评论 -
oltp和olap的区别_怎么辨别oltp和olap的区别
当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transacTIon processing)、联机分析处理OLAP(On-Line AnalyTIcal Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 什么是OLTP: 也称为面向交易的处理系统,其基本特征是顾客的原始数据可以立即传送到计算中心进行处理,并在很短原创 2020-07-15 09:19:26 · 787 阅读 · 0 评论 -
OLTP与OLAP的区别
OLTP:联机事务处理(On-Line transaction Processing)OLAP:联机分析处理(On-Line Analytical Processing)(1)OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLTP系统强调数据库的内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作。(2)OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并支持提供直观易懂的查询结果,OLAP强调的数据分析,强调SQL执...原创 2020-07-15 09:13:36 · 184 阅读 · 0 评论 -
OLTP与OLAP的概念以及区别
一、两者的概bai述不同du:1、OLTP的概述:On-Line Transaction Processing 联机事务处理过zhi程dao(OLTP),也称为面向交易权的处理过程。2、OLAP的概述:联机分析处理OLAP是一种软件技术,它使分析人员能够迅速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的。二、两者的特点不同:1、OLTP的特点:结构复杂、实时性要求高。2、OLAP的特点:联机分析处理的主要特点,是直接仿照用户的多角度思考模式,预先为用户组建多维的数据模型,维指原创 2020-07-15 09:10:33 · 4583 阅读 · 0 评论 -
大数据链路
ODS层:ODS层属于操作数据层,是直接从业务系统采集过来的最原始的数据,包含了所有业务的变更过程,数据粒度也是最细的。DWD层:是在ODS层基础上,根据业务过程建模出来的实时事实明细层,对于访问日志这种数据,会回流到离线系统供下游使用,最大程度地保证实时和离线数据ODS层和DWD层一致。DWS层:订阅明细层数据后,会在实时计算任务中计算各个维度的汇总指标。如果维度是各个垂直业务线通用的,则会放在实时通用汇总层,作为通用的数据模型使用。ADS层:个性化维度汇总层,对于不是特别通用的统计维度数据会原创 2020-07-15 09:07:20 · 604 阅读 · 0 评论 -
centos7.5+Ambari2.7.3部署安装
--环境信息:192.168.101.195 bd195192.168.101.197 bd197192.168.101.198 bd198--安装所需的包:ambari-2.7.3.0-centos7.tar.gzHDP-3.1.0.0-centos7-rpm.tar.gzHDP-UTILS-1.1.0.22-centos7.tar.gzjdk-8u102-linux-x64....原创 2020-04-20 16:57:26 · 960 阅读 · 0 评论 -
Ambari Confirm Hosts Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).解决?Permanently added 'bd195,192.168.163.21' (ECDSA) to the list of known hosts.?其实仔细看问题很好解决,know hosts 是不是很眼熟,不错,就是.ssh 目录下的文件.?...转载 2020-04-20 15:03:17 · 854 阅读 · 0 评论 -
sparksql 累加历史
spark 累加历史主要用到了窗口函数,而进行全部统计,则需要用到rollup函数select type , if( sum(cnt) > max(allsum)*0.8,1,0) condition from ( select imsi,type,cnt , row_number() over (partition by type order by cnt desc )...原创 2020-04-09 17:32:15 · 456 阅读 · 0 评论 -
Spark2 Dataset之collect_set与collect_list
concat_猥琐concat_ws(',', collect_list(pulprb))concat_ws(',', collect_list(pulprb))collect_set去除重复元素;collect_list不去除重复元素spark.sql(" select t.cgi ,concat_ws(',', collect_list(pulprb)) nloc_ncg...原创 2020-03-31 15:47:52 · 488 阅读 · 0 评论 -
spark中union和unionAll
spark中union 和 unionAll 区别。union会把数据都扫一遍,然后剔除重复的数据;然而unionAll直接把两份数据粘贴返回,时间上会快很多。unionAll用的会比较多一些union是返回两个数据集的并集,不包括重复行,要求列数要一样,类型可以不同unionAll是返回两个数据集的并集,包括重复行Intersect是返回两个数据集的交集,不包括重复行Min...原创 2020-03-31 15:02:02 · 8301 阅读 · 4 评论 -
使用Ambari搭建Hadoop集群
Hadoop 介绍Hadoop是一个开发和运行处理大规模数据的软件平台,是Apache的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算。Hadoop框架中最核心设计就是:MapReduce和HDFS。MapReduce提供了对数据的分布式计算,HDFS提供了海量数据的分布式存储。在Hadoop家族中,收入了20多个用于计算、分析、存储、监控、管理等组...原创 2020-03-20 16:07:08 · 5957 阅读 · 2 评论 -
kerberos认证原理---讲的非常细致,易懂
前几天在给人解释Windows是如何通过Kerberos进行Authentication的时候,讲了半天也别把那位老兄讲明白,还差点把自己给绕进去。后来想想原因有以下两点:对于一个没有完全不了解Kerberos的人来说,Kerberos的整个Authentication过程确实不好理解——一会儿以这个Key进行加密、一会儿又要以另一个Key进行加密,确实很容易把人给弄晕;另一方面是我讲解方式有问题...原创 2020-03-14 16:03:28 · 277 阅读 · 0 评论 -
3.Spark环境搭建-Spark完全分布式集群搭建
环境准备 服务器集群 我用的CentOS-6.6版本的4个虚拟机,主机名为hadoop01、hadoop02、hadoop03、hadoop04,另外我会使用hadoop用户搭建集群(生产环境中root用户不是可以任意使用的) spark安装包 下载地址:https://mirrors.aliyun.com/apache/spark/ 我用的spark-2.2.0-bin-h...原创 2020-03-12 19:34:56 · 1107 阅读 · 0 评论 -
cdh6 flink 安装
flink可以做为批处理,也可以流处理的工具。功能根spark差不多,不过据说比spark强大。据说天猫双11,就用的这玩意。一,创建flink parcel1,下载flink parcel查看复制打印?#gitclonehttps://github.com/pkeropen/flink-parcel.git2,配置flink-parcel.properties...原创 2020-03-06 10:41:05 · 3310 阅读 · 1 评论 -
hive之insert导入分区数据
数据库分区的主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间,主要包括两种分区形式:水平分区与垂直分区。水平分区是对表进行行分区。而垂直分区是对列进行分区,一般是通过对表的垂直划分来减少目标表的宽度,常用的是水平分区。回到顶部1、分区参数介绍 hive.exec.dynamic.partition:是否启动动态分区。默认false。 hive.exec.d...原创 2020-02-27 17:22:18 · 15955 阅读 · 0 评论 -
Kafka常见问题整理
1、Kafka如何防止数据丢失1)消费端弄丢数据 消费者在消费完消息之后需要执行消费位移的提交,该消费位移表示下一条需要拉取的消息的位置。Kafka默认位移提交方式是自动提交,但它不是在你每消费一次数据之后就提交一次位移,而是每隔5秒将拉取到的每个分区中的最大的消费位移进行提交。自动位移提交在正常情况下不会发生消息丢失或重复消费的现象,唯一可能的情况,你拉取到消息后,消费者那边刚好进行了...原创 2020-02-20 16:01:34 · 784 阅读 · 0 评论 -
flink实战—使用shell终端(local模式)
概述本文讲述如何使用flink的scala-shell终端程序,通过该脚本可以快速上手flink,并可以对简单的flink任务进行调试和测试。类似于spark的shell终端。本文讲述的是本地模式下的使用。启动flink的scala-shellFlink附带了一个集成的交互式Scala Shell。它可以在本地模式和群集模式中使用。要将shell与集成的Flink集群一起使用,只需...原创 2020-01-21 11:01:59 · 350 阅读 · 0 评论 -
Kafka读取本地文件作为生产者
package com.qf.utils;import kafka.javaapi.producer.Producer;import kafka.producer.KeyedMessage;import kafka.producer.ProducerConfig;import kafka.serializer.StringEncoder;import java.io.*;impor...原创 2020-01-21 10:36:49 · 1876 阅读 · 0 评论 -
spark的调优总结
1、reduce task OOM?增大reduce端的聚合操作的内存比例增大executor memory 内存大小 --executor-memory减少reduce task每次拉取的数据量设置spak.reducer.maxSizeInFlight参数2、在sh...原创 2019-11-27 10:06:28 · 316 阅读 · 0 评论 -
SPARK-SQL内置函数之时间日期类
一、获取当前时间1.current_date获取当前日期2018-04-092.current_timestamp/now()获取当前时间2018-04-09 15:20:49.247二、从日期时间中提取字段1.year,month,day/dayofmonth,hour,minute,secondExamples:>SELECT day('2009-07-3...原创 2019-11-22 15:14:19 · 667 阅读 · 0 评论 -
Spark程序运行常见错误解决方法以及优化
一.org.apache.spark.shuffle.FetchFailedException1.问题描述这种问题一般发生在有大量shuffle操作的时候,task不断的failed,然后又重执行,一直循环下去,非常的耗时。2.报错提示(1) missing output locationorg.apache.spark.shuffle.MetadataFetch...原创 2019-11-13 10:01:37 · 2154 阅读 · 0 评论 -
SPARK调优之并行度设置
操作场景并行度控制任务的数量,影响shuffle操作后数据被切分成的块数。调整并行度让任务的数量和每个任务处理的数据与机器的处理能力达到最优查看CPU使用情况和内存占用情况,当任务和数据不是平均分布在各节点,而是集中在个别节点时,可以增大并行度使任务和数据更均匀的分布在各个节点。增加任务的并行度,充分利用集群机器的计算能力,一般并行度设置为集群CPU总和的2-3倍操作步骤并行度可以通过...原创 2019-11-13 09:46:05 · 953 阅读 · 0 评论 -
通过腾讯shuffle部署对shuffle过程进行详解
腾讯分布式数据仓库(Tencent distributed Data Warehouse, 简称TDW)基于开源软件Hadoop和Hive进行构建,并且根据公司数据量大、计算复杂等特定情况进行了大量优化和改造,目前单集群最大规模达到 5600台,每日作业数达到100多万,已经成为公司最大的离线数据处理平台。为了满足用户更加多样的计算需求,TDW也在向实时化方向发展,为用户提供 更加高效、稳定、丰富原创 2017-07-14 10:13:00 · 289 阅读 · 0 评论 -
大数据经典学习路线
1.Linux基础和分布式集群技术学完此阶段可掌握的核心能力:熟练使用Linux,熟练安装Linux上的软件,了解熟悉负载均衡、高可靠等集群相关概念,搭建互联网高并发、高可靠的服务架构;学完此阶段可解决的现实问题:搭建负载均衡、高可靠的服务器集群,可以增大网站的并发访问量,保证服务不间断地对外服务;学完此阶段可拥有的市场价值:具备原创 2017-07-17 14:48:03 · 350 阅读 · 0 评论 -
Impala String Functions
String functions are classified as those primarily accepting or returning STRING, VARCHAR, or CHAR data types, for example to measure the length of a string or concatenate two strings together.原创 2017-07-30 21:31:28 · 530 阅读 · 0 评论 -
Hadoop参数汇总
主要配置文件:corehdfsyarnmapred重要性表示如下:重要一般不重要core-default.xmlhadoop.common.configuration.version配置文件的版本。hadoop.tmp.dir=/tmp/hadoop-${user.name}Hadoop的临时目录,其它目录会基于此路径。本地目原创 2017-07-31 09:15:14 · 385 阅读 · 0 评论 -
win7平台导入hadoop2.6源码进入myeclipse
1:在console中进入到 hadoop-2.6.0-src/hadoop-maven-plugins目录,执行:mvn intall2:进入到hadoop-2.6.0-src 目录,mvn eclipse:eclipse -DskipTests3:打开myeclipse, File-Import-Existing Projects into Workspace 选择hado原创 2017-07-31 09:15:26 · 451 阅读 · 0 评论