- 博客(131)
- 收藏
- 关注
原创 hive 排序
用于对单个reduce局部排序,不保证全局有序,hive执行完map task后,如果mapred.reduce.tasks>1,则会将数据分配到不同的reduce上执行,通过sort by来对单个reduce task内部数据进行排序。order by用于对查询结果的全局排序,hive内部对于所有map task执行完成后,会将所有排序内容集中到一个reduce task上来进行排序。优点:能够实现全局有序,缺点:只能一个reduce排序操作,当数据量级大时,排序慢,并且有可能OOM失败。
2024-07-09 15:00:34 479
原创 hive 调优
在设置动态分区后,产生的文件数会取决于map数和分区数的大小,假设动态分区初始有N个map数,同时生成M个分区,则中间会生成N*M个文件,通常这种情况就是让大部分数据尽量输出到一个reduce中进行处理,但是有些HiveSql不会产生reduce,也就是说文件最后没有进行合并处理,这种情况下可以用distribute by rand()的方式保证数据进行一次reduce操作,实现文件的合并。备注:set设置的参数是生成的文件个数,distribute by rand()保证数据随机分配到50个文件中。
2024-07-09 14:48:22 442
原创 Linux下Nginx初识与安装
一、Nginx是什么? Nginx是IMAP/POP3/SMTP 代理服务器,也是一个高性能的 HTTP 和 反向代理服务器。二、安装:1、安装所需要的依赖包: (1)nginx是C语言开发,所以安装gcc。 gcc环境:yum install gcc -c++ (2)nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。 pcr
2016-07-31 22:13:49 468 3
原创 Redis——》介绍
1、介绍:Redis是一种NoSQL数据库。和Memcached类似,以Key-Value形式进行存储,但redis支持存储的value的类型更多,包括string,list,set,zset和hash。redis支持各种不同形式的排序,为了保证效率,数据都是缓存在内存中。2、优点:性能高:Redis能支持超过 100K+ 每秒的读写频率数据类型丰富:包括string,list,s
2016-05-31 21:37:41 366
原创 EJB——》简介
一:什么是EJBEnterprice JavaBeans是用于分布式业务应用的标准服务端服务组件模型,是J2EE的一部分,采用EJB架构编写的应用是事务性的、多用户安全的。采用EJB编写的应用可以部署在任何支持EJB的服务器平台,如JBOSS、weblogic等二:EJB是干什么的
2016-05-31 21:20:07 649
原创 Spring——AOP
面向对象编程中,每一类都定义了一项明确的任务。然而这种编程也存在着缺陷。比如横切功能。一项功能可以影响系统的大部分。例如典型的日志记录功能,事物处理功能等。在处理日志,事物等功能方面,就用到AOP了。
2016-04-30 16:14:45 441 5
原创 Spring——基于注解方式的依赖注入
首先先了解其中的注解都是做什么的,用在什么地方: @Autowired 自动按照类型依赖注入,可以对成员变量,方法及构造函数进行标注 @Resource 自动按照名称依赖注入,可以对成员变量,方法及构造函数进行标注 @Controller 通常标注控制层 @Service 通常标注业务层
2016-04-30 16:14:07 823 4
原创 Spring——基于XML配置的依赖注入
新建Java项目,配置好spring环境。依赖注入有基于set方法的注入,基于构造方法的注入和接口注入三种。下面介绍前两种依赖注入。基于Set方法的配置: D层实现类:package com.spring.dao;public class UserDaoImpl implements UserDao { @Override public void addUser() { S
2016-04-30 16:13:24 644 4
原创 Spring简介
Spring是一个开源框架,是一个轻量级的Java开发框架,是一个采用非侵入性的POJO编程的IoC和AOP的容器框架。Spring的基本理念是简化Java开发。使用Spring可以让简单的JavaBean实现之前只有EJB才可以实现的事情。 Spring的简化策略: 1、基于POJO的轻量级和最小 侵入性编程 2、通过依赖注入和面向接口实现松耦合 3、基于
2016-04-30 16:04:39 571 3
原创 mysql 查询当天当周当月的数据
1、查询当天的数据select * from 表名 where TO_DAYS(时间字段)=TO_DAYS(NOW());2、查询当周的数据select * from 表名 where YEARWEEK(DATE_FORMAT(时间字段,'%Y-%m-%d'))=YEARWEEK(NOW());3、查询当月的数据select * from 表名 where DATE
2016-03-31 18:27:49 8195 6
原创 Java读取xml文件
xml文件: 225827 225825 225824 225823 225821 225820 225818 225816 225814 225810" 225839
2016-03-31 18:27:16 436 3
原创 Java调用webservice接口
//组装请求 String ss = getReqStr(phoneNumber,flownumber,prdCode); logger.info("phoneNumber_"+phoneNumber+"_request_saop:"+ss); PostMethod postMethod = new P
2016-03-31 18:26:41 515 3
原创 Java DES加密解密工具类
public class DESUtil { private byte[] desKey; //解密数据 public static String decrypt(String message,String key) throws Exception { byte[] bytesrc =convertHexString(message);
2016-03-31 18:25:22 1551 2
原创 Vagrant 部署环境
首先需要准备虚拟机镜像文件,virtualbox和vagrant安装软件。 1.安装virtualbox,安装成功就可以了 2.安装vagrant,安装完成后,在命令窗口下输入 vagrant -v,如果显示正确的版本,那么说明安装正确。 3.在镜像文件所在的目录下启动命令窗口,将虚拟机镜像文件,加入到镜像列表中,centosMix为我们要通过虚拟机文件,生成的镜像的名字,后面的
2016-02-29 14:28:07 726 5
原创 集合Set
同样是收集对象,在收集过程中有相同的对象,则不再收集,如果有这样的需求,那么可以使用set的接口操作对象。 例如:有一个字符串,当中有很多英文单词,你想知道不重复的单词有几个; public class Words{ public static void main (string args[]){ Scanner scanner =new Scanner(); System.out.p
2016-02-28 20:15:26 376 3
原创 Java多线程的两种实现方式
1. 继承Thread类实现多线程 这种实现多线程的方式很简单,通过自己写的类继承Thread类,并重写run()方法。线程启动的唯一方式就是通过Thread类的start()方法。该方法将启动一个新的线程,并执行自己定义的run()方法。2. 实现Runnable接口方式实现多线程 因为java中没有多继承,当自己的类已经继承别的类的时候,无法继承
2016-02-28 20:14:21 454 6
原创 我的2015
没有吸引眼球的题目,以下也将没有华丽的辞藻来记忆我的2015,有的只是直白的叙述。 2015,体验了不同的生活状态,不同的工作环境,不同的懒惰。 2015,我想说的是,我出来了,出来实习工作了。记得出来的那天,还下着小雨,同行的我们拖着行李箱奔向首都北京,这个IT行业集中的地方。 3个月的工作时间转眼就过去了。工作环境很快就适应了下来(跟学习环境很相似)。经历了一个项目从需求,设
2016-02-28 20:13:46 464 8
原创 Structs2基本配置
1、下载structs-2-all.zip压缩包,进行解压缩2、新建web项目3、引入jar包 4、修改web.xml文件,web.xml文件需要配置过滤 Org.apache.struts2.dispatcher.ng.filter.StrutsPreparedAndExecuteFilter5、在src目录下建立struts.xml 原因:因为所
2016-02-28 20:12:26 485 4
原创 输出json格式数据
发发打发第三方$.ajax({type:"POST",url:"bindingController.do?sendMessage",dataType:"JSON",async:false,data:param,success:function(data){if(data.flag=="true"){alert("短信发送成功,请注意查收!");}else{alert("短信
2016-01-30 18:07:03 1688 5
原创 微信自定义分享获取签名
在上一篇文章中介绍了微信自定义分享对页面进行的配置。想要实现页面的这些配置,需要后台获取相应的值传到页面中。 那么那些值都是如何获取的呢? 如需获取页面中的值,APPID是公众号的唯一标识(存储在数据库中),可通过accountID(公众号id)来得到。timestamp ,生成签名的时间戳和nonceStr签名生成的字符串可以这样获取: private static String
2016-01-30 18:06:49 2942 7
原创 HTTP Get请求
Http Get请求:此处需要用到两个jar包,httpclient-4.3.1.jar、httpcore-4.3.jarString url = "";//这里是要访问的地址 HttpGet request = new HttpGet(url); String result=""; try { HttpRes
2016-01-30 18:06:18 521 5
原创 微信自定义分享功能
微信给我们提供了自定义的分享平台。一、绑定域名: 登录微信公众平台,进入“公众号设置”的“功能设置”里填写“JS接口安全域名”二、引入JS文件 在需要调用JS接口的页面引入JS文件:http://res.wx.qq.com/open/js/jweixin-1.0.0.js三、通过config接口注入权限验证配置 在需要自定义分享的页面必须注入配置信息: 例如:
2015-12-31 14:20:33 645 11
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人