- 博客(33)
- 资源 (6)
- 收藏
- 关注
原创 死磕sparkSQL源码之TreeNode
本文主要介绍了,sparksql中最基础的底层TreeNode类的相关方法,介绍了方法的含义,以及部分scala语法的使用介绍
2022-11-23 20:51:33
722
原创 scala之product特质理解
学习sparksql源码的时候,发现TreeNode是继承Product类的,所以学习下scala 的product特质,通过demo的形式能够更加方便理解
2022-11-18 21:22:32
716
原创 spark中使用ClosureCleaner.clean的目的
When Scala constructs a closure, it determines which outer variables the closure will use and stores references to them in the closure object. This allows the closure to work properly even when it's called from a different scope than it was created in.Sc
2022-04-14 14:58:22
1332
原创 数据结构------数组
对于数据结构中,最常用的数组进行介绍了,介绍了数组的常见操作(查询,删除,插入)时间复杂度的分析,同时分析了容器和数组的差异点,以及在什么场景下需要使用数组
2022-03-16 20:33:39
553
原创 java读取txt由于编码格式导致的乱码问题解决
背景:使用windows自带的记事本,另存为一个文本文件,可以看到当前文本编码,有这么几种格式,ANSI,Unicode,UTF-8,如果某个文档使用了其中一种编码方式,那么就必须要使用该编码方式打开,如果不适配编码方式的,后果就是得到一堆的乱码,比较烦,查找网上相关资料,终于找到一种通用的解决方案,就是先获取源文件的编码格式,然后使用该编码方式来读取这个文件,实现代码如下:代码:‘/** * 抽取txt中所有文字 * * @param path .
2021-04-21 11:23:03
285
原创 java抽取word,ppt,excel,pdf文档中文字
/** * 解析pdf文档,输出每行的文字 * * @param filePath * @return * @throws IOException */ public static List<String> getPdfWords(String filePath) throws IOException { File file = new File(filePath); PDDocument do.
2021-02-09 10:43:48
465
原创 Java多线程join和FutureTask以及Guava Demo
join demopublic class JoinDemo { public static final int SLEEP_GAP = 500; public static String getCurThreadName() { return Thread.currentThread().getName(); } static class HotWarterThread extends Thread { public HotWarte
2020-11-04 20:23:34
427
原创 使用Buffer类的基本步骤
使用Java NIO Buffer类的基本步骤如下:(1)使用创建子类实例对象的allocate()方法,创建一个Buffer类的实例对象。(2)调用put方法,将数据写入到缓冲区中。(3)写入完成后,在开始读取数据前,调用Buffer.flip()方法,将缓冲区转换为读模式。(4)调用get方法,从缓冲区中读取数据。(5)读取完成后,调用Buffer.clear()或Buffer.compact()方法,将缓冲区转换为写入模式。...
2020-11-03 15:18:37
389
原创 spark任务提交过程代码分析
下图是一个计算π的值的spark程序spark提交任务实例./spark-submit --class com.learn.spark.SimpleApp --master yarn --deploy-mode client --driver-memory 2g --executor-memory 2g --executor-cores 3 ../spark-demo.jar具体各个参数这里我们不详细解释,网上都有spark-submit脚本中调用的是org.apa
2020-09-17 10:55:52
320
原创 spark client mode和cluster mode的区别
今天在看SparkSubmit的源码的过程中,发现了,sparksubmit内部对sparkthriftserver的运行模式做了限制,不能通过cluster的模式进行运行,可以看下面的代码段(clusterManager, deployMode) match { case (STANDALONE, CLUSTER) if args.isPython => printErrorAndExit("Cluster deploy mode is currently not
2020-09-08 14:12:27
1808
原创 开源OLAP引擎(基于sparkhivethriftserver源码修改)对外提供jdbc接口流程解读
入口demopublic static void main(String[] args) throws ClassNotFoundException, SQLException { Class.forName("org.apache.hive.jdbc.HiveDriver");// Connection conn = DriverManager.getConnection("jdbc:hive2://hostname:10007","admin","12345+"
2020-09-03 14:39:08
232
原创 hive cli的实现和sparkhivethriftserver的cli实现对比
Hive cli实现老规矩,从开始启动org.apache.hive.service.server.HiveServer2#main开始看起public static void main(String[] args) { HiveConf.setLoadHiveServer2Config(true); try { ServerOptionsProcessor oproc = new ServerOptionsProcessor("hiveserver2");
2020-09-01 20:46:10
408
原创 自研分布式 OLAP系统学习记录
如何实现HA每个节点会启动两个进程,一个是master进程(端口号10008),一个是slave进程(端口号10007),目前已知这两个进程的区别是,一个是提交到yarn上,另外一个是通过local的形式,还有就是两者的jvm内存会有区别,master进程会更加大一点每个进程在启动的时候,根据自己提交的是yarn还是local的模式,如果是yarn的话,就可以成为master节点,会去往ZK的/jdbcUrl下面去注册临时节点(ip:port),如果是local模式的话,会往ZK的/jdbcUrlLo
2020-08-21 20:32:30
151
原创 Spark学习笔记
Spark学习笔记主要记录学习spark过程中一些知识点Spark应用程序驱动器:执行器:功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入主要记录学习spark过程中一些知识点Spark应用程序spark应用程序由:一个驱动器
2020-08-05 10:24:21
149
原创 scala之implicit学习
不使用implictimport java.io.Fileimport scala.io.Sourceclass RichFile(val file : File) { //定义一个read方法,返回String类型 def read():String = Source.fromFile(file.getPath).mkString}object RichFile{ //隐式转换方法(将原有的File类型转成了file类型,在用的时候需要导入相应的包) //implici
2020-07-25 15:05:13
172
原创 数据分析——数据清洗
数据清洗工具 Excel(少量数据) SQL Python,R ETL工具(比如kettle之类的) 数据清洗流程 选择数据子集 选择需要进行分析的数据集中的数据列,为避免干扰可对其他不参与分析的数列进行隐藏处理 数据列重命名 若数据集中出现同样列名称,或含义相同的两个列名,为避免干扰分析结果则需要针对某一个数据列的列名进行重命名 删除重复值 删除数据中的重复数据值,注意只会保留重复数据的第一条数据 缺失值处理 原始数据中可能会
2020-07-06 19:31:56
501
原创 数据分析笔记
数据产业实践至少涉及三个关键环节:数据业务定义(把一个具体业务问题定义成一个数据可分析问题)、数据分析与建模(描述统计、数据可视化、回归分析、机器学习)、数据业务实施(流程改造、产品设计、标准制定等)。...
2020-06-29 19:50:22
7685
原创 oracle JDK历史版本下载地址(jdk1.8_u120版本开始收费,免费版本可以通过下面地址下载)
https://www.oracle.com/java/technologies/oracle-java-archive-downloads.html
2020-06-08 16:28:50
568
原创 python实现推酷网站登录后,获取推荐内容
import requestsfrom lxml import etreeclass Login(object): def __init__(self): self.headers = { 'Referer': 'https://www.tuicool.com/login', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 .
2020-05-23 16:00:16
251
原创 python爬取推酷页面标题,来源和时间代码
import reimport requestsfrom lxml import etreefrom bs4 import BeautifulSoupimport csvdef get_one_page(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 .
2020-05-19 20:07:12
414
原创 错误:NameError: name 'HTTPError' is not defined解决方式
第一种解决方式: from urllib2 import urlopen, HTTPError try: # ... except HTTPError: pass第二种解决方式:import urllib2 try: # ... response = urllib2.urlopen(...) # ... except u...
2020-01-11 14:08:38
3080
原创 DDIA学习笔记---第一章:可靠性,可扩展性,可维护性
一开始提到,现如今很多应用程序都是“数据密集型”,而非“计算密集型”。其实想想,对于我们普通群体来说,确实是这样的。就拿你自己手机上的大部分应用,社交,娱乐(游戏除外)类型基本都是“数据密集型”应用,而那些稍微专业点,涉及到图像处理,大型游戏等应用属于“计算密集型”了。因此,在可预见的时间内,我个人感觉数据密集型应用的使用频率和数量应该是更高的。可靠性 硬件故障 断电,洪水,地震...
2019-11-26 14:22:50
3438
原创 JNI完整demo
Overview准备过程:创建一个类(HelloWorld.java) 使用javac编译该类 利用javah -jni产生头文件 用本地代码实现头文件中定义的方法 Run具体流程如下图所示接下来,详细介绍每个步骤的代码以及操作1.HelloWorld.javaclass HelloWorld { private native void prin...
2019-11-22 18:46:21
602
原创 System.out.println对多线程的影响
先上代码,第一种情况,想在多线程运行的过程中,打出当前的线程名称,代码如下:public class VolatileVisibilityTest { private static boolean initFlag = false; public static void main(String[] args) throws InterruptedException { ...
2019-07-11 13:51:24
2408
3
原创 spark个人理解
spark是什么?spark算是一个计算框架,可以对大量的数据进行一些操作,前提是将这些数据先转换为RDD,然后主要操作分为两种(transformation和action),transformation主要是将当前RDD转换为另外一种RDD,而action最终会返回结果,类似于获取总数一样。spark的所有操作都是基于RDD进行操作的。spark和hadoop的mapreduce相比的优...
2019-04-10 21:04:30
187
转载 asp.net中Page.ClientScript.RegisterStartupScript用法
//ASP.NET后台页面跳转 Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "if(confirm('保存成功!是否继续添加?')){location.href='ProductonAdd.aspx'}else{location.href='ProductonList.aspx'}");//后台弹出确定框
2014-10-13 19:47:03
561
python 基本语法快速预览.pdf
2020-04-18
hibernate需要的所有jar包
2014-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人