<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[blastbaobao的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/blastbaobao</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; blastbaobao]]></copyright><item><title><![CDATA[linux句柄泄露问题]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/41172011</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/41172011</guid><author>blastbaobao</author><pubDate>Sun, 16 Nov 2014 12:51:16 +0800</pubDate><description><![CDATA[我们在开发linux在线服务器的时候经常会遇会句柄泄露的问题。因为在linux系统设计里面遵循一切都是文件的原则，即磁盘文件、目录、网络套接字、磁盘、管道等，所有这些都是文件，在我们进行打开的时候会返回一个fd，即是文件句柄。如果频繁的打开文件，或者打开网络套接字而忘记释放就会有句柄泄露的现象。在linux系统中对进程可以调用的文件句柄数进行了限制，在默认情况下每个进程可以调用的最大句柄数是102]]></description><category></category></item><item><title><![CDATA[Linux磁盘管理命令df和du区别]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/41171891</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/41171891</guid><author>blastbaobao</author><pubDate>Sun, 16 Nov 2014 12:32:01 +0800</pubDate><description><![CDATA[磁盘是Linux系统中一项非常重要的资源，如何对其进行有效的管理直接关系到整个系统的性能问题。磁盘管理有df、du和fdisk三个常用命令：df用于检查文件系统磁盘占用情况，du检查磁盘空间占用情况，而fdisk用于磁盘分区。



1．df



df命令可以获取硬盘被占用了多少空间，目前还剩下多少空间等信息，它也可以显示所有文件系统对i节点和磁盘块的使用情况。



d]]></description><category></category></item><item><title><![CDATA[ssh公钥无需输入密码访问其他机器]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40684725</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40684725</guid><author>blastbaobao</author><pubDate>Sat, 01 Nov 2014 20:52:33 +0800</pubDate><description><![CDATA[想要ssh到另外一台机器且不用输入密码，必须在两台之间建立信任。

例如现在要在A与B之间建立信任，

1.产生公钥和私钥（在A上操作）

#cd ~/.ssh

#ssh-keygen -t rsa 然后一路回车，如果原来已经有公钥需要输入y来覆盖

2.copy公钥到B（在A上操作）

# scp -p ~/.ssh/id_rsa.pub sherry@B:~/.ssh]]></description><category></category></item><item><title><![CDATA[Hadoop DistributedCache使用及原理]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40684267</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40684267</guid><author>blastbaobao</author><pubDate>Sat, 01 Nov 2014 20:27:52 +0800</pubDate><description><![CDATA[概览

DistributedCache 是一个提供给Map/Reduce框架的工具，用来缓存文件（text,
 archives, jars and so on）文件的默认访问协议为(hdfs://).

 

DistributedCache将拷贝缓存的文件到Slave节点在任何Job在节点上执行之前。

文件在每个Job中只会被拷贝一次，缓存的归档文件会被在Slave节点中]]></description><category></category></item><item><title><![CDATA[Hadoop分布式缓存]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40684043</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40684043</guid><author>blastbaobao</author><pubDate>Sat, 01 Nov 2014 20:14:36 +0800</pubDate><description><![CDATA[下面的示例介绍了如何使用DistributedCache：


     // 为应用程序设置缓存

    

     1. 将所需文件复制到FileSystem:

    

     $ bin/hadoop fs -copyFromLocal lookup.dat /myapp/lookup.dat 

     $ bin/hadoop fs -copyFr]]></description><category></category></item><item><title><![CDATA[MapReduce TotalOrderPartitioner 全局排序]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40655801</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40655801</guid><author>blastbaobao</author><pubDate>Fri, 31 Oct 2014 15:45:52 +0800</pubDate><description><![CDATA[我们知道Mapreduce框架在feed数据给reducer之前会对map output key排序，这种排序机制保证了每一个reducer局部有序，Hadoop 默认的partitioner是HashPartitioner，它依赖于output
 key的hashcode，使得相同key会去相同reducer，但是不保证全局有序，如果想要获得全局排序结果（比如获取top N, bottom N]]></description><category></category></item><item><title><![CDATA[FileInputFormat和CombineFileInputFormat]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40557411</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40557411</guid><author>blastbaobao</author><pubDate>Tue, 28 Oct 2014 21:42:14 +0800</pubDate><description><![CDATA[mapreduce中,一个job的map个数, 每个map处理的数据量是如何决定的呢? 另外每个map又是如何读取输入文件的内容呢? 用户是否可以自己决定输入方式, 决定map个数呢? 这篇文章将详细讲述hadoop中各种InputFormat的功能和如何编写自定义的InputFormat.

 

简介: mapreduce作业会根据输入目录产生多个map任务, 通过多个map任务并行执]]></description><category></category></item><item><title><![CDATA[Hadoop作业调优参数整理及原理]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40512163</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40512163</guid><author>blastbaobao</author><pubDate>Mon, 27 Oct 2014 19:06:38 +0800</pubDate><description><![CDATA[1 Map side tuning 参数
1.1 MapTask 运行内部原理
 

当map task 开始运算，并产生中间数据时，其产生的中间结果并非直接就简单的写入磁盘。这中间的过程比较复杂，并且利用到了内存buffer 来进行已经产生的部分结果的缓存，并在内存buffer 中进行一些预排序来优化整个map 的性能。如上图所示，每一个map 都会对应存在一个内存buffer （Map]]></description><category></category></item><item><title><![CDATA[Hadoop Tool,ToolRunner原理分析]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40405537</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40405537</guid><author>blastbaobao</author><pubDate>Thu, 23 Oct 2014 21:57:58 +0800</pubDate><description><![CDATA[先看Configurable 接口：







1
2
3
4




public interface Configurable {
void setConf(Configuration
 conf);
  Configuration getConf();
}






Configurable接口只定义了两个方法：setConf与 g]]></description><category></category></item><item><title><![CDATA[Avro简介]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40382755</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40382755</guid><author>blastbaobao</author><pubDate>Wed, 22 Oct 2014 21:12:33 +0800</pubDate><description><![CDATA[Avro（读音类似于[ævrə]）是Hadoop的一个子项目，由Hadoop的创始人Doug Cutting（也是Lucene，Nutch等项目的创始人，膜拜）牵头开发，当前最新版本1.3.3。Avro是一个数据序列化系统，设计用于支持大批量数据交换的应用。它的主要特点有：支持二进制序列化方式，可以便捷，快速地处理大量数据；动态语言友好，Avro提供的机制使动态语言可以方便地处理Avro数据。 ]]></description><category></category></item><item><title><![CDATA[Java序列化机制和原理]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40382175</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40382175</guid><author>blastbaobao</author><pubDate>Wed, 22 Oct 2014 20:40:12 +0800</pubDate><description><![CDATA[序列化的必要性
Java中，一切都是对象，在分布式环境中经常需要将Object从这一端网络或设备传递到另一端。
这就需要有一种可以在两端传输数据的协议。Java序列化机制就是为了解决这个问题而产生。
如何序列化一个对象
一个对象能够序列化的前提是实现Serializable接口，Serializable接口没有方法，更像是个标记。
有了这个标记的Class就能被序列化机制处理。
1. ]]></description><category></category></item><item><title><![CDATA[Java Serialization]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40381775</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40381775</guid><author>blastbaobao</author><pubDate>Wed, 22 Oct 2014 20:16:01 +0800</pubDate><description><![CDATA[Java Serialization   

Two of the byte streams, ObjectInputStream and ObjectOutputStream, are specialized streams that let you read and write objects. Reading and writing
 objects is a process know]]></description><category></category></item><item><title><![CDATA[comparator接口与Comparable接口的区别]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/40271237</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/40271237</guid><author>blastbaobao</author><pubDate>Sun, 19 Oct 2014 21:40:36 +0800</pubDate><description><![CDATA[comparator接口与Comparable接口的区别

1. Comparator 和 Comparable 相同的地方

他们都是java的一个接口, 并且是用来对自定义的class比较大小的,

什么是自定义class: 如 public class Person{ String name; int age }.

当我们有这么一个personList,里面包含了person1, pe]]></description><category></category></item><item><title><![CDATA[遍历Map的四种方法1]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/39006397</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/39006397</guid><author>blastbaobao</author><pubDate>Tue, 02 Sep 2014 14:59:06 +0800</pubDate><description><![CDATA[public static void main(String[] args) {


  Map map = new HashMap();
  map.put("1", "value1");
  map.put("2", "value2");
  map.put("3", "value3");
  
  //第一种：普遍使用，二次取值
  System.out.println("]]></description><category></category></item><item><title><![CDATA[遍历Map的四种方法2]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/39006183</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/39006183</guid><author>blastbaobao</author><pubDate>Tue, 02 Sep 2014 14:48:03 +0800</pubDate><description><![CDATA[Iterator> iter=map.entrySet().iterator(); 是什么意思


jieshi]]></description><category></category></item><item><title><![CDATA[遍历Map的四种方法]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/39006153</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/39006153</guid><author>blastbaobao</author><pubDate>Tue, 02 Sep 2014 14:46:20 +0800</pubDate><description><![CDATA[遍历Map的四种方法


public static void main(String[] args) {

  Map map = new HashMap();
  map.put("1", "value1");
  map.put("2", "value2");
  map.put("3", "value3");
  
  //第一种：普遍使用，二次取值
  System]]></description><category></category></item><item><title><![CDATA[（转载）Hive安装与配置——深入浅出学Hive]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/38750547</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/38750547</guid><author>blastbaobao</author><pubDate>Fri, 22 Aug 2014 09:01:31 +0800</pubDate><description><![CDATA[目录：

初始Hive

Hive安装与配置

Hive 内建操作符与函数开发

Hive JDBC

hive参数

Hive 高级编程

Hive QL

Hive Shell 基本操作

hive 优化

Hive体系结构

Hive的原理



第一部分：软件准备与环境规划


Hadoop环境介绍


•Hadoop安装路径]]></description><category></category></item><item><title><![CDATA[mysql授权+限制连接]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/38750365</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/38750365</guid><author>blastbaobao</author><pubDate>Fri, 22 Aug 2014 08:41:10 +0800</pubDate><description><![CDATA[create database hive_metadata;
grant all on hive_metadata.* to hive@'%' identified by 'hive';
grant all on hive_metadata.* to hive@localhost identified by 'hive';
ALTER DATABASE hive_metadata CHARACTE]]></description><category></category></item><item><title><![CDATA[Maprereduce的过程详解]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/38750223</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/38750223</guid><author>blastbaobao</author><pubDate>Fri, 22 Aug 2014 08:14:14 +0800</pubDate><description><![CDATA[Mapper任务的执行过程

每个Mapper任务是一个java进程，它会读取HDFS中的文件，解析成很多的键值对，经过我们覆盖的map方法处理后，转换为很多的键值对再输出。整个Mapper任务的处理过程又可以分为以下几个阶段：

第一阶段是Reducer任务会主动从Mapper任务复制其输出的键值对。Mapper任务可能会有很多，因此Reducer会复制多个Mapper的输出。第二阶段是]]></description><category></category></item><item><title><![CDATA[有关DDL自动提交的种种疑惑]]></title><link>https://blog.youkuaiyun.com/blastbaobao/article/details/17590639</link><guid>https://blog.youkuaiyun.com/blastbaobao/article/details/17590639</guid><author>blastbaobao</author><pubDate>Thu, 26 Dec 2013 20:21:42 +0800</pubDate><description><![CDATA[DDL语句是数据定义语句，包括各种数据对象的创建、修改和删除，以及授权等操作。create ,drop ,alter,TRUNCATE....


在Oracle中DDL语句将转化为修改数据字典表的DML语句。一个简单的修改表的DDL语句，会导致Oracle在后台通过递归SQL语句进行大量的查询和修改的操作。

如果有兴趣，可以通过SQL_TRACE跟踪一下DDL语句，检查一下Oracl]]></description><category></category></item></channel></rss>