4 cjuexuan

尚未进行身份认证

爱生活,爱运动,爱思考

等级
TA的排名 2w+

csdn 博客不再更新

如题,csdn越来越坑了,以后博客单独更新在github地址为:我的新博客地址

2017-05-17 09:50:47

sparkSQL元数据缓存踩的坑

sparkmetadatacache背景最近一直忙着搞apm,也没时间写博客,眼看5月已经过半了,赶紧写一篇压压惊,先描述下背景:我们将sparkSession封装在actor中,每个actor都有自己独占的sparkSession,有些sql是保存数据到hive和hdfs上,但由于是一个多线程模型,如果不加任何干预的情况下,actor1跑出来的数据通过actor2读的时候会抛出以下异常:It

2017-05-16 11:01:53

spark Metrics System hack

sparkMetricsSystemhack最近主要在搞spark的监控系统,由于spark的metricSystem默认固定依赖了配置文件metrics.properties,所以开始用户一定要提供这个配置文件,这一点还是很恶心的,文件越多越容易出错,这点毋庸置疑,所以这次hack的初衷就是初始化的时候由我们自己的类指定,而非用文件的方式进行交互MetricsConfig全类名org.apa

2017-04-05 17:05:46

监控系统模型设计理念

监控系统思路由于我司主要应用都是java,所以这一块的监控主要是对java程序的监控,我们设计的理念是对于用户metric的采集尽量的轻量级,这也是我们没有采用写固定目录,然后用flume传输的一个原因,我们的思路是将channel内嵌在代码里,因为如果依赖外部channel,那么部署上变得麻烦了很多,现有的所有接入监控系统的机器都需要安装agent,由于接入我们现在全部的大数据任务,整个流量还是比

2017-04-04 11:16:32

spark项目中common pool的简单使用

spark项目中commonpool的简单使用背景:sparkstreaming中计算的结果需要落盘到es,一个batch中的数据还会按照类型不同存储到不同的index中现有框架:elastic-hadoop这个项目在处理单一index的场景下还是比较容易上手的,但这个项目有两个不足,第一个是数据还要再次group后放到不同的index,另一个问题是这个项目用的是9200这个http端口改造

2017-03-27 09:11:46

spark sql在喜马拉雅的使用之xql

sparksql在喜马拉雅的使用之xql什么是xql在大数据领域,发展到今天hive依然是一个非常有意义的项目,因为它把工程师都懂的sql直接用到了大数据领域,但是它也存在一些问题,比如运行速度慢这个是最明显的,大数据领域中的先驱者们都为之做了各种优化,和hive集成的项目还是非常多的。spark作为目前一站式的数据处理框架,在etl,数据分析与统计,流式处理,机器学习中都展现了很强的竞争力,

2017-03-24 10:32:22

java8时间api和mysql集成的坑

java8时间api和mysql集成的坑代码Timestamp.valueOf(LocalDateTime.now)现象是时间相差14个小时,想了下,相差14个小时应该是芝加哥时间跟踪jdk源码,ZoneId/***Amapofzoneoverridestoenabletheshorttime-zonenamestobeused.*<

2017-02-17 20:17:20

ip和int互转的scala版本

ip和int互转的scala版本有个群友问scala版本,刚好自己简单实现了个,发一下代码代码:importjava.net.InetAddress/***@authortodd.chenat16/01/201710:50.*email:todd.chen@ximalaya.com*/objectNetworkUtil{/**

2017-02-07 16:55:31

大数据监控系统相关设计开发

spoor-metricsspoor-metrics是一个监控系统的收集模块,主要用于采集现有大数据基础组件的metric信息,并且进行展示白名单白名单配置文件主要用于过滤和解析metricssystem产生的信息,并且进行压缩,常见的一份配置如下filesystem.file.largeRead_ops=fileLargeReadOps,Gaugefilesystem.file.read_b

2017-01-24 16:29:38

gitlab和jenkins项目管理技巧

gitlab和jenkins项目管理技巧gitlab现在是我们基本的版本管理工具,使用过程中其实有很多的小技巧,本文主要介绍了gitlab的项目管理中的一些小点,主要包括issue、commit信息,以及二者的关联,同时简单介绍了jenkins中进行ci和配置任务依赖关系issueissue是项目管理中的重点,主要包括以下功能:用于登记bug与需求可以按照issue类型不同打上不同的tag每

2017-01-16 14:03:25

spark 源码学习之job cancel 与job desc

spark源码学习之jobcancel与jobdescspark页面中的kill按钮在跑一些大的任务想去cancel任务的时候还是蛮有用的,最近我的项目中想集成这部分功能,就去阅读了下相关源码,下面记录下spark的stagecancel和jobcancel以及如何命名job的源码阅读部分spark源码学习之jobcancel与jobdesc页面sparkContextD

2016-12-13 21:30:34

spark 源码学习之打印线程堆栈

spark页面中有个打印executor的堆栈的,很好用,最近自己的web项目也想把堆栈用servelt的方式去展现出来,于是跟了下spark源码SparkContext中:/***CalledbythewebUItoobtainexecutorthreaddumps.Thismethodmaybeexpensive.*Logsanerror

2016-12-12 21:09:21

spark 2.0 踩过的SparkSession的坑

spark2.0踩过的SparkSession的坑spark20踩过的SparkSession的坑背景抽象的运行代码初步定位问题进一步定位问题源码相关分析再看SparkSession的创建最终解决取代了SQLContext(HiveContext)的SparkSession背景我的服务端的逻辑是在actor内部进行的,但发现多个actor中执行的过程中,访问到了其他actor

2016-11-17 21:02:31

akka集成spark过程中踩的几个小坑

多线程的一个坑error:ERROR(com.ximalaya.xqlserver.xql.engine.adapter.BatchSqlRunnerEngine:74)-executorresultthrowjava.lang.IllegalArgumentException:spark.sql.execution.idisalreadyset后面根据这个error找到了

2016-10-31 09:32:46

scala中trait的线性化推导公式

scala中trait的线性化推导公式需求classA{defm(s:String)=println(s"A($s)")}traitBextendsA{overridedefm(s:String)=super.m(s"B($s)")}traitCextendsA{overridedefm(s:String)=super.m(s"C($s)

2016-09-25 13:55:38

scala的sliding window的多种实现和benchMark

需求下午闲的写了点小代码来实现实现一个slidingwindow效果的,并最终去平铺这些元素[314159][3,1][1,4][4,1][1,5][5,9][3,1,1,4,4,1,1,5,5,9]思路直接用initziptail,然后flatMap或者foldLeft用java的方法通过index实现代码importjava.time.{Duration,

2016-09-23 16:20:53

spark mysql 行级别控制

spark的savemodespark的saveMode在org.apache.spark.sql.SaveMode下,是一个枚举类,支持Append(在mysql中为append)Overwrite(在mysql中为先删除表,再整体将新的df存进去)ErrorIfExists(存在表则报错)Ignore(存在表则不执行任何动作的退出)而实际业务开发中,我们可能更希望一些行级别的动作

2016-08-27 10:28:35

spark sql读取json

sparksql读取json的问题sparksql虽然支持了json作为数据源,但由于json是松散的数据结构,而sql需要确定的数据结构,所以sparksql在读取json的时候会将整个json完整遍历得到一个最大的schema,这在数据量很小的时候貌似没啥问题,可一旦数据量过大,那么在选择一些limit的时候会失效,所以我们需要在用sparksql读取json的时候提供一份schema配

2016-07-31 13:36:52

spark sql thrift server搭建及踩过的坑

如何配置配置hadoop和yarn配置HADOOP_CONF_DIRcopyhive-site.xml到spark_home/conf在spark_env.sh中配置mysql的路径如何启动./start-thriftserver.sh\–nameolap.thriftserver\–masteryarn-client\–queuebi\–confspa

2016-07-23 21:02:05

大数据平台监控指标整理

hadoopmetrics2监控的内容:1.yarn2.jvm3.rpc4.rpcdetailed5.metricssystem6.mapred7.dfs8.ugi已经提供的:Source:org.apache.hadoop.metrics2.source.JvmMertics和org.apache.hadoop.metrics2.source

2016-07-05 20:38:54

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取