- 博客(12)
- 收藏
- 关注
原创 Spark Streaming中的checkpoint
Checkpoint我们必须记录一些信息以方便恢复现场,在Spark Streaming中使用checkpoint实现恢复操作。Spark Streaming中有两种不同对象的checkpont操作。元数据(Metadata) checkpointing保存Streaming中定义流计算的相关信息到可信赖的文件系统如HDFS,这种方式用于运行Driver的节点失败之后的恢复。元数据包括:配置---...
2018-06-04 12:10:56
803
原创 RDD源码分析--Iterator
RDD,Resilient Distributed Datasets,弹性分布式数据集。在Spark中,通俗地可以认为是一个数据集合,只不过这个数据集合分布在不同的机器上,对外表现为一个整体。一般来讲,对RDD进行操作比如map操作时分为两步,第一步为局部操作,即是对每台机器上的RDD的部分数据都进行map并行操作,第二步为汇总操作,将每台机器的执行结果进行汇总。其中有一个问题是,RDD中的数据集...
2018-05-28 12:02:01
978
原创 Python连接Oracle
本地安装cx_Oraclepython -m pip install cx_Oracle --upgrade在python shell界面cx_Oracle,若无报错则安装成功本地安装Oracle客户端下载Oracle对应版本的客户端,高版本客户端可以连接低版本数据库,但是低版本客户端不能连接高版本数据库,且位数版本要与python相对应,如python为64位则安装64位客户端如instantc...
2018-05-22 23:03:52
3918
原创 编译Spark
Spark发展至今已经相当成熟了,编译起来也相当方便。SBT编译由于国内网络问题不能连接Maven中央仓库,想用SBT编译的同学可以改userhome目录下的repository文件连接Oschina和aliyun仓库,这两个仓库我都试过结果还是没连上,所以改为使用maven编译。环境为Win10版本为2.3.0准备环境:Maven、Git配置Git/bin目录Maven/bin和到Path路径首...
2018-05-22 23:00:40
385
原创 从Oracle导入数据到ElasticSearch
使用工具是logstash6.2.4https://www.elastic.co/cn/首先要知道的是,logstash抽取Oracle的数据是通过追踪某一个递增列实现增量导入的,所以就要求在查询结果有一个递增列,这并不是说需要一个自动增长列,因为在Oracle中,rownum可以作为查询结果中的一个递增列,如SELECT * FROM(SELECT NP.*, ROWNUM RN FROM (S...
2018-05-22 22:28:54
12462
1
原创 Scala中的柯里化
首先要区分Scala函数与方法的区别,这在Scala中是两个不同概念,只有理解了这两个概念才能理解柯里化。方法scala> def add(x:Int, y: Int) = x + yadd: (x: Int, y: Int)Intscala> add(1, 2)res0: Int = 3函数scala> val add_f = (x: Int, y: Int) => x ...
2018-05-22 18:05:38
3056
2
原创 JVM各个垃圾收集器区别
默认收集器jdk1.7Parallel Scavenge(新生代)+Parallel Old(老年代)jdk1.8Parallel Scavenge(新生代)+Parallel Old(老年代)jdk1.9G1虚拟机启动检测主机是否为服务器,如果是,则以Server模式启动,否则以client模式启动,检测的根据是至少2个CPU和最低2GB内存。所有垃圾回收器的特点Serial1、新生代收集器,可...
2018-03-15 19:56:53
2365
转载 在Centos6.8上安装Oracle11g
1.主机名确认无误vi /etc/hostsIP hostname(主机名)IP地址写内网IP如果交换空间不够:dd if=/dev/zero of=/test bs=1G count=4mkswap -f /testswapon /testfree -m2.下载安装相关依赖安装包yum install -y binutils \compat-libcap1 \compat-libstdc++-3...
2018-03-07 23:41:37
597
转载 dubbo产生和原理
dubbo产生关于dubbo的使用场景,这个要从系统的演变开始将起,既然dubbo的使用很多是在电商系统中,那么就从电商系统的演变开始讲起。 一个简单的电商网站说起,它可能包含如下的几个模块和功能,如首页、detail页、list页、下单页、支付页以及后台管理等页面和功能。单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加使得维护起来越来越难以维护。 于是就...
2018-03-07 23:14:43
487
原创 三种方法求解NQueen问题
1.暴力解法 # coding:utf-8import timedef permutation(arr): if len(arr) == 0 or len(arr) == 1: return [arr] result = [] for i in arr: temp_list = arr[:] temp_list.rem...
2018-03-07 22:39:22
478
原创 使用Python实现RSA加密算法及详解RSA算法
代码已经放上github : https://github.com/chroje/RSA一、非对称加密算法1、乙方生成两把密钥(公钥和私钥)。公钥是公开的,任何人都可以获得,私钥则是保密的。2、甲方获取乙方的公钥,然后用它对信息加密。3、乙方得到加密后的信息,用私钥解密。二、RSA算法1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法...
2018-03-07 21:35:23
62717
14
转载 简单介绍一致性哈希算法
原文来自点击打开链接介绍一致性哈希算法是分布式系统中常用的算法。比如,一个分布式的存储系统,要将数据存储到具体的节点上,如果采用普通的hash方法,将数据映射到具体的节点上,如key%N,key是数据的key,N是机器节点数,如果有一个机器加入或退出这个集群,则所有的数据映射都无效了,如果是持久化存储则要做数据迁移,如果是分布式缓存,则其他缓存就失效了。一致性哈希算法就是为了解决这样的问题。算法的...
2018-02-19 00:20:10
507
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人