E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
YYModel源码解读
spark sql 2.3
源码解读
- whole stage codegen (8)
wholestagecodegen是spark2.0以后引入的新特性,所以在最后单独把这一块拿出来讲一下。相关背景可以看spark官方的jira:https://issues.apache.org/jira/browse/SPARK-12795awholestagecodegen对性能有很大的提升。如下图所示,将一棵树翻译成了一段代码执行,性能肯定会大幅提升。codegen的更多原理以及测试结果:
sddyljsx
·
2020-08-03 04:02
Spark
Spark
Sql
2.3源码解读
spark sql 2.3
源码解读
- antlr4 && SparkSqlParser (2.3)
接着上一节,继续讲。还是以SELECTA.BFROMA为例。屏幕快照2018-08-12下午5.00.15查看AstBuilder逻辑,遍历访问,最终会访问到querySpecification节点:overridedefvisitQuerySpecification(ctx:QuerySpecificationContext):LogicalPlan=withOrigin(ctx){valfro
sddyljsx
·
2020-08-03 04:02
spark sql 2.3
源码解读
- Preparations (6)
上一章生成的PhysicalPlan还需要经过prepareForExecution这一步,做执行前的一些准备工作,代码如下:/executedPlanshouldnotbeusedtoinitializeanySparkPlan.Itshouldbe//onlyusedforexecution.lazyvalexecutedPlan:SparkPlan=prepareForExecution(s
sddyljsx
·
2020-08-03 04:02
spark sql 2.3
源码解读
- whole stage codegen (8)
wholestagecodegen是spark2.0以后引入的新特性,所以在最后单独把这一块拿出来讲一下。相关背景可以看spark官方的jira:https://issues.apache.org/jira/browse/SPARK-12795awholestagecodegen对性能有很大的提升。如下图所示,将一棵树翻译成了一段代码执行,性能肯定会大幅提升。whole-stage-code-ge
sddyljsx
·
2020-08-03 04:02
spark sql 2.3
源码解读
- Preparations (6)
上一章生成的PhysicalPlan还需要经过prepareForExecution这一步,做执行前的一些准备工作,代码如下:/executedPlanshouldnotbeusedtoinitializeanySparkPlan.Itshouldbe//onlyusedforexecution.lazyvalexecutedPlan:SparkPlan=prepareForExecution(s
sddyljsx
·
2020-08-03 04:02
Spark
Spark
Sql
2.3源码解读
spark sql 2.3
源码解读
- Execute (7)
终于到了最后一步执行了:/**InternalversionoftheRDD.Avoidscopiesandhasnoschema*/lazyvaltoRdd:RDD[InternalRow]=executedPlan.execute()finaldefexecute():RDD[InternalRow]=executeQuery{if(isCanonicalizedPlan){thrownewI
sddyljsx
·
2020-08-03 04:02
spark sql 2.3
源码解读
- antlr4 && SparkSqlParser (2.2)
接着上一节,我们看一下antlr4。antlr可以根据输入自动生成语法树并可视化的显示出来的开源语法分析器。ANTLR—AnotherToolforLanguageRecognition,其前身是PCCTS,它为包括Java,C++,C#在内的语言提供了一个通过语法描述来自动构造自定义语言的识别器(recognizer),编译器(parser)和解释器(translator)的框架。参考此文:ht
sddyljsx
·
2020-08-03 04:01
Spark
Spark
Sql
2.3源码解读
spark sql 2.3
源码解读
- Planner (5)
Optimizer得到的是最终的LogicalPlan,Planner将LogicalPlan转化为PhysicalPlan。planner执行plan方法得到SparkPlan:lazyvalsparkPlan:SparkPlan={SparkSession.setActiveSession(sparkSession)//TODO:Weusenext(),i.e.takethefirstplan
sddyljsx
·
2020-08-03 04:31
Spark
Spark
Sql
2.3源码解读
spark sql 2.3
源码解读
- Analyzer (3.1)
本章将介绍analyzer结合catalog进行绑定,生成ResolvedLogicalPlan.上一步得到的UnresolvedLogicalPlan将会执行:lazyvalanalyzed:LogicalPlan={SparkSession.setActiveSession(sparkSession)sparkSession.sessionState.analyzer.executeAndCh
sddyljsx
·
2020-08-03 04:31
Spark
Spark
Sql
2.3源码解读
spark sql 2.3
源码解读
- antlr4 && SparkSqlParser (2.1)
接着上一篇文章,本章将介绍第1步:sql语句经过SqlParser解析成UnresolvedLogicalPlan当我们执行:valsqlDF=spark.sql("SELECTnameFROMpeopleorderbyname")看一下sql函数:defsql(sqlText:String):DataFrame={Dataset.ofRows(self,sessionState.sqlParse
sddyljsx
·
2020-08-03 04:31
spark sql 2.3
源码解读
- Planner (5)
Optimizer得到的是最终的LogicalPlan,Planner将LogicalPlan转化为PhysicalPlan。planner执行plan方法:lazyvalsparkPlan:SparkPlan={SparkSession.setActiveSession(sparkSession)//TODO:Weusenext(),i.e.takethefirstplanreturnedbyt
sddyljsx
·
2020-08-03 04:31
Android handler 消息机制
源码解读
用过okhttp网络请求框架的人都知道,okhttp的callback接口不在主线程。因此要想在callback中进行UI上更新需要切换到主线程,可以handler.post(runable),那么,handler是怎么直接就切换到主线程的呢?handler是怎么处理线程之间的消息传递呢?本文主要解决的几个问题handler是怎样传递消息的?handler.post(runable)方法是怎么直接
幸运之旅
·
2020-08-03 03:44
android
多线程之Condition的简介及原理解析(九)
然后通过
源码解读
,看具体实现并使用Condition实现生产者和消费者模式。文章目录Con
程序猿小亮
·
2020-08-03 01:14
JAVA多线程技术
java集合
源码解读
---Queu和Stack的数组和链式实现
栈和队列所谓的栈,是一个含有至少两个基本操作的抽象数据类型:插入新的元素;删除最近时间插入的元素。遵循FILO(Firstin,lastout,先进后出)的原则。所谓的队列,也是一个含有至少两个基本操作的抽象数据类型:插入新的元素;删除最久时间插入的元素。遵循FIFO(Firstin,firstout,先进先出)的原则。关于栈和队列的具体实现,我们即可以借助于数组,也可以采用链表来实现。1)栈的数
hungry_bug
·
2020-08-03 00:10
数据结构
金山卫士界面
源码解读
及界面库分离(5)
其实开始没有想过要写这么多篇文章介绍的,因为看到CSDN的朋友如此碰场,所以对KUI的热情并没有减少,因此不知不觉就写到了第五篇了.本篇开始介绍比较复杂的界面应用了.界面应用介绍完成后,估计要开始整理系统的应用文档资料了.也不知道自己能坚持到啥时候,呵呵.KUI高级界面这一篇有些内容是根据网友的反馈来添加的。主要讲解几个功能较为复杂的控件的使用。不过提请同学们注意的是这里介绍的大部分是实际窗口,而
b2b160
·
2020-08-02 23:27
界面
C++
React 16.7 Fiber
源码解读
(二)之运行流程
前言之前我们了解了Fiber的数据结构React16.7Fiber
源码解读
(一)之数据结构接下来主要探讨fiber运行的流程。
辰辰沉沉大辰沉
·
2020-08-02 22:47
前端架构
Flink学习18---window和Time(一)window全面解析
通过本文,你可以了解到:窗口的基本概念和简单使用内置WindowAssigners的分类、源码及使用WindowFunction的分类及使用窗口的组成部分及生命周期
源码解读
完整的窗口使用Dem
zhuzuwei
·
2020-08-02 21:28
Flink
flink
window
spark sql 2.3
源码解读
- 架构概览 (1)
sparksql的前身是shark,类似于hive,用户可以基于spark引擎使用sql语句对数据进行分析,而不用去编写程序代码。上图很好的展示了sparksql的功能,提供了jdbc,console,编程接口三种方式来操作RDD(ResilientDistributedDatasets),用户只需要编写sql即可,不需要编写程序代码。sparksql的运行流程如下:大概有6步:sql语句经过Sq
sddyljsx
·
2020-08-02 20:33
Spark
Spark
Sql
2.3源码解读
FSAF 模型
源码解读
(tensorflow+keras )
FSAF核心思想FSAF全名:FeatureSelectiveAnchor-FreeModuleforSingle-ShotObjectDetection。FSAF模型创新点在于无锚框特征选择模块(FSAF),设计了无锚框分支网络,训练过程使得模型能在金字塔特征层中选择合适的特征层,进行回归与分类,而现有模型大多基于featruemapsize大小设定anchor大小,然后进行回归于分类。FSAF
Joweay
·
2020-08-02 16:06
Deep
learning
目标检测
SRT协议控制包处理
源码解读
SRT协议控制包处理
源码解读
SRT协议控制包处理
源码解读
ACK包1.如果ACK包长度为SEND_LITE_ACK(4)2.普通ACK包ACKACK包LOSSREPORT包CGWARNING包KEEPALIVE
无聊星期三
·
2020-08-02 15:36
流媒体
pytorch中残差网络resnet的
源码解读
pytorch的resnet模块在torchvision的models中。里面可以选择的resnet类型有:_all_列表的每一个resnet都提供了实现的函数:defresnet18(pretrained=False,progress=True,**kwargs):"""ConstructsaResNet-18model.Args:pretrained(bool):IfTrue,returnsa
ZJE_ANDY
·
2020-08-02 14:38
#
pytorch源码解读
Seata 分布式事务
本文首发于个人微信公众号《andyqian》,期待你的关注~前言上一篇文章《Seata之rm-datasource
源码解读
》发出后。有很多同学对Seata是什么还不够了解,今天我们就起来认识一下它。
鞠骞的博客
·
2020-08-02 14:11
Java开发
vue
源码解读
(三、响应式原理)
简介Vue的数据驱动除了数据渲染DOM之外,还有一个很重要的体现就是数据的变更会触发DOM的变化。考虑一个简单示例:{{message}}varapp=newVue({el:'#app',data:{message:'HelloVue!'},methods:{changeMsg(){this.message='HelloWorld!'}}})当我们点击修改message的时候,数据是怎样渲染成新的
点了个汤
·
2020-08-01 13:25
AbstractQueuedSynchronizer和ReentrantLock
源码解读
前言最近在学习java多线程的相关知识,把相关的源码大概过了一下,看完了虽然好像觉得没什么卵用,但是面试问得多,加上最近打算开始写写博客,所以还是打算记录一下,同时也总结一下学过的这些东西。能力不足水平有限,以下内容不一定完全正确。概述AbstractQueuedSynchronizer是java.util.concurrent包下的大部分类实现的基础,如ReentrantLock,ReadWri
peiwj
·
2020-08-01 12:48
spring
源码解读
(二)spring容器如何加载xml配置文件到容器中
上一篇介绍了如何下载spring源码,编译,及修改源码+注解的使用spring容器的基本使用及xml配置属性的说明;这篇文章来介绍下spring容器时如何加载解析xml配置到spring容器中的首先从测试代码中看到packagecom.wsj.spring;importcom.wsj.spring.bean.LookUpSayHello;importorg.springframework.cont
笨笨的小吴
·
2020-08-01 11:12
spring
spring
源码解读
(一)如何下载编译spring源码并如何调试中添加注解
spring源码导入1、可直接从git上下载:https://github.com/spring-projects/spring-framework.git2、安装配置gradlegradle下载地址:https://gradle.org/releases/gradle要JDK8的版本我下载的时5.5的版本下载好gradle后配置gradle环境变量创建GRADLE_HOME,配置解压过的grad
笨笨的小吴
·
2020-08-01 11:12
spring
机器学习:SVC实战+
源码解读
(支持向量机用于分类)
这部分只是对支持向量机sklearn库函数调用,参数解释,以及各个参数对测试结果的影响分析。个人认为入门机器学习实战的最快实例。一.线性分类SVM调用sklearn包中的LinearSVC下面是调用的初始值:def__init__(self,penalty='l2',loss='squared_hinge',dual=True,tol=1e-4,C=1.0,multi_class='ovr',fi
颠沛的小丸子
·
2020-08-01 10:53
机器学习
SDWebImage
源码解读
我今天又来读SDWebImage了。前几天读了MBProgressHUD,SDWebImage比MBProgressHUD要难,慢慢来吧。UIImageView+WebCache先用起来写个demo-(void)viewDidLoad{[superviewDidLoad];NSString*urlStr=@"http://upload-images.jianshu.io/upload_images
charlotte2018
·
2020-08-01 10:48
[原]PHP-yar拓展
源码解读
五-server篇
Server模块提供了一个基于Http的Yar协议的Server实现。常见的使用方法如下//随手写的demo.phpfunctionserviceAction(){$service=newYar_Server(newOrderServer());$service->handle();}在你所用的框架的action下执行以上代码,并为Ycf-Client提供能通过具体路由访问到以上代码的url,Or
bromine
·
2020-08-01 09:31
以太坊
源码解读
BlockChain的初始化
一、前言ETHereum服务初始化的时候会调用core.SetupGenesisBlock来加载创始区块,然后调用core.NewBlockChain来加载BlockChain模块,这章节主要介绍BlockChain的NewBlockChain函数,BlockChain是以太坊的全节点模式下[区块链链式管理的模块,主要负责区块链的追加、回滚、分叉处理等,另外还为前端提供区块信息查询等功能。二、Bl
李_MAX
·
2020-08-01 09:30
7.0
源码解读
——事件分发机制
本篇文章,只是个人笔记,并非教材,加上本人能力有限,希望阅读到的朋友还自己去阅读源码。站在牛人的肩上再次查看源码,让我省了不少力气,当然高版的源码还是与低版本的源码还是有差异,代码编写也更加巧妙,即使站在牛人的肩膀上,也着实费了一些劲。在此先感谢鸿洋的ViewGroup事件分发机制文章让我省了好多力气。看源码时一定要带着问题去看,否则源码太多,你会迷失,带着问题不忘初心那么即使迷失了,思维也能拉回
wenld_
·
2020-08-01 07:39
Spark存储体系底层架构剖析-Spark商业环境实战
本套系列博客从真实商业环境抽取案例进行总结和分享,并给出Spark
源码解读
及商业实战指导,请持续关注本套博客。版权声明:本套Spark
源码解读
及商业实战归作者(秦凯新)所有,禁止转载,欢迎学习。
weixin_34015566
·
2020-08-01 04:07
lodash
源码解读
_.compact(array)
合并字符串成数组,并剔除boolean类型,undefined,null,但是没有处理object类型的,会将object合并到数组里面_.compact([0,1,false,2,'',3,undefined,4,null,5]);//=>[1,2,3,4,5]functioncompact(array){letresIndex=0constresult=[]if(array==null){re
weixin_30457065
·
2020-08-01 03:43
Zookeeper
源码解读
Zookeeper
源码解读
(一)高可用保障.选举相信有几年工作经验的技术人员都有自己的知识库,遇到问题首先大脑会快速索引一下去自己的知识库找解决方案,再次去官网或gg。
echo029
·
2020-08-01 02:00
源码分析
HashMap
源码解读
(jdk1.8)
文章目录JDK1.8的HashMap数据结构构造方法put()方法扰动函数hash()putVal()索引下标index初始容量是16,为什么是2的指数次幂?加载因子为什么是0.75f?resize()get()方法HashMapjdk1.8比1.7的优化jdk1.8在解决哈希冲突时有了较大的变化,当链表长度大于阈值(默认为8)时,将链表转化为红黑树,以减少搜索时间。JDK1.8的HashMap数
Orcas阿晨
·
2020-08-01 01:23
Java
Flink
源码解读
系列1——分析一个简单Flink程序的执行过程
在Flink中,实现从指定主机名和端口接收字符串消息,对接收到的字符串中出现的各个单词,每隔1秒钟就输出最近5秒内出现的各个单词的统计次数。代码如下:publicclassSocketWindowWordCount{publicstaticvoidmain(String[]args)throwsException{/**需要连接的主机名和端口*/finalStringhostname;finali
super_man_0820
·
2020-08-01 00:31
Flink
Flink
源码解读
HashMap底层源码解析
目录一、分析HashMap的数据结构1.使用数组存储,加快访问速度2.数组中的链表,解决hash冲突3.使用红黑树优化链表,防止大量hash冲突二、HashMap主要
源码解读
三、总结一、分析HashMap
Iris的小尾巴
·
2020-07-31 22:11
集合
Java
Spark存储机制源码剖析
一、Shuffle结果的写入和读取通过之前的文章Spark
源码解读
之Shuffle原理剖析与源码分析我们知道,一个Shuffle操作被DAGScheduler划分为两个stage,第一个stage是ShuffleMapTask
不清不慎
·
2020-07-31 22:06
Spark
Spark源码剖析与调优
easycwmp解读(1.2.1)-easycwmp脚本模块分析-easycwmp.sh
脚本是整个脚本模块的入口,easycwmp.sh主要功能如下是对入参的处理,根据不同的入参选择相关的操作方法.对uci操作进行封装定义脚本存放目录定义模块运行过程中的缓存文件,日志文件模块运行过程中的全局变量
源码解读
大五千
·
2020-07-31 17:30
easycwmpd-解读
PostgreSQL
源码解读
(79)- 查询语句#64(create_plan函数#3-SeqScan&IndexScan)
本节介绍了创建计划create_plan函数中扫描计划的实现过程,主要的逻辑在函数create_scan_plan中实现。一、数据结构Plan所有计划节点通过将Plan结构作为第一个字段从Plan结构“派生”。这确保了在将节点转换为计划节点时,一切都能正常工作。(在执行器中以通用方式传递时,节点指针经常被转换为Plan*)/*----------------*Plannode**Allplanno
EthanHe
·
2020-07-31 16:40
YYModel
源码分析(一)
本文章所使用的
YYModel
源码基于0.9.8版本。
fire_fire
·
2020-07-31 15:53
AFNetworking 3.0
源码解读
(八)之 AFImageDownloader
AFImageDownloader这个类对写DownloadManager有很大的借鉴意义。在平时的开发中,当我们使用UIImageView加载一个网络上的图片时,其原理就是把图片下载下来,然后再赋值。这也是AFImageDownloader这个类的核心功能。前言AFImageDownloader专门管理一组图片的下载任务。试想,如果有一个界面的功能是对图片进行处理,要求下载高清图片,那么这个AF
MinggeQingchun
·
2020-07-31 14:00
iOS-OC
源码解读
:Flutter异步刷新UI相关概念
本文从源码角度去阐述并记录笔者学习Flutter异步刷新UI的相关知识点,读完本篇能大体了解一下知识点:Future、Stream、StreamBuilder、Provider&MultiProvider是什么?解决了什么问题?如何用?Future和Stream是异步事件的数据资源提供者,后两者则是对异步数据进行同步处理的加工者。Future1.是什么?Future和它的名字一样,代表在未来一段时
DennisJu
·
2020-07-31 13:10
Flutter
Python爬虫第十天:数据存储MySql-Redis|Scrapy-Redis|分布式爬虫部署
内容简述:一:数据存储-MySQL|Redis二:分布式爬虫Scrapy-Redis三:分布式爬虫
源码解读
四:分布式爬虫部署一:数据存储-MySql【案例】-读书项目fromscrapy.utils.projectimportget_project_settingssettings
老孙说IT
·
2020-07-31 11:51
axios
源码解读
前言为什么会想去读源码?起因还是写小程序项目的时候,在回调里面总是写很多相同的判断,大大降低了我的码代码体验感???axios自带拦截器,等等很多有用的方法,一直听闻axios实现很巧妙,虽然网络上已经有很对大佬的解读过axios,对我来说看文章不够尽兴,只有亲自探究axios的内部实现?从入口开始下载了axios的源码gitclonehttps://github.com/axios/axios.
weixin_33919941
·
2020-07-30 20:56
YYModel
源码详细解析-2
前言阅读之前请见阅读
YYModel
源码详细解析-1,废话不多说,继续解析源码。_YYModelMeta类_YYModelMeta来描述一个YYClassInfo,完成所有的映射关系描述.
js丶
·
2020-07-30 20:01
go程序包
源码解读
——golang.org/x/net/context
强烈建议读者先完成http://blog.golang.org/pipelines的阅读,此文对于go的channel的用法会让初学者有一种豁然开朗的感觉。简介context是一个在go中时常用到的程序包,google官方开发。特别常见的一个应用场景是由一个请求衍生出的各个goroutine之间需要满足一定的约束关系,以实现一些诸如有效期,中止routine树,传递请求全局变量之类的功能。使用co
xiaohu50
·
2020-07-30 18:53
golang
源码
ConcurrentHashMap
源码解读
CHMput方法1.检查key和value不为null2.计算hash值inthash=spread(key.hashCode()); //key.hashCode()=h,(h^(h>>>16))&HASH_BITS3.自旋插入intbinCount=0;Node[]tab=table//将全局table赋值tab 4.初始化tableif(tab==null||(n=tab.length)==
x_h_xx
·
2020-07-30 18:43
源码
JDK1.8中的ConcurrentHashMap源代码分析,为什么高效
文章目录先上总结数据结构预备知识
源码解读
成员变量hash处理initTabletabAtputValhelpTransferaddCounttransfer先上总结本文是按照JDK8的源码分析.使用compareAndSwap
wzj_whut
·
2020-07-30 18:12
后端
Spring整合Mybatis的
源码解读
——@MapperScan注解与SqlSessionTemplate的线程安全实现
回顾一下Mybatis的Mapper接口实例的生成与执行流程众所周知,我们基于MyBatis操作数据库,实际上就是通过SqlSession获取一个JDBC连接调用api来操作。1、SqlSession接口。SqlSession接口有常用的实现类有:DefaultSqlSession(线程不安全)、SqlSessionTemplate(spring中线程安全类,接下来的主角)/**Thedefaul
CodeLoverLiang
·
2020-07-30 18:27
上一页
51
52
53
54
55
56
57
58
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他