自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 资源 (2)
  • 收藏
  • 关注

原创 【nlp-with-transformers】|Transformers中的generate函数解析

BeamSample 算法是基于 BeamSearch 的一种变体,它与 BeamSearch 算法类似,但在选择输出单词时,它不仅考虑当前单词的概率,还会考虑前面已经选择的单词的概率。forced_bos_token_id:一个整数,表示在 decoder_start_token_id 之后强制生成的第一个 token 的 ID。它作为序列长度的指数使用,进而用于除以序列的分数。Sample 算法是基于概率的方法,它在每次选择输出单词时,不仅考虑当前单词的概率,还会考虑前面已经选择的单词的概率。

2023-09-08 15:12:53 1319

原创 【建议收藏】|3分钟让你学会Scala Trait 使用

Scala 是一种强大的静态类型编程语言,其中的 Trait 是一种重要的特性。Trait 可以被看作是一种包含方法和字段定义的模板,可以被其他类或 Trait 继承或混入。在本文中,我们将介绍 Scala Trait 的边界(Boundary)的概念,并展示如何使用它来限制 Trait 的使用范围。

2023-07-25 14:51:22 260

原创 【建议收藏】|某大型金融集团内部数据治理实战总结

近几年,企业都在做数字化转型。数字化转型是为了使组织更好地适应数字时代的变革,提高效率、降低成本、增强竞争力。是将业务和流程数字化,以实现更快、更准确、更可靠的数据处理和决策。是以数据驱动的精细化运营、业务创新增长和商业模式创新。

2023-05-22 16:01:58 489

原创 Spark 高级面试题合集

资深Spark工程师一线大厂面试题,错过了就是错过了,关注公众号:857Hub

2023-03-28 09:44:52 1018

原创 浅谈 Apache Doris FE 处理查询 SQL 源码解析

在使用 Apache Doris 时,我们可以通过 Apache Doris FE Web 页面或者 Mysql 协议执行 SQL 语句,但是对于 Apache Doris 背后如何对 SQL 进行处理,我们无从所知。本文章内容主要讲解 Apache Doris 查询 SQL 在 FE 节点处理原理。Doris 查询语句和市面主流的数据库处理阶段都差不多,需要经过 Parse,Analyze,Optimize,Plan,Schedule,Execute 等阶段。 在 Doris 中,FE 负责查询的 Par

2022-11-30 14:40:40 894

原创 【源码解读】| LiveListenerBus源码解读

为什么要使用事件监听机制?设想如果Spark事件通知采用Scala函数调用方式,随着集群规模的增加,会对函数调用的越来越多,最终会受到JVM线程数量的限制而影响监控数据的更新,甚至出现无法提供监控数据给用户。函数调用多数情况是同步调用,这样还会导致线程阻塞,并被长时间占用。...

2022-06-20 00:18:45 292

原创 【源码解读】|SparkEnv源码解读

【源码解读】|SparkEnv源码解读导读SparkEnv 创建入口SparkEnv 架构组件前置创建SecurityManager安全管理器创建RPCEnv 环境创建SerializerManager序列化管理器创建BroadcastManager广播管理器创建mapOutputTracker创建Shuffle管理器创建动态内存管理器创建BlockTransferService块传输服务创建BlockManagerMaster创建BlockManager创建监控指标系统MetricsSystem创建Out

2022-04-19 23:28:36 1800

原创 【源码解读】|SparkContext源码解读

本文针对于SparkContext 初始化总线,来阐述了Spark接收到任务时的一系列操作,让读者可以随时溯源

2022-04-11 15:13:10 1992 9

原创 Kafka Producer整体架构概述及源码分析

可以关注下公众号,专注数据开发、数据架构之路,热衷于分享技术干货。整体架构「线程」❝ 整个 Kafka 客户端由两个线程协调运行,即Main线程和Sender线程。 在Main线程中由KafkaProducer创建消息,然后通过Interceptor、Serializer和Partitioner之后缓存到RecordAccumulator(消息累加器)中。 Sender线程 负责从RecordAccumulator中获取消息并发送到Kafka中。 ❞...

2021-10-24 19:02:38 425 6

原创 Flink 内核原理与实现-资源管理

可以关注下公众号,专注数据开发、数据架构之路,热衷于分享技术干货。一、资源抽象二、资源管理器资源管理器在Flink中叫做ResourceManager。Flink同时支持不同的资源集群类型,ResourceManager位于Flink和资源管理集群(Yarn、K8s等)之间,是Flink集群资源管理器的抽象,其主要作用如下:申请容器启动新的TM,或者为作业申请Slot。 处理JobManager和TaskManager的异常退出。 缓存TaskManager(即容器),等待...

2021-09-20 19:32:04 680 5

原创 Flink 内核原理与实现-作业提交

可以关注下公众号,专注数据开发、数据架构之路,热衷于分享技术干货。一、提交流程 Flink作业在开发完毕之后,需要提交到Flink集群执行。ClientFronted是入口,触发用户开发的Flink应用Jar文件中的main方法,然后交给PipelineExecutor(流水线执行器,在FlinkClient 升成JobGraph之后,将作业提交给集群的重要环节。)#execue方法,最终会选择一个触发一个具体的PiplineExecutor执行。不同模式的适用场景 运...

2021-09-05 19:03:47 836 2

原创 Flink 内核原理与实现-状态原理

可以关注下公众号,专注数据开发、数据架构之路,热衷于分享技术干货。前言状态在Flink中叫作State,用来保存中间计算结果或者缓存数据。根据是否需要保存中间结果,分为无状态计算和有状态计算。对于流计算而言,时间持续不断地产生,如果每次计算都是相互独立的,不依赖于上下游的事件,则是无状态计算。如果计算需要依赖于之前或者后续的事件,则是有状态计算。State是实现有状态计算的下的Exactly-Once的基础。 State的典型实例如:Sum求和、去重、模式...

2021-09-04 21:16:40 666

原创 Flink 内核原理与实现-内存管理

一、内存模型从大的方面来说,TaskManager进程的内存模型分为JVM本身所使用的内存和Flink使用的内存,Flink使用了堆上内存和堆外内存。1.Flink使用的内存 1)JVM堆上内存 a. 框架堆上内存Framework Heap Memory。Flink框架本身所使用的的内存,即TaskManager本身所占用的堆上内存,不计入Slot的资源 配置参数:taskmanager.memory.framewo...

2021-08-29 17:20:55 1548 11

原创 Flink 内核原理与实现-类型与序列化

一、DataStream类型系统1.1 物理类型1.2 逻辑类型1.3 类型推断1、类型提取的时机#DataStream.java在使用DataStream#map接口的时候,就会触发类型的提取。2、自动类型推断Flink首先会自动进行类型推断,但是对于一些带有泛型的类型,Java泛型的类型擦除机制会导致Flink在处理Lambda表达式的类型推断时不能保证一定能提取到类型。 Java泛型(Generic) 的引入加强了参数类...

2021-08-28 22:15:02 618 1

原创 Flink 内核原理与实现-时间与窗口

一、时间类型事件时间:指时间发生的时间,一旦确定之后再也不会改变。 处理时间:指消息被计算引擎处理的时间,以各个计算节点的本地时间为准。 摄取时间:指事件进去流处理系统的时间,对于一个事件来说,使用其被读取的那一刻时间戳。二、窗口2.1 窗口类型Count Window(计算窗口) 1)Tumble Count Window:累积固定个数的元素就视为一个窗口,该类型的窗口无法像时间窗口一样事先切分好。 2)Sliding Count Window:累...

2021-08-22 18:48:52 867 2

原创 Flink 内核原理与实现-核心抽象

Flink API提供了开发的接口,此外,为了实现业务逻辑,还必须为开发者提供自定义业务逻辑的能力。。Flink中设计了用户自定义函数体系(User Defined Function,UDF),开发人员实现业务逻辑就是开发UDF。一、环境对象 StreamExecutionEnvironment是Flink应用开发时的概念,表示流计算作业的执行环境,是作业开发的入口、数据源接口、生成和转换DataStream的接口、数据Sink的接口、作业配置接口、作业启动执行的入口。...

2021-08-21 20:12:45 1511 5

原创 Apache Flink 十大技术难点实战

如果对Flink感兴趣或者正在使用的小伙伴,可以加我入群一起探讨学习。

2021-08-17 09:28:04 1192

原创 MacOS安装node,npm踩坑

如果 brew install npm 、node 无果 那么就这么来:1、git clonegit clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags` 2、环境变量配置#sudo vim ~/.zshrcexport NVM_DIR="$HOME/.nvm"[ -s "$N...

2021-08-16 18:08:27 302

原创 Flink 内核原理与实现-应用

一、Flink应用开发Flink作为流批一体的计算引擎,其面对的是业务场景,面向的使用者是开发人员和运维管理人员。Flink应用程序,也叫Flink作业、FlinkJob.Flink作业包含了两个基本的块:数据流(DataStream)和转换(Tranformation)。DataStream是逻辑概念,为开发者提供了API接口,Transformation是处理行为的抽象,包含了数据的读取、计算、写出。所以Flink的作业中的DataStreamAPI调用,实际上构建了多个由Transformat

2021-08-15 19:32:02 957 2

原创 Flink 内核原理与实现-入门

一、核心特点1.1、流批一体1、无界数据无界数据是持续产生的数据,所以必须持续的处理无界数据流。因为输入是无限的,没有终止时间。处理无界数据通常要求以特定顺序获取,以便判断事件是否完整、有无遗漏。2、有界数据 有界数据就是在一个确定的时间范围内的数据流,有开始有结束,一旦确定了就不会再改变。1.2、可靠的容错能力1、集群级容错与集群管理器集成Flink与集群管理器紧密集成,例如Yarn、K8s。当进程挂掉时,将自动启动一个新进程...

2021-08-14 19:05:43 977

原创 大数据小白到入门的知识结构

作为一个过来人来讲,在学习的路上没少掉坑里。经历跌宕起伏,才逐渐明白数据的光明。 博主96年,从事大数据开发工作4年。实时、离线、数仓、springcloud、爬虫、机器学习都略有接触及实际开发经验。 大数据范围很广,涉及的分支也很多。整理如下学习体系供参考。 基础语言学习: java 推荐理由:大数据很多框架底层源码都是java编写,如果java不会,看源码解决问题,深入就不用谈了。 大数据入门:Hadoop 推荐理...

2021-07-28 15:03:43 374

原创 国内镜像源大全

小技巧1、下文中没有提到的加速源,可以用"XXX 国内源"或"XXX 阿里源"等关键词尝试搜索。不要浪费生命,浪费青春2、强大的阿里开源镜像站:https://opsx.alibaba.com/mirror docker微软加速源 global proxy in China format example dockerhub(docker.io) dockerhub.az

2021-06-29 15:12:44 11279 1

原创 Kafka 唯一Leader不可用

1004 broker 挂掉后,执行以下命令可以查看,不可用分区,如图:# /usr/hdf/current/kafka-broker/bin/kafka-topics.sh --describe --zookeeper 10.32.40.39:2181 | grep 'Isr: 1004' | grep 'Leader: 1004'解决办法:强行修改zk元数据isr leader,并重新选举。如再不行,滚动重启kafka broker进入zk:# /usr/hdf/cu...

2021-06-29 15:07:46 713

原创 ClickHouse深入浅出之(三) 完结篇 (引擎)

一、表引擎表引擎在 ClickHouse 中的作用十分关键,直接决定了数据如何存储和读取、是否支持并发读写、是否 支持 index、支持的 query 种类、是否支持主备复制等。如果你需要创建分区表,简单的 TinyLog 没有, Memory 也没有!...

2021-06-06 16:38:44 887

原创 ClickHouse深入浅出之(二) 实战篇 (SQL基本语法和导入导出)

一、SQL基本语法1.1、CREATE1.1.1、CREATE DATABASE数据库起到了命名空间的作用,可以有效规避命名冲突的问题,也为后续的数据隔离提供了支撑。任何一张数据表,都必须归属在某个数据库之下。创建数据库的完整语法如下所示:CREATE DATABASE [IF NOT EXISTS] db_name [ENGINE = engine];如果查询中存在 IF NOT EXISTS,则当数据库已经存在时,该查询不会返回任何错误。create database i

2021-04-25 15:20:48 2583

原创 ClickHouse深入浅出之(二) 实战篇 (数据类型)

一、数据类型基础类型只有数值、字符串和时间三种类型,没有 Boolean 类型,但可以使用整型的 0 或 1 替代。 ClickHouse 的数据类型和常见的其他存储系统的数据类型对比:官网:https://clickhouse.tech/docs/zh/sql-reference/data-types/1.1、数值类型数值类型分为整数、浮点数和定点数三类1.1.1、整数在普遍观念中,常用Tinyint、Smallint、Int 和 Bigint 指代整数的不同取值范围。而.

2021-04-25 10:37:01 2040

原创 python anaconda3 虚拟环境操作

anaconda3 环境安装百度已经很多了,这里不做介绍了。本文讲一下conda3虚拟环境操作,避免本地多版本的尴尬问题。一、查看当前已有的虚拟环境conda env list 二、创建虚拟环境conda create -n $your_env_name python=版本例如:conda create -n python2.7bak python=2.7三、激活conda 虚拟环境conda activate python2.7bak四、退出conda虚

2021-03-22 14:24:47 186

原创 Hbase 思维导图

思维导图

2021-03-08 13:19:56 300

原创 下载libmysqlclient.so.18

sudo wget -O /usr/lib/libmysqlclient.so.18 http://files.directadmin.com/services/es_7.0_64/libmysqlclient.so.18鄙视收费的。

2021-02-01 10:12:19 1873 6

原创 详解分布式协调服务 ZooKeeper

一、ZooKeeper 简介1.1 ZooKeeper 是什么ZooKeeper 是 Apache 的顶级项目。ZooKeeper 为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如统一命名服务、配置管理和分布式锁等分布式的基础服务。在解决分布式数据一致性方面,ZooKeeper 并没有直接采用 Paxos 算法,而是采用了名为 ZAB 的一致性协议。ZooKeeper 主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储。但是 ZooKeep

2020-12-25 10:02:52 829

原创 Java 保存图片至本地 Base64

图片路径下载版本: public String saveImg(String img_url, String savename) { InputStream input = null; OutputStream os = null; try { URL url = new URL(img_url); // 打开URL连接 URLConnection con = url.o

2020-12-22 17:48:23 2199

原创 ClickHouse深入浅出之(二) 实战篇 (安装)

1. ClickHouse安装1.1. 关于版本和系统的选择 操作系统:Centos-7.7ClickHouse: YUM 在线安装,20.x1.2. 安装前的准备1.2.1. CentOS7 打开文件数限制在 /etc/security/limits.conf 这个文件的末尾加入以下内容:sudo vim /etc/security/limits.conf* soft nofile 65536* hard nofile 65536* soft nproc 1...

2020-12-12 17:18:03 1387

原创 ClickHouse深入浅出之(一) 基础篇

1. 需求背景1.1. 概述 随着数据科技的进步,数据分析师早已不再满足于传统的T+1式报表或需要提前设置好维度与指标的OLAP查询。数据分析师更希望使用可以支持任意指标、任意维度并秒级给出反馈的大数据Ad-hoc查询系统。这对大数据技术来说是一项非常大的挑战,传统的大数据查询引擎根本无法做到这一点。由俄罗斯的Yandex公司开源的ClickHouse脱颖而出。在第一届易观OLAP大赛中,在用户行为分析转化漏斗场景里,ClickHouse比Spark快了近10倍。在随后几年的大赛中,面...

2020-12-12 15:41:08 15385

原创 datax之hivereader

从git上拉去hivereader代码。也可以自己开发。开发完成打zip 或者tar包放入以下路径 /datax/plugin/reader,记得解压注意:reader下面不能留zip包。

2020-11-04 17:38:23 2003 2

原创 从删库到跑路,NameNode元数据丢失如何恢复Hadoop集群

首先,回一下Hadoop的基础概念,从概念入手恢复集群。HDFS metadata以树状结构存储整个HDFS上的文件和目录,以及相应的权限、配额和副本因子(replication factor)等。本文基于Hadoop2.6版本介绍HDFS Namenode本地目录的存储结构和Datanode数据块存储目录结构,也就是hdfs-site.xml中配置的dfs.namenode.name.dir和dfs.namenode.data.dir。一、NameNodeHDFS metadata主要存储两种

2020-10-24 12:36:24 2122

原创 获取页面源代码 生成静态页面

package com.itstar.util;import java.io.*;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;/**Created by Macbook on 2018/4/14.*/public class DownUtil {/** * 根据页面URL网址和编码集获取当前网页的源代码 * @param url 网址 * @par

2020-10-24 08:56:00 484

原创 Maven国内镜像源配置

到maven/conf/setting.xml 找到mirrors,然后复制粘贴 <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/pub

2020-10-21 17:10:54 827

原创 Hive load JSON数据类型

用以下文本举例:{"name":"Yin", "address":{"city":"Columbus","state":"Ohio"}}{"name":"Michael", "address":{"city":null, "state":"California"}}hdfs路径为:/user/maokaimin/jsontest/json.json方法1:建表create external table maokaimin.jsontest (jsonObject string) lo

2020-10-20 13:36:55 777

原创 TIDB详细安装及避坑指南

集群拓扑pd_servers: - host: 10.32.*.* name: "pd-1" - host: 10.32.40.64 name: "pd-2" - host: 10.32.*.* name: "pd-3" tidb_servers: - host: 10.32.*.* - host: 10.32.40.64 tikv_servers: - host: 10.32.*.* - host: 10.32.*.* - host: 1

2020-10-16 00:01:28 4396 2

原创 Linux 递归按条件指定文件名查找文件,按IP为例

$ find 文件名 -name "*.py" -o -name "*.json" -o -name "*.sh" |xargs grep -E -r -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | grep "IP前缀" >> ip.logs

2020-09-08 14:18:14 471

datax之hivereader

datax之hivereader,下载完成后直接解压到plugin下的reader。解压完后记得把zip包删掉,不然报错哟

2020-11-04

json-serde-1.3.7-jar-with-dependencies.jar

hive解析json数据依赖jar包,下载jar包后,直接放到对应路径,在建表语句中加入org.openx.data.jsonserde.JsonSerDe即可使用。

2020-10-20

空空如也

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

TA关注的人

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