自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Harper

LEVEL UP!

  • 博客(39)
  • 收藏
  • 关注

原创 Harper的大数据漫谈(2): 数据采集

Harper的大数据漫谈前言Harper的大数据漫谈历史文章数据采集埋点数据采集与业务处理数据采集系统的设计附录OLTP与OLAP前言这是漫谈系列的第二篇文章了, 这几天看了一些网上其他人写的关于大数据的文章, 感觉要不就是在分析大数据的产业和应用, 要不就是在具体的讲某种技术或者分析某个问题, 动辄就是大数据4v和Hadoop. 这些文章可能写的很好, 讲了很多概念, 我在当初入门的时候也看过一些, 但我个人认为对我的帮助比较有限. 因为这些文章要不就过于理论, 要不就过于具体. 因此我希望自己写的

2021-07-11 01:01:04 280

原创 Harper的大数据漫谈(1):什么是大数据

Harper的大数据漫谈前言: 关于Harper的大数据漫谈概述: 什么是大数据前言: 关于Harper的大数据漫谈回顾一下, 自2013年毕业至今已经8年了, 其中前三年在中国联通做通信, 之后五年转战互联网公司从事大数据行业. 很喜欢这个方向, 也积累了一些心得. 最近在帮组内的实习生入门, 正好把自己的思考记录下来, 或许能帮助更多的人, 于是重新捡起了技术博客, 发挥自己意识流写作的特点, 利用工作之余的碎片时间想到哪写到哪, 哈哈????由于写的都是个人的理解, 所以难免有错误, 希望大家指

2021-07-02 22:50:54 358 4

原创 Hive 通过关闭CBO (Cost based Optimizer) 来优化特定的SQL执行

Hive 自0.14.0开始,加入了一项”Cost based Optimizer”来对HQL执行计划进行优化,这个功能通过”hive.cbo.enable”来开启。在Hive 1.1.0之后,这个feature是默认开启的,它可以自动优化HQL中多个JOIN的顺序,并选择合适的JOIN算法 Join reordering and join algorithm selection are

2018-01-06 23:31:35 12202 4

原创 Hive中的 group by position与order by position

在写SQL的时候,如果group by的column 比较复杂,有的数据库中可以写成 group by position的形式,如:SELECT CASE WHEN a.f1=1 THEN 'a' WHEN a.f1=2 THEN 'b' ELSE c END AS col1, sum(a.f2) AS col2FROM aGROUP BY 1;Hive中可以通过设置...

2018-01-03 13:41:40 2393

原创 Protobuf与Avro的序列化性能测试

Avro与Protobuf性能对比

2017-08-23 18:33:44 3934

原创 通过数据库连接工具连接到Impala

以下以 Dbeaver 为例,其他数据库连接工具,如 Dbvisualizer 、 PlSQL 等也可以用类似的方法连接,只要新建 DriverManager 并将 Impala的JDBC Jar包加载进来就可以这个方法也可以应用于其他支持JDBC连接的数据库,如Hive等下载Impala JDBC Connector并解压其中需要用的Cloudera_ImpalaJDBCxx_x.x.x.x.z

2017-07-28 17:26:12 11448 1

原创 本机安装多个版本的protoc

以3.0.2和2.5.0为例,讲一下本机安装多个版本的protoc的方法

2017-06-28 17:04:18 5951

原创 Hadoop RPC流程

最近开始看Hadoop源码,本来想对照着《Hadoop技术内幕》看的,但是发现那本书对应的Hadoop版本太老了,还是基于1.x的,构建工具用的Ant,所以没有完全对照书看。目前Hadoop最新的stable版本为2.8.0-RC1,本文以及之后的Hadoop源码相关的博文都以这个版本为基础。另外写的可能会糙一些。

2017-06-28 16:58:38 556

原创 CentOS 7 修改默认字符集

运维帮忙新装了几台机器,默认的配置下登录的时候还有执行locale命令都会报错:locale: Cannot set LC_CTYPE to default locale: No such file or directorylocale: Cannot set LC_ALL to default locale: No such file or directory解决办法是修改文件/etc/loc

2017-06-21 16:35:26 4378

原创 Druid评测

Druid 评测最近组里申请了三台机器对Druid进行测试,这里记录一下过程,并对Druid的表现做一下评测环境三台机器 - 磁盘:SATA盘 4T - CPU:24核 - 内存:128G - 系统:Red Hat Enterprise Linux 7.3 - Zookeeper、HDFS、MySQL都用的已有的环境三台机器名称用 t214、t218、t219代替.

2017-05-26 16:55:05 4298 3

原创 HDFS高可用

以下: NN : NameNode SNN : SecondaryNameNode JN : JournalNode ZKFC : ZKFailoverController Hadoop 2.0之前,集群中只能有一个NN节点,这带来了两个问题: 1:单点故障(虽然可以用SNN来恢复,但是数据量大的情况下恢复过程缓慢) 2:集群维护、软件版本升级困难 Hadoop 2

2016-04-19 10:32:48 607

原创 Hadoop、Hive 参数说明

最近在用破机器跑mapreduce任务,部署的是社区版hadoop,参数都要手动调整。虽然hadoop已经火了很久了,但是网上关于参数的介绍基本都处于’语焉不详’的状态,大部分还都是无责任转载,哪个版本都有。这个帖子记录一下最近调参数对mapreduce任务的影响,结合hadoop官方文档,尽量对涉及到的参数有比较正确详细的解释。 这篇文章随着研究的深入些,随时更新Hadoop参数hadoop-e

2016-04-07 14:51:07 1788

原创 Ubuntu apt-get 版本依赖的问题

mark一下 aptitude这个包可以自动解决要安装的包所依赖的包版本过高的问题,给出几个解决方案并自动完成

2015-11-18 10:38:55 1131

原创 redhat6.5 本地安装CDH 5.2

终于拿到了3台性能还不错的服务器,可以尝试搭建一下Cloudera的hadoop平台CDH了。在此mark一下,记录安装细节。Step.1 安装pdsh(可选) pdsh的作用是在多台机器上同时执行shell命令。步骤参考之前的blog: http://blog.csdn.net/strangerzz/article/details/49864089 这步不做也可以,不过有了pd

2015-11-18 09:50:43 1993 2

原创 mysql5.7.9安装与启动

准备装cloudera,起个mysql当作外置关系行数据库用,顺便学习下mysql的安装和使用。 1、安装 首先在oracle网站上下载了mysql的安装包,mysql-community-server依赖client、common等几个包,所以就直接下载了bundle版,由于之前自己建了个http的yum源,所以为了省事把下载的bundle包解压后用createrepo做了个yum源直接挂在了

2015-11-17 10:51:55 3622

原创 ssh免密码登录

ssh免密码登录。本来觉得很简单的一个小操作,其实里面还有些有意思的小工具以及配置方法,所以单列一章出来。1、生成密钥对 首先用ssh-keygen这个命令生成一个公开-私有密钥对:ssh-kengen -P "" -t rsa其中-P “”的意思是不用输入密码。这里不加这个参数,也可以随后根据提示进行设置。命令输入完之后,根据提示就可以创建秘钥文件对了,很简单。生成的结果是(比如我这里把文件名

2015-11-16 12:55:22 509

原创 pdsh的安装以及使用

由于最近开始玩集群,所以不能总用之前的土办法来管理集群了,了解了一下pdsh这个小工具。在这里把过程和问题mark一下,以后如果入到新的问题,就统一在这篇blog里面更新了。1:安装 首先去sourceforges上面下载了sourceforge的源码,我找到的版本是2.2.6,http://sourceforge.net/projects/pdsh/,解压后进入解压的目标目录,运行./c

2015-11-16 12:04:39 7967 4

原创 centos的yum自动补全功能

之前用ubuntu的时候,apt-get install 后面按tab可以把包名自动补全并给出可用的包的提示。新机器装了centos7标准版的也有这个功能,不过装了centos7 minimal的却没这个功能,yum install按tab后提示的是本地文件的列表。后来上网找了一下,原来这个是因为centos7 minimal没有安装bash-completion这个包导致的。安装一下:yum in

2015-10-30 09:24:11 7580

原创 CentOS 7 vsftpd匿名登陆配置

今天重新装了服务器系统,把Ubuntu改成了CentOS 7,打算用这台机器做master来搭一个hadoop集群(之前搭的那个集群被收回去做数据解析了,吐槽一下)。桌面版的Ubuntu换了服务器版的CentOS 7,很多东西不大一样了。为了保证不耽误其他人使用,首先把需要把之前本来就由这台机器提供的FTP服务器起来。清澈熟路的装好了vsftp,配置之后,发现之前的配置方法不行。大概遇到的一些问题如

2015-10-16 12:54:12 4586

原创 java 序列化

本文作为mark,随学随记一些java 序列化中的基础知识1、序列化必须要实现Serializable接口,虽然里面没有特定的方法要实现 2、如果向某个文件重复写入某一个对象,第二次开始写入的其实是对第一次写入的对象的引用。这导致以下几种情况:文件更加紧凑,减小文件体积,读写速度更快第二次写入某一个对象,即使相对第一次写入来讲已经修改了这个对象中的某个域(除了静态域以外),这种改变都不会体现到

2015-09-22 11:11:45 345

原创 初学数据库中的分区表

----出差了一个月没时间写博客,一方面是自己犯懒了,不过最根本的还是出差的地方网络、环境都不好,工作量也大,导致自己没学到太多新的东西。唯一值得一提的就是对数据库中的分区表有了些了解,所以趁着这周在公司,记录下来吧数据库也用了很久了,不过真正开始学着用分区表是最近才开始的。 刚开始用数据库的时候懂得不多,顶多建个索引一类的优化一下(ORACLE)。后来开始使用VERTICA,对分区表有了些了解

2015-07-24 17:38:10 1473

原创 SQL表关联中的逻辑与效率(二)

之前写的《SQL表关联中的逻辑与效率》一开始计划的是还要写group by在关联中的效率问题的,结果写到一半被人叫走了给忘了……于是在这里补充一篇接上一篇文章http://blog.csdn.net/strangerzz/article/details/45746621二、关联中的group by 考虑下面两条语句语句1 SELECT t1.oid, SUM

2015-05-21 09:37:36 556

转载 [转]Hadoop切分纯文本时对某一行跨两个分片这种情况的处理

Hadoop切分纯文本时对某一行跨两个分片这种情况的处理 作者: zsxwing 更新: 2012-09-06 22:42:51 发布: 2012-09-06 22:42:51 原文地址:http://blog.iamzsx.me/show.html?id=172007 当我们提交一个MapReduce程序来处理一个或多个纯文本时,Hadoop会根据设置的分片(split)大小把文件切分成多个

2015-05-18 14:57:02 1366

原创 SQL表关联中的逻辑与效率

入职后用了SQL也有一年了,对SQL和各个数据库的了解也渐渐多了起来。感觉SQL的关联蛮有意思的,在这里写一下自己对这玩意的认识的总结吧。本篇主要是通过目前接触到的两个数据库–vertica和impala(Oracle和MySql也有,但是个人用的不多)的执行计划来写的,优化器做到差不多地步的数据库应该大同小异P.S.本篇所用的表数据量都在数千万到数亿不等。如果用一个只有几十几百行的小表来跑的话,很

2015-05-15 16:39:38 3965

原创 java实现解一元n次多项式(二)

package commonAlgorithm;public class PolynomialSoluter { private double[][] matrix; private double[] result; private int order; // public PolynomialSoluter() { // // } // 检查输入

2015-05-11 19:43:13 2694

原创 Eclipse部署hadoop开发环境-初级

之所以叫初级,是因为目前还有些不太明白的地方,但是部署完以后可以正常的运行Map-Reduce程序了。尝试运行了hadoop自带的example里面的wordcount程序之后,开始考虑在eclipse里面搭一套map-reduce的开发环境,自己写写程序试试。由于对这个开发环境的搭建实在不熟,加上网上找的很多资料都言之不详,很有误导性,所以搭建的过程很曲折,甚至还又自己搭了一套单机版的hadoop

2015-05-07 19:43:16 1549 2

原创 运行我的首个mapreduce程序

之前整了套hadoop的实验集群,部署过程在这篇博文里做了记录:http://blog.csdn.net/strangerzz/article/details/45040441。不过那时候还只是4个节点,只开启了hdfs,后来一直没有时间搞。最近项目组刀片机又空出来了几台,正好被我拿来扩充我的小集群,将节点数量扩充到了9台,有了余量多部署一个secondary-namenode,datanode数量

2015-05-05 18:20:01 1116

原创 CentOS7 部署zookeeper-3.4.6 + Hbase-1.0.0

之前早早的部署好了Hbase,不过用的是hbase集成的zookeeper,据说效果不好(具体如何没有亲测)。于是决定自己独立搭起zookeeper服务器。 首先下载了最新的zookeeper稳定版,目前是3.4.6,解压后开始修改配置文件 根据官方文档的描述,复制conf/zoo_sampe.cfg改名为zoo.cfg,设置如下:# The number of milliseconds of e

2015-04-28 16:51:18 830

原创 java进行n阶曲线拟合

接上一篇文章,能解多项式以后,还需要利用那个类,根据若干采样点数据来对未来数据进行预测,拟合的矩阵在上一篇文章中已经贴出来了,这里就不说了,本篇主要是如何根据采样点来计算系数矩阵。原理很简单,公式在上一篇文章中也有了,此处直接贴代码:package commonAlgorithm;import commonAlgorithm.PolynomialSoluter;import java.lang.M

2015-04-24 18:15:01 10609 2

原创 java实现解一元n次多项式

项目需要做趋势预测,采用线性拟合、2阶曲线拟合和指数拟合的算法,各种线性拟合算法写成矩阵大概是这么个形式: 其中x是横坐标采样值,y是纵坐标采样值,i是采样点序列号,a是系数,N是采样点个数,n是阶数,所以线性拟合最后就转成了一个解高阶方程组的问题。 不知道有没有什么好用的java矩阵运算的包,我很不擅长搜集这种资料,所以只好捡起了已经放下多年的线性代数,自己写了个java程序用增广矩阵的算法来

2015-04-24 11:19:05 8001

原创 使用ntp进行时钟同步

之前部署好了hbase,但是各个regionServer确启动不起来,经过检查log发现是因为他们与HMaster的时钟不同步导致的。于是不得不学习下怎么来做时钟同步。网上查了下,一般做时钟同步使用ntp,于是在各个节点上安装了ntp,然后用自己在工位上的一台机器(Ubuntu系统,Hbase则采用CentOS)来作为ntp服务器,所有集群机器和他进行同步。 首先做了如下修改:将其他server都

2015-04-24 11:05:52 7643

原创 CentOs7 Hadoop-2.6.0 部署Hbase-1.0.0

手头有了设备,正好项目也有用Hbase的打算,于是自己先预研一下。首先按照官网的教程,上了个单机版的Hbase。过程很简单,java和hadoop早就装好了,怎么装就不说了,步骤是:1、下载了个最新版的Hbase,写这篇文章的时候是hbase-1.0.02、解压后修改conf/hbase-env.sh,找到了JAVA_HOME设置路径的一行,去掉注释后按照自己机器上的java路径进行了设置,我这里是

2015-04-14 12:55:30 931

原创 CentOs7 minimal 安装Hadoop

前几天参考了hadoop.apache.org的文档以及csdn学院上的一个视频,在一个破旧刀片机上安装了hadoop,暂且把流程做个记录。由于刀片机好久没用了,所以首先做的是安装操作系统。发现一共4台刀片,每个刀片只有200多G的硬盘空间,真是好小。安装重启过程中又发现原来每个刀片配置了2个286G的硬盘并且做了raid1,为了进行空间扩容,果断把打算做datanode用的刀片改成raid0,做n

2015-04-14 12:51:46 1374

原创 Ubuntu 下用ODBC链接 Vertica

因为某些原因要用C++进行开发,期间需要连接Vertica数据库,只好先做一些探索性的研究。首先根据Vertica的官方文档,用ODBC链接Vertica大概有安装ODBC, 安装Vertica ODBC驱动​,配置DSN,这么几个步骤。首先安装ODBC,用apt-get 装iodbc、unixodbc这两个包。后面配置odbc驱动相关的东西可以使用iodbcadm-gtk来做,不过我这里直接用的文

2015-04-14 12:48:05 2208

原创 Ubuntu tomcat7+Eclipse开发、部署servlet ----部署篇

ok,开发测试成功,接下来考虑怎么把这个servlet demo放到tomcat中去。首先把eclipse里面的tomcat预览服务器关掉防止端口​冲突。在/var/lib/tomcat7/webapps下面建立路径test/WEB-INF/classes/test/,将编译好的helloServlet.class文件复制过来,将web.xml放到WEB-INF下面,即和classes平级,用ser

2015-04-14 12:44:29 1004

原创 Ubuntu tomcat7+Eclipse开发、部署servlet ----开发篇

时n天,终于靠着自己摸索+查资料,解决了Ubuntu下部署servlet的问题。最初在apache官网下载了tomcat8,按照网上的教程,写了个测试的servlet小程序,但总是运行不起来。后来想想可能是自己写的web.xml格式不对,于是考虑还是搭一个servlet的开发环境好了,修改web.xml总比自己写靠谱多了吧。在网上看到写servlet用myEclipse会比较好,但是没有找到靠谱的m

2015-04-14 12:44:21 1385

原创 Ubuntu 14.04 LTS 安装 Oracle 11gR2 64bit

经过了1天半的折腾,终于完成了Oracle 11g-R2在Ubuntu 14.04 LTS上的安装过程。Oracle 官方文档 http://docs.oracle.com/cd/E11882_01​提到,Oracle的操作系统为Oracle Linux,Redhat 以及SUSE Linux,在Ubuntu上安装Oracle需要修改很多参数,包括做包文件的软连接等等设置内核参数、文件限制,建立用户

2015-04-14 12:38:00 662

原创 通过vsql访问vertica

好吧果然又好几天没有记录。以后尽量养成一个习惯,早上来了对前一天来进行记录吧前端方面主要是栋哥写的,我写的是后台部分。昨天完成了1.2版本,增加了log文件的输出,以及修改了vertica数据库返回结果的格式。目前数据库的访问方式是我写了一个.py的程序文件,前端有数据访问需求的时候通过带相关的参数来调用我的.py程序就可以了。这样每次调用都会产生一个新的进

2015-04-14 12:30:59 2743

原创 Ubuntu部署Apache-PartI

工作原因需要搭建一个网站,但是我自己没有任何这方面的知识,大部分东西要靠自己慢慢摸索吧既然建站,就弄个稍微专业点的,windows什么的就算了,直接linux搞起吧! 昨天把实验室的服务器抬上来了,虽然是服务器,但毕竟是几年前的配置了,也就是现在中低端台式机的水平,不过用来做一些实验性质的小网站已经够了,估计并发用户数不会很多,完全承受得了因为是头一次接触网站,所以选择了免费而且用的人很多的Ubu

2015-04-14 12:27:36 329

空空如也

空空如也

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

TA关注的人

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