自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 资源 (12)
  • 收藏
  • 关注

原创 Streamsets FAQ(七)record can not be null

1、问题描述对接mysqlbinlog,实时同步数据,pipeline运行一段时间后报错record can not be nullpipeline直接挂掉,重启无法启动,依然报错,只有重置offset后才能运行起来。2、解决方案这个错误基本上都是因为原始数据库那边的表没有主键导致的,所以需要到原始库那边检测哪些数据表没有主键,给这些表添加主键配置,或者在pipeline中将这些没有主键的数据表忽略掉即可。这里也附上MySQL查看没有主键表的SQL语句SELECT t1..

2020-08-31 09:49:28 514

原创 Streamsets FAQ(六)关于SS的8小时问题总结

1、问题描述关于SS的8小时问题之前也写了2个文章,以为问题已经得到了解决,但是发现想的太简单,再次遇到这个问题,折腾了2天,现在把这个问题梳理一下。大数据平台使用的是CDH-6.2.0版本,安装在Centos7.6 64位服务器上,服务器时区为CST时区,SS使用的是3.13.0版本。数据同步的需要首先是从各个业务系统MySQL同步到中间库MySQL上,再根据数据分析的需要,有选择性的从中间库MySQL同步到大数据平台的kudu中,MySQL版本统一为5.6的,MySQL时区和安装MySQL的服务

2020-08-31 09:47:03 1397

原创 Streamsets FAQ(五)关于SS增量同步mysql数据过程中offset值时间偏差问题

1、问题描述CDH-6.2.0,SS-3.13.0。在使用SS同步mysql数据到kudu时使用JDBC Query Consumer,因为mysql的datetime数据到kudu的timestamp后少了8小时,给JDBC Query Consumer中JDBC配置添加了额外配置项,在最后的Additional JDBC Configuration Properties中增加2个配置serverTimezone UTCuseTimezone true添加这2个配置后.

2020-08-31 09:42:17 869 2

原创 Streamsets FAQ(四)SS同步binlog到kudu时间少8小时

1、问题描述当前使用的是CDH-6.2.0和SS-3.13.0版本,在同步增量binlog数据到MySQL的时候datetime格式的字段时间会多出8小时,基于这个原因我们修改了SS里面的mysql-binlog-connector-java-0.13.0.jar源码streamsets-3.13.0中使用的mysql-binlog-connector-java是0.13.0版本,找到0.13.0的源码,https://github.com/shyiko/mysql-binlog-connec

2020-08-31 09:39:49 1132 12

原创 Streamsets FAQ(三)SS前端界面时间格式调整

1、问题描述SS的前端界面时间显示默认使用的是CST时区,和中国时区有6小时时差(少了6小时),实际时间是2020-04-07 10:20:00,显示为2020-04-07 04:20:002、解决方案进行Settings,修改Timezone为UTC即可,无需重启。...

2020-08-31 09:36:58 633 1

原创 Streamsets FAQ(二)关于SS的8小时问题

1、问题描述在使用SS进行数据同步的过程中发现有8小时差值问题,具体表现为在使用JDBC Query Consumer这样的stage入到kudu时发现数据比MySQL中数据小8小时。在使用MySQL Binary Log这样的stage解析binlog数据时数据比MySQL中数据大了8小时,针对2种情况处理方式是不一样的。2、解决方案2.1、JDBC Query Consumer在JDBC Query Consumer这个stage的JDBC配置项中往下拉,在最后的Additiona.

2020-08-31 09:35:46 541

原创 Streamsets FAQ(一)使用binglog同步MySQL数据到kudu,date数据类型在两端不一致

1、问题描述使用streamsets将mysql数据同步到kudu中,直接解析mysql的binlog进行实时数据同步,发现一个小的细节问题,mysql中定义的date类型的字段在解析binlog后变成了带有星期几标致的值,如create字段是date类型,值为2019-06-19,那么streamsets的mysqlbinlog就会将其解析成Wed Jun 19,如果在kudu这边定义的create字段是string类型的话,这个值入库的时候就会是Wed Jun 19,和原始库差别太大了。2.

2020-08-31 09:31:45 769 4

原创 Streamset(十一)实时同步SQL Server2008R2数据

1、说明安装好SQL Server2008R2,安装好streamsets-3.17.0,测试实时同步SQL Server数据。2、配置sqlserver监听mysql binlog需要先开启binlog机制,sqlserver则需要配置对数据库启用cdc,并对数据表启用cdc机制。2.1、开启SQL Server代理除了sqlserver自身服务正常启动运行外还需要启动SQL Server代理服务2.1、创建数据库CREATE DATABASE yigou;..

2020-08-30 08:50:48 1525 2

原创 Streamsets(十)通过脚本监控pipeline任务状态

1、说明安装好streamsets后直接内置了restful API的说明http://172.27.13.109:18630/collector/restapi我们是监控某一个pipeline的运行状态,所使用的api为/rest/v1/pipeline/{pipelineId}/status需要指定所查询的pipeline的Id,返回的是json格式数据。2、测试直接在操作系统上使用curl命令来测试,Authorization为账号密码进行加密后得到的字..

2020-08-29 12:44:49 1153 3

原创 Streamsets(九)启停控制脚本

1、streamsets启停控制脚本#!/bin/shif [ $# = 1 ]then if [ $1 = "help" ] then echo "control the streamsets process, eg:sh streamsets.sh start|stop|restart|status" elif [ $1 = "start" ] then pid=`ps -ef | grep streamsets | grep -v grep | grep -v /bin/ba

2020-08-29 12:42:04 803

原创 Streamsets(八)通过JavaScript Evaluator转换数据格式

1、pipeline说明在通过JDBC Query Consumer读取MySQL存量数据往kafka发送的时候记录值中字段名和字段值以map的形式传递,如下格式:{ "id": 3, "name": "rr", "address": "hefei", "age": 28, "weight": 102.0, "date_created": 1590028341000}这种格式的数据无法满足下游数据消费方的需求,需要额外加工,因此在JDBC Query Consumer后.

2020-08-29 12:40:39 1849

原创 Streamsets(七)SS读取binlog数据实时同步到kudu

1、创建pipeline创建新的pipeline binlog2kudu。2、MySQL Binary Log这块和之前配置一样,重新指定一个server id3、Field Renamer4、Kudu注意选择与自己kudu集群一致的stage librarykudu的master需要手动填写,端口默认7051,表名依然动态获取,如果是impala创建的kudu表记得加上前缀impala::default....

2020-08-29 12:38:36 628 7

原创 Streamsets(六)SS读取binlog数据实时同步到MySQL

1、说明实时同步binlog数据到MySQL我使用了2种方式,2、方式一第一种方式较为繁琐,数据从binlog流出,经过JS数据解析器将必要的字段解析出来,流入操作选择器,根据具体需要执行的增删改操作选择最后的JDBC Producer,pipeline如下:binlog数据到JS数据解析器之前是这样{ "BinLogFilename": "mysql-bin.000001", "Type": "INSERT", "Table": "test", "ServerId": 1

2020-08-29 12:36:18 1446 5

原创 Streamsets(五)SS读取binlog数据并存储到本地

1、配置MySQL binlog1.1、修改mysql配置首先查看一下当前MySQL是否开启了binlogmysql -u root -p -e "show global variables like '%log_bin%';"修改/etc/my.inf文件,在mysqld下面加上以下参数,需要注意log_bin所配置的目录是不是已经存在并且目录权限是mysql:mysql如果不是记得手动去创建目录并修改权限,否则后面mysql重启会因为找不到目录而启动失败server-i.

2020-08-29 12:31:17 1590

原创 Streamsets(四)SS配置MySQL存量数据同步到kudu

1、MySQL建表在MySQL中建表CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL D

2020-08-29 12:24:45 517

原创 Streamsets(三)SS配置MySQL数据同步到本地目录

1、配置pipeline安装好SS并配置好MySQL驱动后简单的测试从MySQL读取数据,写入到本地的文件系统(这里说的本地指的是运行SS服务的服务器)1.1、配置JDBC Query Consumer这里需要定义一个执行的SQL语句,SQL语句需要符合相关规范,包括有where条件,order by 排序规则,如下:select * from user_organ_base where date_created>'${OFFSET}' order by date_created

2020-08-29 11:47:20 556

原创 Streamsets(二)SS添加MySQL驱动包

1、创建目录因为是使用的CDH集成的SS,因此外部依赖的目录实际上并没有创建,外部依赖的存放位置从这查看到部署了SS的服务器上手动创建SDC Libraries Extra Directory配置的目录,并修改权限为sdc:sdcsudo mkdir /opt/cloudera/parcels/STREAMSETS_DATACOLLECTOR-3.13.0/streamsets-libs-extrassudo chown -R sdc:sdc /opt/cloudera/par.

2020-08-29 11:43:29 637

原创 Streamsets(一)CDH-6.2.0集成Streamsets-3.13.0

1、下载安装包根据操作系统版本下载所需安装包,需要一个parcel包、parcel文件对应的SHA文件,以及一个csd jar包https://archives.streamsets.com/index.html实际上最好是知道所想使用的streamsets是否可以很好的支持我们的CDH平台,可以从官网的https://streamsets.com/documentation/datacollector/3.13.x/help/datacollector/UserGuide/I.

2020-08-29 11:39:30 658

原创 Storm(三)Storm集群搭建

有时间再写了

2015-10-14 17:05:46 652

翻译 Storm(二)Storm基本术语

storm 中的一些概念,Topologies、Streams、Spouts、Bolts、Stream groupings、Reliability、Tasks、Workers

2015-10-14 16:22:39 1695

翻译 Storm(一)什么是Storm

什么是storm?

2015-10-14 16:00:17 1256 1

原创 Storm(六)Storm On YARN部署

storm on yarn部署

2015-10-14 11:40:46 2628

转载 Storm(五)Storm on YARN介绍

Storm On YARN优缺点以及架构

2015-10-14 11:17:10 1380

原创 Storm(七)Storm Kafka集成

集成storm与kafka

2015-10-09 14:08:30 5411 1

原创 Kafka简单测试demo

对搭建好的kafka集群【kafka_2.10-0.8.2.1】做简单的demo测试

2015-09-30 15:13:45 2968

转载 Kafka深入解析Log存储

深入解析kafka的Log存储

2015-09-30 10:36:45 713

转载 Kafka深度解析

Kafka深度解析

2015-09-29 12:58:26 843

翻译 Region Splitting 过程

HBase中region的split过程

2015-08-10 13:54:26 1114

原创 HBase Region split 策略

本文是基于hbase-0.98.6-cdh5.2.0的Region split policyHBase的region split策略。

2015-08-03 19:53:24 3273

原创 HBase meta表数据修复

目的为了弄清楚hbase:meta表中的数据(每个表的region所在的regionserver信息)是否会在集群每次重启后重新生成。过程将hbase:meta表中数据全部删除后重启集群,结果发现只有hbase:namespace的信息会重新生成并插入到hbase:meta表中,而其他所有用户表(用户自己创建的表)的信息都没有恢复。这里又牵扯到另一个问题,如何修复hbase:meta表中的数据,用户

2015-07-31 08:45:06 5661

翻译 HDFS Balancer(翻译)

官方文档中Balancer的介绍

2015-07-29 10:09:53 1545

翻译 NameNode HA(翻译)

官方文档High Availability With QJM的翻译

2015-07-27 23:34:40 1441

原创 Hadoop-2.5.0手动编译

手动编译Hadoop-2.5.0

2015-07-24 09:15:14 672

翻译 HBase数据压缩方式的选择

HBase压缩数据压缩方式选择

2015-07-23 17:53:59 4873

原创 配置Snappy压缩

1. 功能说明使用snappy压缩来提升mapreduce和hbase的性能。其实就是用CPU换IO吞吐量和磁盘空间。配置并使用snappy有如下几点要求: 首先需要hadoop集群的native库已经收到编译好,并且添加了对snappy的支持。编译hadoop源码之前安装了snappy并且编译时指定-Drequire.snappy参数。

2015-07-23 11:50:39 15483

原创 HBase -ROOT-表和.META.表

官方文档:http://hbase.apache.org/book.html#arch.catalog

2015-07-22 15:05:32 1602

原创 HBase客户端查找数据过程

客户端查找HBase表数据过程

2015-07-22 14:39:47 2078

原创 社区版Hadoop与商用版Hadoop

社区版与商业版Hadoop比较在实际生产环境中,Hadoop的版本选择是在设计系统架构之时很重要的一个考虑因素。

2015-07-22 14:19:52 3779

原创 HBase创建表参数说明

HBase创建表参数说明

2015-07-21 17:45:36 9116

原创 HBase表预分区

HBase 预分区标签(空格分隔): Hadoop HBase在创建HBase表的时候默认一张表只有一个region,所有的put操作都会往这一个region中填充数据,当这个一个region过大时就会进行split。如果在创建HBase的时候就进行预分区则会减少当数据量猛增时由于region split带来的资源消耗。

2015-07-21 15:09:05 11827 1

iOS 全埋点技术白皮书.pdf

IOS端是埋点技术方案,可落地实施的。包括整体概述、应用启动退出、页面浏览事件、控件点击事件、用户标志、数据采集数据同步存储等等技术知识点。

2020-08-31

企业埋点体系搭建方法论及实践经验.pdf

埋点方案系统讲解,包括埋点数据的重要性,如何设计一套埋点方案,如何规范化埋点业务等等........................。

2020-08-31

构建近实时分析系统

利用Impala+Kudu构建准实时分析应用 Kudu是Cloudera开源的新型列式存储系统,Apache Hadoop生态圈的顶级项目之一,解决了传统Lamda架构处理Hadoop上快速变化数据的存储和处理技术过于复杂的问题,同时Kudu能够与Hadoop生态的其他组件比如Impala、Spark、Flume和Kafka等组件集成,大大降低了对快速变化的数据进行准实时分析的架构设计和实现的门槛。本演讲主要对Kudu的动机、背景,以及架构进行简单介绍,并通过实际的应用场景介绍Impala+Kudu的组合实现通过SQL技术对快速变化的数据实现准实时分析的能力

2018-11-15

Hadoop.权威指南(第四版)英文版

Hadoop.权威指南(第四版)英文版。

2015-08-06

淘宝技术这十年,完整最终确认版

淘宝技术这十年,完整最终确认版

2015-07-30

about云零基础学习hadoop到上手工作线路指导(编程篇)

about云零基础学习hadoop到上手工作线路指导(编程篇)

2015-07-30

基于MapFile+的HDFS+小文件存储效率问题

基于MapFile+的HDFS+小文件存储效率问题

2015-07-30

基于HTML标记用途分析的网页正文提取技术

基于HTML标记用途分析的网页正文提取技术

2015-07-30

推荐系统实践

推荐系统实践

2015-07-30

hadoop大数据平台应用案例详细分析

Hadoop大数据在实际应用中案例分析。

2015-07-30

千亿级海量数据检索

Solr中国上的《千亿级海量数据检索》对应的文档。

2015-07-30

HttpClient 4.3教程

httpclient4.3的文档资料,网上都是零零散散网页的,特意整理成PDF文档

2015-05-12

空空如也

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

TA关注的人

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