自定义博客皮肤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!

原创 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 4915 2

原创 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 1071

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

Avro与Protobuf性能对比

2017-08-23 18:33:44 2801

原创 通过数据库连接工具连接到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 8655 1

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

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

2017-06-28 17:04:18 4619

原创 Hadoop RPC流程

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

2017-06-28 16:58:38 418

原创 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 3045

原创 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 3844 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 530

原创 Hadoop、Hive 参数说明

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

2016-04-07 14:51:07 1486

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

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

2015-11-18 10:38:55 923

原创 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 1832 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 3440

原创 ssh免密码登录

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

2015-11-16 12:55:22 413

原创 pdsh的安装以及使用

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

2015-11-16 12:04:39 6557 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 5722

原创 CentOS 7 vsftpd匿名登陆配置

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

2015-10-16 12:54:12 4147

原创 java 序列化

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

2015-09-22 11:11:45 291

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

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

2015-07-24 17:38:10 1283

原创 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 395

转载 [转]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 1167

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

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

2015-05-15 16:39:38 3064

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

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

2015-05-11 19:43:13 1846

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

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

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

原创 运行我的首个mapreduce程序

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

2015-05-05 18:20:01 1002

原创 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 782

原创 java进行n阶曲线拟合

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

2015-04-24 18:15:01 7906 1

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

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

2015-04-24 11:19:05 5569

原创 使用ntp进行时钟同步

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

2015-04-24 11:05:52 5039

原创 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 818

原创 CentOs7 minimal 安装Hadoop

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

2015-04-14 12:51:46 1250

原创 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 1978

原创 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 927

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

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

2015-04-14 12:44:21 1215

原创 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 583

原创 通过vsql访问vertica

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

2015-04-14 12:30:59 2478

原创 Ubuntu部署Apache-PartI

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

2015-04-14 12:27:36 290

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