- 博客(76)
- 资源 (2)
- 问答 (3)
- 收藏
- 关注
原创 SparkStreaming 的Exactly Once实现方式总结
流式处理SparkStreaming 的 exactly once的讨论和实现
2022-01-24 19:07:07
2268
原创 记录一下自己写的小工具:shell 调度 SQL 批处理,递归查找调度路径
写这段代码的背景:1:老项目,因为一些原因没有使用一些流行的DAG调度平台,而是通过使用Linux定时任务调度SHELL的方式来执行每日的批处理调度2:整个的批处理调度一共有三个入口SHELL,也就是直接和Linux 定时任务交互的SHELL,big_main.sh,run_main.sh,run_ten.sh。而这三个脚本也是我的递归方法的出口3:一共有两个目录,一个目录专门放所有的shell脚本,一个目录专门放所有的SQL脚本4:SHELL和SHELL之间互相调用,没有清晰的分层,多少层
2021-03-04 10:41:39
913
1
转载 Adaptive Execution如何让Spark SQL更高效更好用?
文章目录背景 动态设置 Shuffle Partition Spark Shuffle 原理 原有 Shuffle 的问题 自动设置 Shuffle Partition 原理 使用与优化方法 动态调整执行计划 固定执行计划的不足 SortMergeJoin 原理 BroadcastJoin 原理 动态调整执行计划原理 使用与优化方法 自动处理数据倾...
2020-01-19 10:50:20
298
原创 环境变量设置--命令行绕过权限管控
解决的问题因为公司的环境比较特殊,权限太小,因此导致无法进入到环境变量配置页。故需要在命令行下面配置环境变量。可以绕过权限管控。Java环境变量配置只执行一次的SETX PATH "%PATH%;%JAVA_HOME%\bin"可重复执行SETX JAVA_HOME "D:\software\java\jdk-11.0.4"SETX CLASSPATH "....
2019-09-26 14:08:00
738
原创 spark本地开发环境搭建(maven + scala + java)
开发工具和软件版本信息 IDEA 2019.2 JAVA 1.8 Scala 2.11.12 Spark 2.4.3 Hadoop 2.7.7 Windows ...
2019-06-23 13:11:18
1570
1
原创 CDH 5.12 spark升级从1.6到2.2
CDH5.12对应spark版本下载Spark升级包CSD文件下载SPARK2_ON_YARN-2.1.0.cloudera1.jarparcels包下载因为我的Linux版本是centos7,因此下载下面的两个包SPARK2-2.2.0.cloudera1-1.cdh5.12.0.p0.142354-el7.parcelSPARK2-2.2.0.cloudera1-1.cdh5....
2019-04-19 22:58:05
774
原创 Scala环境搭建(windows10)
安装方式Sbt安装.Sbt是Scala的构建工具,可以通过它来安装ScalaIDE 安装比如IntelliJ其它方式通过二进制文件直接安装Scala开始安装Java8安装打开命令行,执行 java -version检查Java的版本,如果没有安装Java8,下载安装,链接:https://www.oracle.com/technetwork/java/javase/do...
2019-04-14 13:15:26
511
原创 mysql给数据排序,更新rank值
SET @C = 0;SET @A = '';UPDATE `cifi_bi`.`rp_pr_my_monthly_report_m_sign` dSET d.`rank` = ( SELECT CASE WHEN d.`id` is not null THEN @C := @C + 1 ELSE (@C := @C +...
2019-01-17 16:50:56
3275
转载 Visual Studio Code 快捷键大全(Windows)
Visual Studio Code 快捷键大全(Windows)(转载自https://www.cnblogs.com/nzbin/p/7504591.html)Visual Studio Code 是一款优秀的编辑器,非常适合编写 TS 以及 React 。最近在学习 AngularJs 2,开始使用 VSCode,特意整理翻译了一下官网的快捷键。因为已经习惯了 Sublime 的快...
2018-09-11 10:54:56
2751
原创 通过python爬虫下载TXT文件,并整合到一个文件中
最近学习了下python爬虫,在简单看了一些文档之后就想着做点东西来完善下自己学习的内容。因此就写了下面的代码,来实现把一个网站上面的小说内容下载下来。小说是一章一章的结构,因此在把每章的内容爬下来之后,还需要合并到一个TXT文件中。python的版本是3.6,然后使用了beautifulsoup库。 网站的界面如下:从上图可以看到,网站里面的内容每一章都是单独的下载链接。因此...
2018-08-11 12:31:54
9313
3
原创 Java 线程 Interrupt() 方法解析
Java中我们可以通过一些手段关闭一个线程。关闭一个线程有两种方式:一种是强制关闭,比如说是exit退出当前线程,stop()方法强制关闭一个线程,Interrupt方法给一个线程打上标识,如果遇到阻塞的情况下抛出InterruptedException 结束线程。其中使用stop方法的方式强制关闭线程的方式已经不推荐了,因为可能导致一些难以预料的后果,并且这些方法在新版本的Java API中已经...
2018-06-22 11:17:36
726
原创 ReentrantLock 解析 - 不公平锁 -Chapter1
可重入锁synchronized 关键字其实就是可重入锁。那什么是可重入锁呢,简单举个栗子就清楚了:假如一个对象A,有两个方法m1和m2,下面是代码class A { synchronized void m1(){ ... m2(); ... } synchronized void m2()...
2018-06-15 18:08:31
259
原创 Java中通过反射为构造函数为private的类创建对象
在Java中,一般情况下会使用new关键字来调用类的有参或者无参构造函数来建立一个对象,也可以通过Class.newInstance()方法来调用类的无参构造函数来建立一个对象。而如果一个类的构造函数为private 类型,不是public类型的话,那么new关键字和Class.newInstance()方法都将没有用武之地。这也是为什么我们通过把构造函数设置为private类型来实现单例模式的原...
2018-05-16 10:15:18
4167
原创 Java Thread.yield方法和Object.wait方法的区别
yield方法和wait方法都会导致当前线程的停止。但是它们是有区别的。 首先,yield方法是Thread对象提供的方法,wait是Object对象提供的方法可以看到线程一共有下面的几种状态。 1. 新建(new):新创建了一个线程对象。2. 可运行(runnable):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调...
2018-05-15 10:30:10
1346
原创 Java 线程安全的单例模式
第一种,通过synchronized 关键字双重非空判断public class ThreadSafeSingleton { //使用volatile关键字,可以保证当ThreadSafeSingleton对象在第一个线程中创建完毕的时候,其它的线程可以立马感知到 private static volatile ThreadSafeSingleton threadSafeS...
2018-05-14 22:35:33
1193
原创 Java 多线程简单死锁实现
什么情况下才会出现死锁呢?一种比较典型的情况是: 有两个线程,就叫做thread1 和thread2,这两个线程的执行过程中都需要获取资源A和资源B的锁。当出现这种情况的时候,就会导致两个线程死锁: Thread1访问A资源,然后准备访问B资源,Thread2先访问B资源,然后准备访问A资源。当thread1和thread2同时执行的时候,就可能导致死锁。因为可能thread1...
2018-05-11 16:32:32
748
原创 Linux Sftp 下载整个文件目录
直接看图: 有两个特点:1:使用-r参数2:在目录后面使用"."号 这样的话就可以把/opt/merkle 目录和子目录里面的文件全部下载到本地了。
2018-05-03 11:17:57
50385
6
原创 Ubuntu 查看异常登录 暴力攻击
最近我的腾讯云服务器报警说有人正在暴力破解,所以我就去查看后台的登录失败日志,命令如下: sudo lastb Screen clipping taken: 4/19/2018 3:04 PM 尼玛,整的是一对的暴力破解信息啊。第一列:表示尝试的登录用户,看图中可以发现有root, support,scanner….等等一些常见的用户。第二列:表示通过什么方式来登录,可以看得出来,是ssh...
2018-04-19 15:30:03
3090
原创 Hadoop 伪分布式环境, jobhistory 配置信息引起的报错
Hadoop 版本 2.6.5 Ubuntu Linux 伪分布式环境之前我的Hadoop环境因为运行时报了下面的错误:ava.io.IOException: java.net.ConnectException: Call From localhost.localdomain/127.0.0.1 to 0.0.0.0:10020 failed on connection exception: ...
2018-04-11 18:17:05
1145
原创 Hadoop 伪分布式搭建(2.6.5)
Hadoop2和Hadoop1是不一样的,所以专门为了Hadoop2 做了一个记录。 我的环境是Ubuntu 16.4 首先确保Java已经安装完毕,并且环境变量已经配置OK,具体的细节我就不在这里讲解了。 然后确保ssh已经安装好,sshd需要启动并且使用Hadoop的脚本管理远程的Hadoop节点。 安装ssh相关:sudo apt-get install sshsudo apt-...
2018-04-11 14:52:11
474
原创 Hadoop java运行时内存不足
服务器是一个云服务器,内存为1G,CPU为1核。然后执行一个Hadoop本身自带的example报错的。报错信息如下:There is insufficient memory for the Java Runtime Environment to continue.Native memory allocation (mmap) failed to map 12288 bytes for commi...
2018-04-11 14:51:39
2718
原创 NetBeans 中classpath没法找到资源文件
有个非常简单的需求,就是写一个Java类,并且实现读取properties资源文件。 加载资源的方式为使用了java.util.ResourceBundle 这个类。 为了测试方便,一开始把properties文件和Java文件放在了同一个目录下面。看下图: 资源文件和类名完全一样。 接下来贴代码: 直接把ResourceBundle对象定义为一个静态变量,在...
2018-04-03 10:53:20
1519
原创 Nbaction.xml 自定义build 过程
Build属于maven生命周期的一部分,并且build中有很多的过程,参考下面的图: 其中不同的步骤可以执行不同的goal。 nbactions.xml 可以让我们自定义build过程,实现个性化的build项目的能力。 Nbactions.xml 是放在maven项目最上层项目里面的一个文件,该文件可以自定义一个项目build的个性化过程。
2018-04-02 10:49:26
694
原创 Windows 搭建 redis环境
Redis其实是不正式支持windows环境的,不过有些用来学习的windows环境的redis安装包: 参考下面的URL: https://github.com/MicrosoftArchive/redis/releases 参考下面的图片,下载zip压缩包: 解压后,一共有下面的这些文件,注意其中高亮部分的文件,都是比较重要的。
2018-03-19 15:01:29
148
原创 maven生命周期的概念
maven在设计的时候,是有着自己的目的的。而且maven一切的表象,都是为这个目的而服务。 maven其实对项目提出了一些自己的概念:生命周期,步骤 maven给项目定义了三个生命周期 Clean Default(构建build) Site 围绕着这三个生命周期,给每个生命周期定义了一些步骤 每个生命周期,都是严格
2018-01-29 14:07:15
561
原创 Xdebug 可以显示错误信息
今天定位问题的时候,发现PHP总是在报错,但是我们的浏览器端却无法看到报错的堆栈信息。 查看了Apache日志也不能够指出具体的错误出在哪里。然后我就在想是不是因为配置了xdebug导致了我们的错误信息没法展示出来。 后来我就注释xdebug的配置信息,然后果然发现浏览器端可以看到错误信息了。之后我就在思考,是不是可以在配置xdebug之后,浏览器端仍然可以显示php的详细错误信息呢?
2017-12-01 13:40:00
1418
原创 WeiPHP 环境搭建
官网地址:http://www.weiphp.cn/index.php?s=/w0/home/Index/weiphp.html 我当前官网的WeiPHP的版本是4.0.beta 下载好weiPHP后,上传到服务器,最好是根目录,但是因为我的服务器目录已经被作为其它的用途使用,所以我在根目录下建立了一个weiphp目录,用来安装。 接下来使用unzip命令把压缩包
2017-11-30 17:28:23
5062
原创 远程调试DEBUG YII框架
之前我写过一个文章介绍了关于如何配置Eclipse 远程debug PHP,但是当时因为是刚接触,不是很熟悉,而且当时介绍的过于简单,对于简单的PHP文件的debug还好,如果是那种涉及到PHP框架的情况下,当时的简单配置是不支持的,下面就是之前的文章的链接: http://blog.youkuaiyun.com/shikenian520/article/details/78662070 关于
2017-11-29 13:04:05
1078
原创 使用PHP 版eclipse来配置远程DEBUG PHP代码
关于如何在windows环境下给PHP安装Xdebug,请参考我之前的文章: http://blog.youkuaiyun.com/shikenian520/article/details/78647753 在PHP安装好了xdebug工具之后,查看Phpinfo,发现我的debug端口为默认的9000,见下图: 接下来打开我的eclipse工
2017-11-29 10:07:39
3077
原创 XAMPP PHP配置 Xdebug
XAMPP自带 Xdebug工具,所以就不需要重新安装。可以直接配置使用。 先下载对应版本的Xdebug扩展文件,放到php的ext目录下 https://xdebug.org/download.php 到Xdebug的PHP根目录,打开PHP.ini文件 找到[XDebug]的部分,写入下面的配置信息: [XDebug];; Only Zend O
2017-11-27 18:36:28
3329
1
原创 XAMPP 配置YII的Web目录的URL为/localhost/yii,通过Alias命令设置虚拟目录,同时解决403 forbidden错误
在我们使用YII框架的过程中,发现YII框架的入口文件目录比较深,特别是我的入口文件在Yii\basic\web目录下,导致我每次在URL中药输入很长一段才能够找到我的index.php入口文件。 所以我觉得有必要把访问YII的url长度缩短,这样显得更专业,也更加安全。因为这就不会暴露我的YII代码的真实相对路径了。 我之前其实写过一篇文章,介绍如何配置虚拟主机:http:/
2017-11-27 17:17:44
1000
原创 XAMPP Apache 设置virtual host
进入到XAMPP的安装目录,然后进入到 apache\conf\extra\目录下,打开httpd-vhosts.conf 文件 我之前用了YII框架,那么把YII框架的入口文件所在的目录设置为virtual host,加入下面的代码: DocumentRoot "C:/software/xampp/Yii/basic/web" ServerName local
2017-11-27 16:40:30
1977
原创 reportico工具和Yii整合,并解决Projects area does not exist - cannot write project 错误
Reportico工具是一个PHP开源的报表工具。可以YII、Laravel等流行的PHP框架进行整合。 首页:http://www.reportico.org/ 首页如下: Screen clipping taken: 11/20/2017 3:54 PM 然后我们想要和PHP整合,那么可以看下面的这个链接: Scr
2017-11-21 16:04:10
1372
原创 XAMPP3.2.2 Mysql root密码重置,同时解决PhpMyadmin在设置密码后无法登录的问题。
XAMPP3.2.2启动后,帮助文档其实是自带有的。 我在使用XAMPP的过程中,发现通过之前操作Mysql的经验来创建用户和给mysql配置用户登录的时候,发现都没有生效。所以就很疑惑。然后就找到了它自带的文档来实现改动密码的操作。 首先,XAMPP其实的mysql数据库一开始是没有密码的,所以是比较危险的。我们需要给root用户重新设置一个新的密码: 启动XAMPP上面的mysql
2017-11-21 10:58:05
1719
原创 YII 框架学习-第二波
入口文件YII框架入口文件有两个,一个是 web application的入口文件,一个是console application的入口文件。 Web application的入口文件是 index.php,用户通过url访问后台的时候的入口文件。Console application的入口文件是 yii(是php文件), 这个文件是通过yii.bat启动的时候调用的。
2017-11-17 15:50:39
298
原创 YII框架学习-第一波
安装YII php composer.phar create-project yiisoft/yii2-app-basic basic 2.0.13 安装好了之后,可以启动Apache服务器,并且访问YII框架: http://localhost/DemoPage/Yii/basic/web/index.php 这是我安装好的目录文件:注意(最下面有个bat
2017-11-15 14:25:22
950
原创 Windows 系统安装Composer
下载Composer的文件,URL: https://getcomposer.org/composer.phar 下载完文件之后,放到PHP的安装目录中 在PHP的根目录下创建一个CMD 文件(因为Composer文件需要通过PHP来调用,但是每次都手动输入composer的文件位置是非常麻烦的一件事。 并且犹豫PHP的根目录已经配置在环境变量中,所以我们直接在PHP的根
2017-11-15 11:09:31
202
原创 Windows 绿色安装PHP
下载PHP压缩包: http://windows.php.net/downloads/releases/ 通过上面的链接,找到自己需要的版本,然后安装。我选择的是php-5.6.32-Win32-VC11-x64.zip 接下来解压该文件,然后到根目录,创建php.ini文件。 根目录下一共有php.ini-development和php.ini-produc
2017-11-09 10:35:55
884
1
Ubuntu 16.04启动之后,总是报错linux fireware 安装出错
2018-06-10
Hadoop执行报Java内存不足错误
2018-04-10
visual studio 2013 community 安装报错
2016-06-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人