- 博客(339)
- 资源 (51)
- 问答 (2)
- 收藏
- 关注
原创 Hive数据仓库--Hive导出至Mysql中文乱码问题
也是目前遇到的比较棘手的问题之一,虽然最终解决的时候,并没有修改过多的东西,但是在这个过程中也折磨了近两天的时间。不过这个过程中,查阅了网络上以及书上等等的资料,对于Sqoop导出Hive数据到Mysql中也算是深刻的体验了一把,我解决问题的大致流程:1. 猜想语句中可能需要加参数设置utf-8的编码,但是不幸的是,设置完成后并没有起到应有的效果。2. 猜想数据库中编码存在问题(虽然我的这个最终不
2016-11-15 16:24:02 5929
原创 Hive数据仓库--HiveUDF异常解析与其中的坑
使用Hive进行分析的过程中遇到了这个异常的信息,一开始看到比较惊讶,因为感觉代码并没有什么不太合理的地方,不过还是抛出了一堆的异常信息,我把日志信息读了一下,发现导致最终异常的是FastJson在封装的时候找不到无参构造函数,虽然最终原因不是Hive引起的,但是上面的一堆异常也的确是唬人的。异常信息Error: java.lang.RuntimeException: org.apache.had
2016-11-11 16:43:50 13462
原创 Hive数据仓库--UDF自定义函数以及其中的坑
一个简单的问题折腾了接近半天的时间,不过最终发现了问题出在哪里了,UDF这个是用户自定义函数,和sum等这种函数类似,主要作用是输入一个值,然后通过适当的处理后返回一个值。UDF倒是很简单的,基本上就是导入包,继承UDF类,实现一个evaluate方法就行了。UDF实例简单的一个测试程序,是分析下json格式的字符串,解析成对象数组的形式,然后做相应的调整。public class UDFTest
2016-10-31 23:22:57 4471
原创 Hive数据仓库--Java代码JDBC方式访问Hive中表的数据
通过Java中jdbc的方式去操作Hive表中的数据,这个方式和之前web中使用的jdbc方式访问数据库是一致的。基本流程:1. 加载驱动程序。2. 建立连接。3. 预编译sql语句。4. 提交执行获取结果。基本的程序如下:try { Class.forName("org.apache.hadoop.hive.jdbc.HiveDriver"); String selectSq
2016-10-28 13:46:01 11879 9
原创 Hive数据仓库-Sqoop导入数据注意事项
注意事项一按照整张表导入的时候,是按照原来数据库中列的顺序进行赋值的,也就是说如果数据库中A,B两列的数据,在Hive中导入数据的表是B,A两列,这个时候B中实际存储的值仍然是数据库A中的值,而A中存储的是数据库B列的值。注意事项二日期形式的数据,在数据库中导入的时候,可能是因为格式的问题,我的日期后面多一个.0然后映射不到日期数据,解决办法是将日期格式的数据改为string类型的数据(Hive中
2016-10-27 12:28:29 5063 7
原创 Hive数据仓库-Sqoop将数据从Mysql导入Hive中
Sqoop是一个实现在关系型数据库和Hive进行数据交换的工具。主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。参数hive导入参数 --hive-home 重写$
2016-10-26 17:37:50 18655 9
原创 SSLException异常解读与解决
在读取一个比较有影响力的网站的API的时候,由于对方采用的是HTTPS的链接,而不是HTTP的链接,所以导致了如下的问题:javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair原本以为两者是一样的访问方式,所以出错主要还是在于自己,当然在没找到原因之前并没有向这个方面去想,这也是后来
2016-10-20 19:31:06 34621 3
原创 Spring配置文件打包到jar中无法加载问题之解决方案
最近再做一个项目,通过Spring整合Mybatis然后从一些网站上通过其API获取数据,我打算做成一个jar包然后通过定时任务来进行控制他执行的频率,每分钟都执行一次,我在编辑器里面运行的完全没问题的,后来打包试下效果怎么样,因为本身自己的机子就是linux系统,直接再自己的机子上先实验几天,看看运行的效果怎么样,结果,不管怎么弄总是会说spring的配置文件有问题,要么找不到要么说不对,找了各
2016-10-20 19:14:22 5033
转载 Java 内存区域和GC机制详解解读
这篇文章对于java虚拟机的内存管理机制进行讲解,我感觉内容很好很清晰,所以将文章转载过来,我建议读者可以静下心来读完。原文地址Java 内存区域和GC机制最详解。在这里我也自己写写个人的理解,供读者参考:一讲到内存,对于我们程序员来讲,我感觉想到的最多的可能是栈和堆了。堆栈栈:对于程序中的很多基本类型的数据比如:int、float等基本类型(除去String类型)的数据会直接将其存储在栈中,在栈
2016-10-11 19:39:35 3679
原创 Redis深入理解-数据结构篇(1)-简单动态字符串SDS
Redis没有直接使用C语言中的字符串,而是自己构建了SDS这样的一种简单动态字符串,并且将他作为Redis中字符串的默认的表示,个人认为,Redis并未完全抛弃C语言字符串,只不过是在C语言字符串的基础上,通过封装其他的属性,构造出一个更加高效的字符串的封装结构,在早些的版本中记录了其长度(实际使用了多少)、剩余空间、以及字符数组,最新的版本3.2.4中,已经对SDS做了一定的改动记录了长度、分配内存大小(除去‘\0’)、标志位(低三位表示类型,其余五位未使用)、以及字符数组。
2016-10-03 13:02:31 4759
原创 Hive数据仓库--HiveQL视图和索引
上篇文章中讲完了查询的相关操作,接下来就是视图与索引了,Hive中的视图的作用总的来说就是为了简化查询语句,是一个逻辑上的视图,而不是物化的视图。索引则是加快查询速度的比较重要的手段,之前的Mysql优化的文章中也讲到了索引的使用,感觉概念上和Mysql数据库中的操作基本上是相似的。视图创建这样的一个视图,高收入人群。我试了下,这里的视图并不会帮我们进行存储视图所代表的查询语句
2016-09-29 21:51:00 7122 2
原创 Hive数据仓库--HiveQL查询
之前的博文中已经介绍过了,Hive的原理、Hive的数据定义、Hive的数据插入的相关知识,接下来学习下Hive的数据查询,总体来说感觉查询部分和Mysql相差并不是很大,当然并不是说没有差别的,个别的地方我会点出来。这里是之前的文章中操作的表的信息,并且,我们简单的查询下,你可以看到他的部分数据。hive> show tables;OKsalariessalaries_ex
2016-09-29 20:16:31 11653
原创 大数据时代--Hive数据操作之insert操作
前面文章中讲解了Hive的数据定义语言,接下来就是数据操作语言,数据定义语言主要包含了Hive表结构的一些操作:包含创建表、删除表、修改表的结构、增加列等等一系列操作。数据操作语言主要是对表中的数据的增删改查。数据插入通过查询语句进行插入,这里不像是MySql可以一条一条的进行插入操作,在Hive中我试了几次都没有成功,搜了下也都是通过select语句进行插入的。这里也算是
2016-09-23 22:01:58 13536 12
原创 Java 的Integer、int与new Integer到底怎么回事?
先做一些总结,询问了些经验比较多的师傅,在这里表示感谢,然后自己总结下,今天的收获分享给大家:1. int 和Integer在进行比较的时候,Integer会进行拆箱,转为int值与int进行比较。2. Integer与Integer比较的时候,由于直接赋值的时候会进行自动的装箱,那么这里就需要注意两个问题,一个是-1283. new Integer(1) 和Integer a = 1
2016-09-22 16:27:41 23609 16
原创 大数据时代--Hive数据定义
Hive中数据库的相关操作数据库的创建、删除hive (default)> create database if not exists wyTest;OKTime taken: 0.69 secondshive (default)> show databases;OKdefaultwytestTime taken: 0.031 seconds, Fetched: 2 row(
2016-09-14 17:32:15 3839
原创 Ubuntu下安装的SublimeText无法输入中文解决方案笔记
保存下面的代码到文件sublime_imfix.c(位于~目录)#include void gtk_im_context_set_client_window (GtkIMContext *context, GdkWindow *window){ GtkIMContextClass *klass; g_return_if_fail (GTK_IS_IM_CONTE
2016-08-31 12:20:06 590
原创 Linux后台启动程序以及打开XShell连接运行java -jar然后关闭连接程序不再运行问题
问题描述我打好的jar包,放在服务器上之后,在windows里面用xshell打开一个连接,然后运行java -jar 。。。。执行这个jar文件,当我关闭这个链接的时候为什么程序停止了呢?打开XShell连接并运行java -jar XX.jar 后当前的连接被锁定,也就是说,你的连接的线程当前的状态会影响程序的执行,比如你按了CTRL+C命令程序退出,还有关闭你的
2016-08-29 14:24:30 15421 1
原创 Mybatis扫描全包(包含Service、Dao的接口)导致抛出BindingException异常,引发的一系列思考(含源码分析)
在Spring中配置Mybatis接口类的接口扫描basePackage的时候,将其设置为全部的包,然后就抛出了异常,我当时感觉很诧异,怎么会这样?明明可以扫描到我的Mapper接口类的,怎么会抛出绑定异常呢?而且这个异常是service层的接口的绑定异常,我又改回了扫描dao包,这回就可以了,虽然是程序可以了,但是我不明白到底发生了什么,就这样配置改了一下就是质的区别。下面先看下抛出的异常,我先
2016-08-26 11:31:07 3556 6
原创 大数据时代--Hive实战之Hive命令
接下来几天,先重温下Hive的基本命令,然后再以某个场景为前提进行一定的开发与设计。本文作为自己温故知新的文章,同时希望看到的朋友可以从中学到些Hive的基础知识,达到入门的目的。设置变量set foot = "wy";set foot;foot="wy"这里的变量是普通的。下面设置Hive用户自定义变量。 ./hive --define foot=name;Logging
2016-08-25 21:27:13 2999
原创 大数据时代--Hive之开始动手(导入数据、查询、删除)
最近在忙于大数据的相关知识的学习,SpringMVC的源码也有在读,希望关注的朋友不要着急,后面我会尽快的推出,因为源码这东东着实比较高深,得反复的去琢磨才好,我如果直接读一点写一点感觉写出来的博文没有什么自己的见解,而且往往是云山雾绕的感觉,所以,我会在反复的琢磨之后,再进行更新。本文章也是之前从Hive基本原理中承诺的那样,原理讲完了得动动手实实在在的把他落实在脑子里。刚刚开始用可能不是很习惯
2016-08-24 21:04:44 2490
原创 Hadoop集群异常:两个NameNode全部为StandBy状态
之前的集群状态一直是很好用,可能中间忙于其他的事情,有些文件失效了吧,这次运行的时候,出现了问题,那就是两个NameNode全部是StandBy的状态,这种问题存在的原因大部分都是因为Zookeeper的zkfc进程未启动成功,当然即使你启动了Zookepper进程也是没用的,因为此时只要ZKFC进程未启动的话,那么,HDFS就没办法与Zookeeper之间建立沟通的桥梁。ZKFC是ZooKeep
2016-08-24 19:56:50 22793
原创 toHexString(b[n] & 0XFF)为什么要和0XFF做与运算
在32位的电脑中数字都是以32格式存放的,如果是一个byte(8位)类型的数字,高24位里面都是随机数字,低8位才是实际的数据。java.lang.Integer.toHexString() 方法的参数是int(32位)类型,如果输入一个byte(8位)类型的数字,这个方法会把这个数字的高24为也看作有效位,这就必然导致错误,使用& 0XFF操作,可以把高24位置0以避免这
2016-08-23 14:24:58 15412 14
原创 Spring与远程调用RMI、Hessian、Burlap、HttpInvoker、Jax-WS
RMI RMI(即Remote Method Invoke 远程方法调用)。在Java中,只要一个类extends了java.rmi.Remote接口,即可成为存在于服务器端的远程对象,供客户端访问并提供一定的服务。JavaDoc描述:Remote 接口用于标识其方法可以从非本地虚拟机上调用的接口。任何远程对象都必须直接或间接实现此接口。只有在“远程接口”(扩展java.rmi.Remote
2016-07-27 21:28:59 3794 2
原创 JSTL标签c:if和c:chose--个人笔记
没有可以用来取代结构: 如果 否则 在同一个 中,当所有 的条件都没有成立时,则执行 的本体内容。语法 本体内容 属性 无限制 · 必须在 和 之间 ·在同一个 中时, 必须为
2016-07-27 16:47:42 4153
原创 MongoDB32位linux版本在安装中遇到的问题
本文作为笔记,整理MongoDB安装过程中遇到的问题,该问题是因为32位和64位的包的启动方式有所区别导致的,之前搜到的资料都是说:将安装包解压之后,创建一个默认的data和log文件,然后通过命令(32位不适用):./mongod --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/logfile --fork但
2016-07-24 09:52:58 1331
原创 SpringMVC工作原理解读--DispatcherServlet类源码解读(初级)
我这里先通读一下DispatcherServlet的代码,首先知道各个部分是什么用处,后面再次进行串联的讲解。一开始我可能也讲的不是很明白,但是时间久了我觉得自然而然的就明白了。读者可以发布自己的意见共同交流。DispatcherServlet类是怎么处理请求的先来看DispatcherServlet中的代码,静态代码块static { // Load default st
2016-07-22 22:18:19 6574 7
原创 Mysql计算时间差函数
MySql计算两个日期的时间差函数TIMESTAMPDIFF用法: 语法: TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2) 说明: 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。interval
2016-07-22 13:04:13 19086
原创 SpringMVC工作原理解读
The Spring Web model-view-controller (MVC) framework is designed around aDispatcherServlet that dispatches requests to handlers, with configurable handlermappings, view resolution, locale, time zone
2016-07-21 22:06:54 4490 2
原创 "围观"设计模式(27)--行为型之解释器模式(Interpreter Pattern)
解析器是一种按照规定的语法进行解析的例子,在现在的项目中使用较少,定义如下:给定一门语言,定义它的文法的一种表示,并定义一个解释器,该解释器用于解释语言中的句子。个人理解解释器模式在项目中很少使用,因为他会引起效率、性能以及维护等问题,准备使用该模式时可以考虑开源框架如:Expression4J、MESP、Jep等。解释器模式一般用来解析比较标准的字符集,比如说SQL语法分析等
2016-07-09 20:46:11 1857
原创 "围观"设计模式(26)--行为型之备忘录模式(Memento Pattern)
所谓备忘录模式就是在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。个人理解备忘录模式是用于将对象的状态暂存在某些特殊情况下可以将其进行恢复的模式,可以通过多种方式实现,包括clone以及一般方式以及多种参数的备忘录等形式。标准的备忘录在项目中很难直接应用进去,多数为其变形后的处理方式。备忘录模式角色
2016-07-09 18:14:17 2104 1
原创 "围观"设计模式(25)--行为型之中介者模式(Mediator Pattern)
用一个对象封装一系列的对象交互,中介者使对象不需要显示的相互作用,从而使其耦合松散,而且可以独立的改变他们之间的独立。个人理解当多个对象之间存在着过多的耦合时,可以通过中介者模式进行解耦,将具体的对象之间的耦合转为中介者与具体对象的耦合,假如说之前是三个对象的相互之间的耦合,转为中介者与具体类的耦合之后,从耦合性上大大的降低了,这样如果再来对其进行修改的话,那么变更部分主要在中介者
2016-07-09 15:45:02 2315
原创 "围观"设计模式(24)--行为型之访问者模式(Visitor Pattern)
访问者模式:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。个人理解访问者模式,扩展能力很好,符合开闭原则,对于扩展开放,对修改关闭。但是从类的实现情况来看,访问者类和元素类相互之间依赖,依赖关系较强,不过可以通过抽象类或者接口的形式,将依赖关系转移到上层抽象类或者接口中,从而降低对实现类的依赖。访问者模式的出发点:业务规则要
2016-06-29 13:52:32 4029
原创 "围观"设计模式(23)--行为型之命令模式(Command Pattern)
在面向对象程式设计的范畴中,命令模式是一种设计模式,它尝试以物件来代表实际行动。命令物件可以把行动(action) 及其参数封装起来,于是这些行动可以被:重复多次取消(如果该物件有实作的话)取消后又再重做这些都是现代大型应用程序所必须的功能,即“复原”及“重复”。----WIKIPEDIA个人理解命令模式是一个高内聚的模式,它将一个请求封装为一个对象,让你使用不
2016-06-25 17:00:04 4200
原创 "围观"设计模式(22)--行为型之职责链模式(Chain Of Responsibility Pattern)
责任链模式在面向对象程式设计里是一种软件设计模式,它包含了一些命令对象和一系列的处理对象。每一个处理对象决定它能处理哪些命令对象,它也知道如何将它不能处理的命令对象传递给该链中的下一个处理对象。该模式还描述了往该处理链的末尾添加新的处理对象的方法。----WIKIPEDIA个人的理解责任链模式用到了链表的数据结构,存在一定的次序性,A->B->C这样的一条链表,在责任链模式中,请求
2016-06-17 22:11:41 6285 2
原创 "围观"设计模式(21)--行为型之状态模式(State Pattern)
状态模式--允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。----百度百科个人理解状态模式应该说可以理解为某种状态下,程序的执行流程可能会发生变化,类似于交通灯,红灯的时候停下,绿灯行走,黄灯时等一等,这就是三种状态下我们人对其作出的相应的变化。再比如,公交车应该都坐过的,公交车停车的时候,可以上车和下车;公交车行驶的时候,不允许下车和上车,那么,
2016-06-13 15:11:04 4289 2
原创 "围观"设计模式(20)--行为型之策略模式(Strategy Pattern)
策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。比如每个人都要“交个人所得税”,但是“在美国交个人所得税”和“在中国交个人所得税”就有不同的算税方法。----WIKIPEDIA个人理解策略模式从名字就可以看出,有多种选择,不同的策略对应着不同的实现方式,那么一般的形式为一个接口采用多种实现方式(也就是提供了不同的策略),然后再提供一个策略
2016-06-12 19:05:04 2968
原创 "围观"设计模式(19)--行为型之观察者模式(Observer Pattern)
观察者模式是软件设计模式的一种。在此种模式中,一个目标对象管理所有相依于它的观察者对象,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实时事件处理系统。----WIKIPEDIA个人理解观察者模式,就是使得被观察者中持有观察者的对象实例,在发生某些事件的时候,通过notify“通知”观察者,完成相应的操作,他也叫作发布-订阅模式,
2016-06-08 20:08:03 4629 2
原创 "围观"设计模式(18)--行为型之模板方法模式(TemplateMethod Pattern)
模板方法模式定义了一个算法的步骤,并允许子类别为一个或多个步骤提供其实践方式。让子类别在不改变算法架构的情况下,重新定义算法中的某些步骤。----WIKIPEDIA个人理解模板方法模式相对而言比较简单,一般的都是由抽象类定义好模板方法,然后,子类通过继承并实现其父类中定义好的模板中需要执行的具体的方法,调用子类对象的模板方法时,会执行该类中的具体实现的方法。这个模式我个人的感觉有点
2016-06-06 21:25:09 1889 4
原创 "围观"设计模式(17)--结构型之享元模式(Flyweight Pattern)
享元模式(英语:Flyweight Pattern)是一种软件设计模式。它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于当大量物件只是重复因而导致无法令人接受的使用大量内存。通常物件中的部分状态是可以分享。常见做法是把它们放在外部数据结构,当需要使用时再将它们传递给享元。----WIKIPEDIA个人理解共享,内存消耗大的时候应考虑对象的共享,共
2016-06-04 15:16:58 7587 2
原创 "围观"设计模式(16)--结构型之组合模式(Composite Pattern)
组合模式也叫合成模式,有时又叫做部分-整体模式,主要是用来描述部分与整体的关系,其定义为:将对象组合成树形结构以表示“整体与部分”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。----设计模式之禅个人理解组合模式目的是将整体与部分组合成树形来表示整体与部分的层次,使得用户对单个对象和组合对象的使用具有一致性的接口,也就是通过接口对子对象统一操作。案例公司
2016-05-25 20:56:12 1673 2
数据结构课程设计
2015-08-29
SQL Promot 辅助软件
2013-08-04
JAX-WS 2.2 RI 所包含的JAR包集合
2016-07-26
jax-ws与spring整合jar包下载
2016-07-26
HiberTest使用HQL动态构建对象
2016-02-23
Hibernate使用JPA注解代码
2016-02-16
[MongoDB权威指南].(美).霍多罗夫.(美).迪洛尔夫.(译)程
2016-02-02
Weblogic使用手册大全详解(中文)
2016-02-02
Struts2标签中文参考手册
2016-01-20
Hibernate-HQL、Criteria、SQL实现查询对照以及增删改代码
2016-01-02
ElasticJob明明配置了,也配置到ZK了,web端就是不显示数据
2017-07-18
决策树的叶子节点产生条件可不可以用增熵=0判断
2015-04-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人