自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 Hudi on Flink 同步Hive集群运行报错,缺少HiveConf

Hudi on Flink sync Hive 实践代码结构def getHudiTableDDL(importConfig: ImportConfig): String = { s""" | CREATE TABLE ${importConfig.sinkDatabase}.${importConfig.sinkTableName} ( ${importConfig.sinkFields} ) | ${if (importConfig.isParti

2022-04-19 14:18:39 2498

原创 Kafka Stream

简单看看KafkaSteam的KStream源码

2021-12-20 16:11:34 892

转载 Hbase报错:Connection refused: no further information: localhost/127.0.0.1:16000

原文地址困扰了两条,google一下就解决了,真是服了!Hbase默认会绑定hostname执行的IP地址的端口

2021-11-16 16:40:42 1838 1

原创 Java用户线程实现的学习与理解

#《深入理解Java虚拟机》介绍协程(coroutine)章节读后感#首先是软件在多线程模型的实现总类:内核级别的线程(KLT),这是操作系统支持,CPU调度的基本单位;用户线程(UT),这是在进程之上,由语言自己模拟操作系统调度的一种轻量级实现,它避免了在用户态和内核态的转化(CPU中断导致的损耗);还有就是混合实现,也就是在内核线程上映射了多个用户线程,用户线程可以使用操作系统提供的内科线程调度器,实现较用户线程更简单,效率较内科线程更高效。Java在早期选择了用户线程,后期改为了内核线程,现在微服

2021-11-02 00:56:10 84

转载 转载:VirtualBox VM process: 5 解决方案

这个问题困扰了我一个星期 最后终于在一个好兄弟的博客里面找到了解决方法 太顶了啊系统:win10问题描述:初始报错:VirtualBox – Error in supR3HardenedWiReSpawnError relaunching VirtualBox VM process: 5supR3HardenedWinReSpawn what: 5 VERR_INVALID_NAME (-104) -Invalid (malformed) file/path name.点确定后就是“不

2021-10-19 16:55:56 6153 9

原创 Paxos算法学习总结

共识算法系列:Paxos/Multi-Paxos算法关键点综述、优缺点总结 - 知乎 (zhihu.com)Paxos算法Paxos算法是莱斯利·兰伯特(英语:Leslie Lamport,LaTeX中的“La”)于1990年提出的一种基于消息传递且具有高度容错特性的共识(consensus)算法。需要注意的是,Paxos常被误称为“一致性算法”。但是“一致性(consistency)”和“共识(consensus)”并不是同一个概念。Paxos是一个共识(consensus)算法[1]。P.

2021-10-18 16:36:37 226

原创 在学习GRPC时的负载均衡

在学习gRPC课程的时候谈到了,负载均衡,大概分为两个部分:服务端和客户端接触最多的是Web程序大多用的服务端方式,大数据或者分布式领域一般用客户端方式客户端可以避免单点问题,减少请求IO的次数,符合大数据场景。...

2021-10-13 10:31:41 95

原创 算法-单链表相交问题

题目给定两个可能有环的单链表,头节点head1和head2。请实现一个函数,如果两个链表相交,请返回相交的第一个节点。如果不相交,返回null。一、单链表相交的情况两个无环单链表相交这种方式可以用线性时间复杂度和常数级的空间时间复制度解决,考虑如上图的情况,可以的得出以下结论 两个无环单链表若相交,那么它们的最后一个结点一定是相等的。根据这个原理我们,我们只需要遍历到两个链表的最后一个结点,判断其是否相等就能判断两个无环链表是否相交。但是,现在...

2021-10-10 14:01:52 392

原创 分布式存储系统-Ceph简单分析

1.1Ceph分布式存储系统分析Ceph是一个统一的分布式存储系统,可同时提供块、文件和对象3种接口的存储服务。与传统的分布式存储系统不同,它采用了无中心节点的元数据管理方式,因此具有良好的扩展性和线性增长的性能。经过十余年的发展,Ceph已被广泛地应用于云计算和大数据存储系统。1.1 Ceph分布式存储系统关键技术分析1.1.1 CRUSH算法分析存储系统的数据分布算法要解决数据如何分布到各个节点的问题,随着大规模分布式存储系统(PB级的数据和成百上千台存储设备)的出现,数据分布算法...

2021-10-08 19:01:59 587

原创 并发系统的专业术语解释---基于Akka官网等

Terminology, Concepts(说明)In this chapter we attempt to establish a common terminology to define a solid ground for communicating about concurrent, distributed systems which Akka targets. Please note that, for many of these terms, there is no single agree

2021-08-27 14:56:42 157

原创 Ozone-Tips

爬过的一些坑虚拟机本地环节搭建Ozone的SCM提供了Web界面,里面可以查看集群的Configuration如果要单机配置,则需要在ozone-site.xml中修改ozone.replication属性的值。但是,Ozone-1.1.0就算修改了datanode的副本数为1,SCM也可以在安全模式,这时候需要修改hdds.scm.safemode.min.datanode的值,如下:SCM的web界面还是很方便,如果是集群问题可以在这里查找对应的配置。...

2021-08-19 10:19:37 187

原创 spark DF写入csv/text

Spark的DataFrame调用write方法写入数据时有以下几点注意DF写入CSV,要求每一列的类型为String DF写入TEXT,要求DF只有一列,且类型为String修改DataFrame列类型的方法可以参考1 直接按列名修改scala> a.select(a.col("id"),a.col("username"),a.col("birthday").cast("string").as("bir")).show2 遍历DF的所有列依次修改,适用于修改成统一的类型

2021-05-11 21:56:08 1532

原创 动态代理模式

动态代理基于接口与基于类的动态代理 基于接口 Java JDK 基于类 JDK代理JDKti'g

2021-03-17 15:35:41 92

原创 Spark往Redis里写入数据

以下是Redis连接池的代码:/** * Redis连接池 */object RedisClient extends Serializable { val redisHost = "192.168.115.142" val redisPort = 6379 val redisTimeout = 30000 lazy val pool = new JedisPool(new JedisPoolConfig, redisHost, redisPort, redisTimeout)

2021-03-16 17:00:15 1633

原创 新建play应用

新建play应用1.1 使用SBT命令行进入一个空文件夹,在CMD中使用如下命令:D:\PlayProject>sbt new playframework/play-scala-seed.g8然后生成如下提示信息:[info] welcome to sbt 1.4.7 (Oracle Corporation Java 1.8.0_152)[info] loading global plugins from C:\Users\99653\.sbt\1.0\plugins[info] se

2021-03-09 12:23:18 208

原创 Spark基础知识

1 Apache Spark 是什么?Spark是一个在集群上运行的统一计算引擎以及一组并行数据处理软件库。下面展示了Spark给用户提供的组件:2 Spark的设计哲学统一平台Spark主要目标是为编写大数据应用程序提供统一的平台,例如,JavaEE的Spring框架。Spark的统一API使得编写大数据应用变得简单且高效。计算引擎Spark对比Hadoop这样即解决分布式存储(HDFS)又提供了计算范式(MapReduce)的大数据平台,它主要专注于计算引擎。Spark从

2021-03-03 13:47:42 603

原创 Scala实现访问者模式

目的以某种方式对在数据结构上操作进行封装,进而在不修改原有数据结构的前提下为该数据结构添加新的操作。概述对于一个长期运行的程序而言,一个焦点是如何对数据结构进行扩展。而这个扩展有两个维度:新操作与新实现。一般来说,我们希望在不重新编译源代码,甚至不访问源代码的情况下完成对数据结构的扩展。在Java中,Collection作为一个通用的集合接口,定义了很多方法和操作,同时也有很多实现类。在面向对象的语言中,我们可以实现接口为Collection添加新的实现。如果要为Collection添加新的

2021-03-02 16:00:44 77

原创 装饰器模式与静态代理模式

概述当我们需要向一个既有的类添加一些行为,但无法对该类进行修改时,装饰器模式,又称包装器(Wrapper),将会派上用场。总而言之,装饰器模式就是在不改变类的前提下,给类之前的行为添加新的功能。装饰器模式结合了继承和组合。它需要具体的类实现了一个行为接口,而这个具体的类(ConcreteClass)和被实现的接口(Interface)将被我们用来实现装饰类(Decorator)。如下图所示 目的装...

2021-03-02 13:41:40 532

原创 Scala的null/空对象

引言在Java中,我们通常用一个null来表示引用的缺失。但是,这样的做法会在代码里产生大量的判空逻辑://常用的判空逻辑if(null == someObejct){ ... ...}else { ... ...}这种null对象的使用,会导致项目里散落着大量如上的代码,加大了代码量的同时,一旦我们忘记了对null的处理,就会导致整个程序的崩溃。所以,null对象一直是Java程序员不得不面对的琐事,而常见的解决方案,如单例对象(这样功能的对象可以在此处简称

2021-03-01 20:48:35 3696

原创 Scala函数闭包

对于函数闭包,可以结合面向对象来理解:一个函数体就是一个对象 函数体里的函数就是对象的行为 函数体里的一个字段被多个函数引用,一个对象里的属性会被多个行为改变 函数体里的字段可以是函数,一个对象的行为可以被外界引用下面是Scala的一个函数闭包object FuncTest extends App { var results = count def count: List[() => Int] = { var list = List[() => Int]()

2021-02-26 17:01:36 110

原创 Scala高阶函数实现面向对象的行为模式

高阶函数实现传统的策略模式摘 要:从Java的传统策略模式(Strategy Pattern)出发,对比Scala的面向函数编程实现的策略模式。关键词:设计模式;Java;Scala1策略模式 策略模式,顾名思义就是类的行为上的策略,或是不同算法的使用策略。大体的理解就是随着情况的变化来选择不同的策略,对比于硬编码(多重条件转移语句)的分支实现,策略模式符合开闭原则。 策略模式主要由三部组成:策略接口(Strategy),具体策略(Concrete Strategy...

2021-02-26 13:02:29 200

用java实现HS和LCR选举算法

用java实现HS和LCR算法

2021-03-10

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

TA关注的人

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