- 博客(44)
- 资源 (1)
- 收藏
- 关注
sqoop导入数据脚本
sqoop export \ -D mapred.job.queue.name=hive_user \ --connect jdbc:mysql://${host}:${port}/${db} \ --username ${username} \ --password ${password} \ --ta...
2018-09-30 11:14:26
432
原创 复盘一次数据修复
源起 最近接到一次刷新线上数据库的任务。目标是对线上MYSQL数据库的订单表非重要字段进行数据修复。待修改的数据集合大概有130万条。 计划 由于业务逻辑比较复杂,所以无法用几句SQL语句来解决问题。最终考虑使用java程序写的任务来进行这个操作。一是查询service已存在,如果使用python重新开发service,存在引入新问题的隐患,而且未必会快;...
2018-09-03 21:17:33
282
原创 初始化目录脚本
一个线上脚本一般需要使用将数据放到对应的目录。一旦目录被错误删除,整个脚本流程可能被打破,导致无法继续执行。以下分享了对应的代码。 #!/bin/sh#获取基础目录SOURCE="$0"while [ -h "$SOURCE" ];do # resolve $SOURCE until the file is no longer a symlink ...
2018-09-03 12:18:33
278
原创 linux安装lrzsz方法
下载wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz 安装tar zxvf lrzsz-0.12.20.tar.gz cd lrzsz-0.12.20./configure --prefix=/usr/local/lrzszmakemake installcd /us...
2018-07-24 12:33:58
227
polarDB和DRDS压力测试
测试工具: Sysbench 测试对象:阿里云DRDS(8核16G)和PolarDB(2核4G) 测试方法:Sysbench脚本压力测试。数据规模为10个表,每个表1000万行数据。 数据:256线程1小时压测 DRDSPolarDBCPU1c12c...
2018-07-04 13:52:50
2176
3
原创 Spring注入静态变量
本文写了一个例子,用来实现Spring注入静态变量。静态变量无法直接注入的原因,是static变量的初始化在类加载器加载的时候进行,它早于Web引擎启动的时间。一种解决方案是在执行期通过变量注入的形式进行注入。 package com.my.util;import javax.annotation.Resource;import org.springfra...
2018-01-16 14:33:02
141
原创 关于写代码的分享
1. 写代码的目的唯一的目的就是解决需求。但是代码的质量体现的是个人工作能力。如果接受上面的论述,那么请在开工前,确定需求,然后重视代码质量。所谓确定需求,就是需求描述落到官方文档,且描述不具有二义性。有一个经验:需求描述越冗长,这个需求越有可能是混沌的。所以要警惕这样的需求。所谓的代码质量:规范性、正确性、高效性、鲁棒性。代码书写延续规范程序正确完成需求程序运转...
2018-01-11 17:23:02
133
原创 java支持Https协议的一种方案
原理是认为所有的网站都是可信的。 使用的包情况: <!-- http client --> <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</arti...
2017-08-24 10:23:47
486
原创 面向算法效果的数据统计案例
现在需要做一个关于推荐算法的效果统计报表。产品希望知道算法在每个相关指标的效果如何,比如点击率,注册率。另外,算法工程师想知道算法的预估的效果和最终效果的差异有多大,比如预估的点击率和实际点击率的差异。 来看看我们的思路:首先,延续我们做业务统计的经验,投放效果的公式很容易得到;另外,算法工程师在日志里给出了每次算法的预估效果。 产品经理...
2017-03-20 11:13:32
177
原创 commons-pool对象池实例(二)
改造上一篇的代码,实现了KeyedObjectPool. 对象池实现类:package com.my.pool.pooledobject;import org.apache.commons.pool2.KeyedObjectPool;public class KeyedPooledStringBuffer { private KeyedObjectPool<...
2017-02-06 18:09:05
223
原创 commons-pool对象池实例(一)
使用commons-pool 框架实现了一个对象池例子。将官网的例子稍微改动了一下而已。使用的版本是:<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2....
2017-02-06 17:17:29
305
原创 线性回归的python例子
参考的文章:http://blog.youkuaiyun.com/lulei1217/article/details/49385531http://blog.youkuaiyun.com/LULEI1217/article/details/49386295 我将该作者上面两篇文章中的代码修改后,变成下面的样子。数据集在附件中。 #coding:utf-8import matplotlib....
2016-12-09 18:48:09
454
原创 MySQLdb的一个例子
保存一个例子。使用MySQLdb库去连接MySQL数据库。 import MySQLdb#创建连接conn=MySQLdb.connect(host=db_url,port=db_port,user=db_user,passwd=db_pwd,db=db_name)cur=conn.cursor()try: #加入临时变量" c...
2016-11-22 15:24:26
134
原创 ElasticSearch的多维度聚合心得
最近拿ElasticSearch当数据库使用,应用场景中用到了多维度聚合的需求。 聚合需求是:项目id,渠道id,产品id这样的三维度聚合。变成SQL语句的话,大概是SELECTproject_id,channel_id,item_id,SUM(sell_num),SUM(order_num),SUM(sale_income)Group By proje...
2016-10-28 11:16:37
1658
原创 Hive To Elasticsearch
hive数据往elasticsearch导入的时候,需要用到一个插件。详情可以查看官网。 具体的用法是这样:在elasticsearch添加表。在hive创建外部表往hive插入数据 关键的步骤是在hive创建表的时候的定义: CREATE EXTERNAL TABLE `report`( `id` string, `rep_date` s...
2016-09-21 17:52:50
287
原创 使用netty4.0实现Http请求的分发
思路是使用executor来处理被分发的请求。 主类的代码: package com.mytest.main;import java.net.InetSocketAddress;import java.util.HashMap;import java.util.Map;import org.slf4j.Logger;import org.slf4j.L...
2016-09-02 18:51:12
2077
原创 人生苦短用tez
tez是什么? tez官网 普通执行hive 的速度: 用tez引擎后的速度: 使用方法: set hive.execution.engine = tez; 默认值:set hive.execution.engine = mr; ...
2016-09-02 10:39:13
219
原创 url encode列表
来自 w3school URL 编码 - 从 %00 到 %8f ASCII ValueURL-encodeASCII ValueURL-encodeASCII ValueURL-encodeæ%000%30`%60 %011%31a%61 %022%32b%62...
2016-09-01 11:50:35
6929
原创 MapReduce数据倾斜的解决经验
数据倾斜的意思就是某些key对应的信息条数过多,导致对应reducer的内存溢出。 解决这个问题,要区分一下问题引起的原因。无非是:由于对数据构成认识不足,导致启动配置资源的不合理刷量数据的不合理涌入 对于第一种情况,我们可以通过调整reduce的个数,以及reducer的jvm大小来解决。 对于第二种...
2016-08-29 13:58:08
282
原创 shell按日期的循环
经常有需要按日期运行脚本补数据。有时候是好几天的。但是可能整个过程下来会超过24个小时。最早的时候是这样的一个方案。for((i=0;i<10;i++));do date=`date -d "$i days ago" +"%Y%m%d"` sh dojob.sh $datedone 这个方案的不足就...
2016-08-18 19:49:41
768
原创 一个Maven的pom实现
留给自己以后用的pom实现。 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven....
2016-08-11 10:45:23
96
原创 Python2.7安装numpy
系统Window8-64bit 安装python下载地址: https://www.python.org/downloads/windows/运行msi系统变量设置path.假设安装地址是:C:\python27cmd 下试试python -V 查看版本号,以验证是否成功安装python 安装pip下载ez_setup.py. https...
2016-08-09 17:56:57
180
原创 jdbc连接数据库的实现
写了一点测试用例。很久没有使用过jdbc了。写起来还是怪生疏的。还是习惯JDBCTemplate啊。大家做工程还是使用框架能快一点点。 package com.myTest.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;...
2016-08-09 14:41:54
102
原创 截取固定长度字符串显示在页面,多余部分显示为省略号(区分汉字和字符)
2009-05-07 网上给的方法就是在取出之时先做处理,大致思路: 1. 测试具体长度 2. 超过则进行截断+“....” 否则,保持原貌 3. 如果是中文,则应注意中文存储是双字节存储。所以通用法则就是取偶数长度(例如,10、20、30)。 代码很简单,这里没有例子。...
2016-07-05 11:46:34
456
原创 Thinking in Java对象设计的一些tips
2009-06-20 Guidelines for object development These stages suggest some guidelines when thinking about developing your classes: 1. Let a specific problem generate a class, then let the class g...
2016-07-05 11:41:16
105
原创 [转载]Eclipse设置源文件的编码方式
文章来源:http://hi.baidu.com/vhook/blog/item/503a13135aedb75bf919b834.html 如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使 Java文件使用UTF-8编码。然而,Eclipse工作空间(workspace)的缺省字符编码是操作系统缺省的编码,简体中文操作系统 (Windows...
2016-07-05 11:35:30
119
原创 java 输出编码为utf-8的文件的方法
文章来源:http://hi.baidu.com/zdz8207/blog/item/5dc39b22f070fbfbd6cae27d.html /*** 输出文件,编码为UTF-8 用记事本另存为:fileContent 全部为英文则为ansi 包含中文则为UTF-8* @param filePathAndName* @param fileContent*/p...
2016-07-05 11:31:20
1754
原创 [转载]DynaActionForm (动态ActionForm)
文章来源:http://ray-lin.javaeye.com/blog/368437 1)什么是动态ActionForm 动态ActionForm是struts从1.1版本开始引入一项新的技术,即在创建ActionForm时可以不用通过编程的方式而只要通过struts-config.xml文件中进行配置,以后在struts运行时,会自动根 据struts-config...
2016-07-05 11:21:46
131
原创 [转载]Hibernate的两级缓存机制
文章来源:http://www.javaeye.com/topic/626208 Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管 理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配 置和更改...
2016-06-30 17:14:34
127
原创 如何生成Date对象
2011-12-28 这里指的是java.util.Date对象方法1:构造函数 Date date1 = new Date(System.currentTimeMillis()); //利用Date的构造函数 方法2: 最常用用于实践的方法,利用字符串转换。 SimpleDateFormat formatter = new Simpl...
2016-06-30 17:08:12
160
原创 UML理解——用例图
2012-02-14 UML的作用是为了描述需求,方便工作。如果可以提高沟通的效率,就挑合适的图来使用。如果不好使,就不用。这就是使用UML的时机。是否使用也因人而异,不熟悉不喜欢不爱当文档苦逼,能描述清楚也无妨啊。但是,用一下又不会怀孕! 用例图(Usecase Diagram) 具体的名词解释可以去问经典,在此不做赘述。 实施时...
2016-06-30 16:59:51
171
Java使用Scala代码
2012-04-13 众所周知,Scala可以使用Java编写的所有类和方法。这是Scala的一个非常重大的优点。由于Scala编写的代码最终也会编译成.class文件,因此理论上Java也可以使用Scala的编写的类和方法。但是因为Scala拥有Java所没有的一些特质,并且在实际编译器处理之后会出现独特的变化,所以Java直接使用Scala编写出来的东西会需要一点额外工作。...
2016-06-30 16:41:43
403
Hadoop部署心得
2012-04-20 超简易心得,以免自己忘记 1. 安装JVM 2. 打开sshps -ef | grep sshd 查看是否启用ssh3. 解压hadoop 4.配置以下文件:hadoop-env.sh,core-site.xml,hdfs-site.xml,mapred-site.xml,1)masters记录运行第二名称节点的机器名(在n...
2016-06-28 11:32:42
649
原创 Hadoop名词个人理解
2012-05-16 关于业务流程把一次分布式计算看成是农业的生产过程,hadoop则是一种生产解决方案。 Map:播种的阶段,最后会产出粮食的粗制产品。看做是执行培养活动的农田。 Combiner:顾名思义,联合收割机。把粗制产品收割,然后打包起来等待加工。可以提高加工阶段的效率,当然可以不选择使用。每个农田里用各自的收割机,没听说过一台收割机打遍天下。...
2016-06-28 11:19:52
162
原创 关于HIVE的小白经验
最后更新2016-11-24 1. 关于建立数据表 create table在本地系统创建。create external table在HDFS。例子:CREATE EXTERNAL TABLE atr_click_reqid ( atr_reqid string) PARTITIONED BY (datecol string) ROW...
2016-06-28 11:13:00
163
原创 Hadoop维护心得
2012-09-04 1. mapper与reducer数量每个子任务是开启一个新的进程来进行的。因此如果不限制mapper或reducer的数量(一般reducer数量少),jobtracker会像个恶毒的老板一样,让某些节点工作到死。 2. include文件与exclude文件最好配置include文件与exclude文件,使得在新插入节点与撤销节点时,能做更少的...
2016-06-28 10:55:57
241
原创 为Hadoop集群增加新节点
2012-09-20 前言为一个已存在的Hadoop集群添加新节点,非常简单。可以算即插即用。 首先是要遵循一个规则,集群中的所有机器的Hadoop涉及到的配置位置要一致:安装路径,JDK(使用的版本与安装路径),所属用户与群组。 然后开始做下面的事情: 步骤1. 拷贝一份集群上都用的hadoop包到新节点机器上的指定路径上。我建议一直有一份...
2016-06-28 10:51:54
190
原创 MongoDB 几个小命令
2012-10-31 1.导出方法A例子:mongoexport --host 127.0.0.1 --port 00000 -d db_test -c stats -q "{'key':{'\$gte':'2012-04','\$lt':'2012-05'}}" -f key,value -o ~/stats04解释:导出域key的值在2012-04到2012-05之间的数据...
2016-06-27 18:42:49
96
原创 Storm在推荐系统中的应用
这篇文章也是我写的。懒得重新编辑了。 http://blog.youkuaiyun.com/ytbigdata/article/details/49074763
2016-06-27 18:36:22
242
原创 为Hadoop集群撤销节点
2012-12-07 步骤:1. 在namenode中应该有至少一个exclude文档,方便将要移除的机器写入其中。对于hdfs,配置属性hdfs.hosts.exclude;对于mapred,配置属性mapred.hosts.exclude。可以都指向该文件。 2. 手动关闭待下架机器的tasktracker。方法:在待下架机器上执行 $HADOOP_HOM...
2016-06-27 18:28:09
270
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人