自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 Spark源码阅读(一): ShuffleWriter解析

Spark的Shuffle过程比较复杂,对于源码也是看过多次记不住。简单整理一下,不会太深入每个源码的细节。大概梳理shuffle的过程,持续优化内容。以join为例:val rdd = rdd1.join(rdd2)// 以下是join方法def join[W](other: RDD[(K, W)]): RDD[(K, (V, W))] = self.withScope { join(other, defaultPartitioner(self, other))}// defau

2021-04-10 19:18:13 383

原创 SparkStreaming消费Kafka消息的简单示例

Kafka是基于发布/订阅的消息系统,是一个分布式流平台。支持多个生产者和多个消费者,作为消息中间件,Kafka解耦了生产者和消费者,彼此透明,不需要在他们之间建立任何直接的连接,数据从生产者流入Kafka再从Kafka流入消费者。Spark Streaming是Spark核心API的一个扩展,提供高性能高容错性的流数据处理能力。支持包括Kafka,Flume,HDFS/S3,Kinesis,Tw...

2018-05-13 22:25:05 15908 1

原创 Scala使用MurmurHash3实现简单的BloomFilter

布隆过滤器用于检测某个值是否已经存在,应用场景很广泛,比如在Hbase中可以在ROW(行级)或ROWCOL(行+列)两个级别配置是否开启布隆过滤器。其作用是反向检测某个数据是否存在于某个数据块,检测结果确定为不存在或不确定。只有对不存在的判断是确切的,因为BloomFilter对存在的判断具有一定的误判率。BloomFilter将待处理的数据经过N个hash函数映射到一个Bit数组的N个值,has

2017-09-20 00:13:01 2963

原创 Scala函数

Scala是一门函数式语言,函数在Scala里属于First-Class Value,意味着在Scala中函数可以像其它值一样用作参数或者返回值,也可以赋值给变量或存储在某些存储结构中。Scala对于函数有很多特性能能够使代码更加简洁,复用性更高。函数定义def functionName(paramName : paramType) : returnType = {     

2017-09-14 21:50:23 285

原创 Scala基本语法学习

对于Scala的介绍引用《Scala in Action》中的描述:Scala is a general-purpose programming language designed to express common pro-gramming patterns in a concise, elegant, and type-safe way. It smoothly integrates fe

2017-09-12 23:02:51 596 1

原创 Scala结合HttpClient实现简单的爬虫

Scala是一种“面向对象的函数式”语言。对于不熟悉函数式编程风格的人来说适应Scala确实需要一段时间。也只有多看多写了吧。以下是用Scala结合HttpClient实现的一个简单的爬虫小程序。package com.eric.crawlerimport java.io.{BufferedReader, InputStream, InputStreamReader}import co

2017-09-11 22:06:29 2796 1

原创 Solr(三)——单机部署SolrCloud

在Solr(一)——初识Solr中介绍了SolrCloud的结构。单机部署SolrCloud的只能通过不同的port来区分不通的Solr Node,在生产环境中一般不同的Solr Node是部署在不同的物理机器上的。接下来将利用bin/solr中提供的scripts在单机快速构建solrCloud。执行bin/solr_e cloud命令,根据交互提示快速构建单机SolrCloud服务。h

2017-09-03 20:14:05 2041 1

原创 Solr(二)——Solr单机部署

(1)安装JDK和配置相关环境变量(2)下载Solr:http://www.apache.org/dyn/closer.lua/lucene/solr/6.6.0(3)移动Solr二进制分发包到安装目录下并解压,比如将solr安装在/opt目录下tar -zxvf solr-6.6.0.tgz(4)修改solr目录到所有者为指定的用户组和用户,不建议以root权限运行solrcho

2017-09-02 23:51:28 1639

原创 Solr(一)——初识Solr

Solr是一个高可用,易扩展,读写容错的分布式搜索框架,提供分布式索引。具有这些特点的其实是SolrCloud,SolrCloud结合Zookeeper实现了集中式配置管理,Leader选举。网址为:http://lucene.apache.org/solr/。下面从SolrCloud到逻辑结构和物理结构认识SolrCloud的整体架构。Solr逻辑结构从逻辑结构看Solr

2017-09-02 01:01:00 473

原创 Oracle学习笔记(四)——Primary Key&Unique约束

Primary Keyprimary key主键唯一表示一条记录,主键所包含的列(单个或多个)不能有重复值,所包含的列也不能为null。创建测试所有的表test_constraint_tabcreate table test_constraint_tab as select * from dba_objects;查看test_constraint_tab的索引信息和约束信息

2017-07-18 22:07:17 818

原创 Oracle学习笔记(三)——Hash连接

哈希链接在上一篇学习笔记二中对Nested Loop Join进行了讨论,通过多次测试得出了嵌套循环链接具有以下特点:嵌套循环有驱动表和被驱动表的概念,驱动顺序不同执行计划差异非常大驱动表只被访问一次,被驱动表被访问多次。嵌套循环访问表的次数直接受驱动表的返回记录数的影响。因此应当让实际返回记录数(A-Rows)小的表作为驱动表,返回记录数大的表作为被驱动表。嵌套循环链接是没有排序

2017-06-27 23:56:41 757

原创 Oracle学习笔记(二)——嵌套循环连接

连接方式Oracle的表连接方式有以下三种:嵌套循环链接(Nested Loops Join)哈希链接(Hash Join)排序合并(Merge Sort Join)连接涉及到两个表A和B,通俗的讲嵌套循环链接相当于遍历A中的每一条记录(满足A表条件),然后再在B表中遍历记录直至找到匹配的记录,等同于两层循环。而哈希链接和排序合并,可以看作是先各自处理自身的记录(排序或ha

2017-06-19 21:42:34 7610

原创 Java笔记(一)——泛型

泛型类泛型类是具有一个或多个类型变量的类。从字面上可以看出泛型类是具有类型参数的类,使得同一个类型或方法可以被很多不同的类型所复用。下面是使用Mybatis作为ORM框架时自定义的一个BaseDAO类。实体类类型非常多不可能为每一个实体类单独写数据库相关操作,为了复用给BaseDAO加上了参数类型T,使其可以适用所有实体类型。import java.util.ArrayList;im

2017-06-14 23:26:23 247

原创 Oracle学习笔记(一)——B-Tree索引

目录是索引的一个最好的例子,每条目录包含对应章节的标题和页码,类比索引的每条索引项包含了数据记录的某些键值组合并包含了对应数据块的访问路径(rowid)。目录的存在就是为了快速定位到感兴趣的内容,索引的存在也是问了加快对表数据的随机访问。        常常被提及的索引可能有单键索引、组合索引、唯一索引、B-Tree索引、位图索引、函数索引、全局索引、局部索引等等。这里只是列举出镜率较高的索引

2017-06-10 19:31:03 3281

原创 浅谈null

在编码过程中相信很多人都曾经被null困扰,在整洁代码之道中建议函数不要返回null也不要传入null作为参数。null代表一种不确定性等同于你需要特定的分支if来进行处理。很多代码充斥着if(null == xxObj) 或if(null != xxObj)着实让人生厌。google开源工具包Guava通过Optional来处理null。Optional认为对象只存在absent和present

2017-06-04 18:56:12 374

空空如也

空空如也

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

TA关注的人

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