- 博客(20)
- 收藏
- 关注
转载 记一次Sqoop抽数据异常
1. 环境Hadoop SqoopawsEMR2.8.51.4.75.26.02.错误描述在使用Sqoop抽取MySQL数据时,使用hdfs作为缓存,s3作为hive的存储地址,命令如下。sqoop import "-Dorg.apache.sqoop.splitter.allow_text_splitter=tru...
2019-09-24 10:24:00
299
转载 Flink+Druid构建实时OLAP的探索
场景k12在线教育公司的业务场景中,有一些业务场景需要实时统计和分析,如分析在线上课老师数量、学生数量,实时销售额,课堂崩溃率等,需要实时反应上课的质量问题,以便于对整个公司的业务情况有大致的了解。方案对比对比了很多解决方案,如下几种,列出来供参考。方案实时入库SQL支持度Spark+CarbonData支持Spark SQL语法丰富...
2019-08-09 18:09:00
1075
转载 客户端埋点实时OLAP指标计算方案
背景产品经理想要实时查询一些指标数据,在新版本的APP上线之后,我们APP的一些质量指标,比如课堂连接掉线率,课堂内崩溃率,APP崩溃率等指标,以此来看APP升级之后上课的体验是否有所提升,上课质量是否有所提高,为下一步的APP升级做准备。客户端埋点1.0版本设计流程按照需求打点,如果想知道某一指标如进入教室成功率,点击进入教室这一动作上报数据,进入教室结果上报数据,...
2019-08-07 17:15:00
229
转载 Kafka服务不可用(宕机)问题踩坑记
背景某线上日志收集服务报警,打开域名报502错误码。 收集服务由2台netty HA服务器组成,netty服务器将客户端投递来的protobuf日志解析并发送到kafka,打开其中一个应用的日志,发现如下报错:org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s)在排除了netty服务的错...
2019-08-02 18:06:00
7164
转载 实时计算-多级订单金额,及下级人数
1 系统概述人物关系为代理模式,一级代理包含二级代理,二级代理包含三级代理。需求为实时计算每个用户的订单金额,并取出金额的TOP100。并实时计算当天下级人数。1.1 指标使用方式单用户订单列表查询:查询订单表,不限定日期。当天订单额top100:查询指标表对金额排序取前100,限定日期当天。当天下级人数:根据用户id查询级别表统计行数,限定日期为当天。...
2019-08-01 16:23:00
300
转载 Apache Druid0.15.0安装方式
Druid0.15.0概述Druid是一个用于大数据实时查询和分析的高容错、高性能开源分布式系统,旨在快速处理大规模的数据,并能够实现快速查询和分析。尤其是当发生代码部署、机器故障以及其他产品系统遇到宕机等情况时,Druid仍能够保持100%正常运行。创建Druid的最初意图主要是为了解决查询延迟问题,Druid提供了以交互方式访问数据的能力,并权衡了查询的灵活性和性能而采取了特殊的...
2019-08-01 15:31:00
212
转载 superset安装文档
1 安装python3.6yum install epel-release -yyum install https://centos7.iuscommunity.org/ius-release.rpm -y#安装Python3.6yum install python36u -y#创建python3连接符ln -s /bin/python3.6 /bi...
2019-08-01 10:21:00
118
转载 Scala的常用小技巧
1."RichString.java".stripSuffix(".java") == "RichString""http://my.url.com".stripPrefix("http://") == "my.url.com"2.Scala中,访问修饰符可以通过使用限定词强调。格式为:private[x] 或 protected[x],这里的x指代某个所属的包、类或单例对象。如...
2019-03-09 10:28:00
270
转载 Hadoop MapReduce的Shuffle过程
一、概述理解Hadoop的Shuffle过程是一个大数据工程师必须的,笔者自己将学习笔记记录下来,以便以后方便复习查看。二、MapReduce确保每个reducer的输入都是按键排序的。系统执行排序、将map输出作为输入传给reducer的过程称为Shuffle。2.1 map端map函数开始产生输出时,利用缓冲的方式写到内存并排序具体分一下几个步骤。1.map数...
2018-10-17 17:47:00
187
转载 Spark Streaming消费Kafka Direct保存offset到Redis,实现数据零丢失和exactly once
一、概述 上次写这篇文章文章的时候,Spark还是1.x,kafka还是0.8x版本,转眼间spark到了2.x,kafka也到了2.x,存储offset的方式也发生了改变,笔者根据上篇文章和网上文章,将offset存储到Redis,既保证了并发也保证了数据不丢失,经过测试,有效。二、使用场景Spark Streaming实时消费kafka数据的时候,程序停止或者Kafk...
2018-08-21 16:23:00
472
转载 Spark Streaming自定义Receiver
一 背景Spark社区为Spark Streaming提供了很多数据源接口,但是有些比较偏的数据源没有覆盖,由于公司技术栈选择,用了阿里云的MQ服务ONS,要做实时需求,要自己编写Receiver二 技术实现1.官网的例子已经比较详细,但是进入实践还需要慢慢调试,官方文档。2.实现代码,由三部分组成,receiver,inputstream,util3.receive...
2017-12-06 14:58:00
124
转载 Hive UDF函数
1.由于公司性质,需要编写一个对字段加密解密的函数。建立一个maven项目,导入jar包,跟环境的版本保持一致即可。dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version&g...
2017-12-05 15:18:00
102
转载 HBase表预分区与压缩
1.建立HBase预分区表。sql语句如下:create 'buyer_calllogs_info_ts', 'record', {SPLITS_FILE => 'hbase_calllogs_splits.txt'}或者create 't1','f1' ,SPLITS=>['10','20','30','40']分区文件格式如下:00|1...
2017-12-05 14:50:00
366
转载 Hive映射HBase表的几种方式
1.Hive内部表,语句如下CREATE TABLE ods.s01_buyer_calllogs_info_ts(key string comment "hbase rowkey",buyer_mobile string comment "手机号",contact_mobile string comment "对方手机号",call_date string co...
2017-12-05 14:34:00
388
转载 Spark源码阅读之存储体系--存储体系概述与shuffle服务
一、概述根据《深入理解Spark:核心思想与源码分析》一书,结合最新的spark源代码master分支进行源码阅读,对新版本的代码加上自己的一些理解,如有错误,希望指出。1.块管理器BlockManager的实现块管理器是Spark存储体系的核心组件,Driver Application和Executor都会创建BlockManager,源代码位置在core/org.apac...
2017-07-14 17:38:00
109
转载 Spark Streaming实时写入数据到HBase
一、概述 在实时应用之中,难免会遇到往NoSql数据如HBase中写入数据的情景。题主在工作中遇到如下情景,需要实时查询某个设备ID对应的账号ID数量。踩过的坑也挺多,举其中之一,如一开始选择使用NEO4J图数据库存储设备和账号的关系,当然也有其他的数据,最终构成一个复杂的图关系,但是这个图数据库免费版是单机安装(集群要收费),在实时写入和查询关系的时候,导致我们一台服务器内存和c...
2017-02-10 21:51:00
436
转载 基于Spark的用户行为路径分析
一、研究背景 互联网行业越来越重视自家客户的一些行为偏好了,无论是电商行业还是金融行业,基于用户行为可以做出很多东西,电商行业可以归纳出用户偏好为用户推荐商品,金融行业可以把用户行为作为反欺诈的一个点,本文主要介绍其中一个重要的功能点,基于行为日志统计用户行为路径,为运营人员提供更好的运营决策。可以实现和成熟产品如adobe analysis类似的用户行为路径分析。最终效果如图。使...
2017-01-13 22:21:00
546
转载 Spark Streaming消费Kafka Direct方式数据零丢失实现
使用场景Spark Streaming实时消费kafka数据的时候,程序停止或者Kafka节点挂掉会导致数据丢失,Spark Streaming也没有设置CheckPoint(据说比较鸡肋,虽然可以保存Direct方式的offset,但是可能会导致频繁写HDFS占用IO),所以每次出现问题的时候,重启程序,而程序的消费方式是Direct,所以在程序down掉的这段时间Kafka上的数...
2016-12-30 10:16:00
86
转载 CountDownLatch如何使用
正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。在Java并发中,countdownlatch的概念是一个常见的面试题,所以一定要确保你很好的理解了它。在这篇文章中,我将会涉及到在Java并发编 程中跟CountDownLatch相关的以下几点:目录CountDownLatch是什...
2016-03-09 10:13:00
87
转载 Spark学习笔记之SparkRDD
Spark学习笔记之SparkRDD一、 基本概念RDD(resilient distributed datasets)弹性分布式数据集。来自于两方面① 内存集合和外部存储系统② 通过转换来自于其他RDD,如map,filter等2.创建操作(creation operation):RDD的创建由SparkContext来负责。3....
2015-04-18 19:12:00
117
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人