上一页 1 ··· 5 6 7 8 9 10 下一页
摘要: 1、标识符与关键字标识符遵循两条规则:1)只要是Unicode编码的字母、下划线及大多数非英文语言字母都可以充当引导字符,后续字符可以是任意引导字符或任意非空格字符,大小写敏感2)不能与关键字同名约定:1)不要使用Python预定义的标识符名对自定义标识符进行命名 dir(__builtins__)可以查看内置属性2)名的开头和结尾都使用下划线的情况应该避免使用2、Integral类型:int 与bool布尔表达式中,0与False表示False,其他任意整数与True表示True数字表达式中,True表示1,False表示0如 i+=True 可以对i进行递增操作1)整数整数的大小只受限于机 阅读全文
posted @ 2013-09-12 10:27 liutoutou 阅读(224) 评论(0) 推荐(0) 编辑
摘要: Hive分区表 在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作。有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念。分区表指的是在创建表时指定的partition的分区空间。Hive可以对数据按照某列或者某些列进行分区管理1、一个表可以拥有一个或者多个分区,每个分区以文件夹的形式单独存在表文件夹的目录下。2、表和列名不区分大小写。3、分区是以字段的形式在表结构中存在,通过describe table命令可以查看到字段存在,但是该字段不存放实际的数据内容,仅仅是分区的表示。Hive桶 对于每一个表(table)或者分区,Hive可以.. 阅读全文
posted @ 2013-09-11 09:36 liutoutou 阅读(852) 评论(0) 推荐(0) 编辑
摘要: 1、Hive简介Hive是构建在Hadoop上的数据仓库平台,设计目标是让Hadoop上的数据操作与传统SQL结合,让熟悉SQL人员容易操作Hadoop。Hive可以在HDFS上构建数据仓库来存储结构化数据,提供类似SQL的HiveQL,通过解析,HiveQL在底层被转换为相应的MapReduce操作。2、组成用户接口主要有三个:CLI,Client 和 WUI。其中最常用的是 CLI,Cli 启动的时候,会同时启动一个 Hive 副本。Client 是 Hive 的客户端,用户连接至 Hive Server。在启动 Client 模式的时候,需要指出 Hive Server 所在节点,并且在 阅读全文
posted @ 2013-09-11 09:18 liutoutou 阅读(474) 评论(0) 推荐(0) 编辑
摘要: 1、创建HDFS目录 1 import java.io.IOException; 2 3 import org.apache.hadoop.conf.Configuration; 4 import org.apache.hadoop.fs.FileSystem; 5 import org.apache.hadoop.fs.Path; 6 7 //创建HDFS目录 8 public class MakeDir { 9 public static void main(String[] args) throws IOException{10 Configuration c... 阅读全文
posted @ 2013-09-10 10:51 liutoutou 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 1、二分查找 1 def BinarySearch(list,left,right,key): 2 if left==right: 3 if list[left]==key: 4 return left 5 else: 6 return -1 7 else: 8 middle=math.ceil((left+right)/2) 9 if list[middle]>key:10 find= BinarySearch(list,left,midd... 阅读全文
posted @ 2013-09-09 10:48 liutoutou 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 1、冒泡排序1 def bubbleSort(list):2 for i in range(len(list)):3 for j in range(len(list)-1,i,-1):4 if list[j-1]>list[j]:5 temp=list[j-1]6 list[j-1]=list[j]7 list[j]=temp8 9 return listView Code 2、归并排序 1 def Merge(... 阅读全文
posted @ 2013-09-09 10:44 liutoutou 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 文件读取的过程如下:使用HDFS提供的客户端开发库Client,向远程的Namenode发起RPC请求;Namenode会视情况返回文件的部分或者全部block列表,对于每个block,Namenode都会返回有该block拷贝的DataNode地址;客户端开发库Client会选取离客户端最接近的DataNode来读取block;如果客户端本身就是DataNode,那么将从本地直接获取数据.读取完当前block的数据后,关闭与当前的DataNode连接,并为读取下一个block寻找最佳的DataNode;当读完列表的block后,且文件读取还没有结束,客户端开发库会继续向Namenode获取下 阅读全文
posted @ 2013-09-06 16:56 liutoutou 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 1.输入文件: 文件是MapReduce任务的数据的初始存储地。正常情况下,输入文件一般是存在HDFS里。这些文件的格式可以是任意的;我们可以使用基于行的日志文件,也可以使用二进制格式,多行输入记录或其它一些格式。这些文件会很大—数十G或更大。2. 输入格式:InputFormat类定义了如何分割和读取输入文件,它提供有下面的几个功能:选择作为输入的文件或对象;定义把文件划分到任务的InputSplits;为RecordReader读取文件提供了一个工厂方法; Hadoop自带了好几个输入格式。其中有一个抽象类叫FileInputFormat,所有操作文件的InputFormat类都是从它那. 阅读全文
posted @ 2013-09-06 16:42 liutoutou 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 1)、逻辑模型Hbase 以表的形式存储数据,每个表由行和列组成,每个列属于一个特定的列族。表中由行和列确定的存储单元称为一个元素,每个元素保存了同一份数据的多个版本,由时间戳来标识。行健是数据行在表中的唯一标识,并作为检索记录的主键。行健可以是任意字符串(最长64KB),并按照字典序进行存储。访问表中行的三种方式:(1)通过单个行健访问(2)给定行健的范围访问(3)全表扫描列的定义::,Hbase在磁盘上按照列族存储数据元素由行健、列(:)和时间戳唯一确定,元素中的数据以字节码的形式存储,没有类型之分。2)物理模型Hbase是按照列存储的稀疏行/列矩阵,物理模型实际上就是把概念模型中的一个行 阅读全文
posted @ 2013-08-15 16:30 liutoutou 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 1、Encapsulate Collection(封装集合) :把集合进行封装,只提供调用端需要的接口;有些时候并不需要把所有操作暴露给用户,只需要给用户需要的操作即可,做法就是封装。2、Move Method(移动方法) :即把方法放到合适的位置(通常指合适的类中)。如果一个方法经常被另外一个类使用时,或者该方法本身就不应该放在这个类里面,那么应该考虑将其移动到合适的类中3、Pull Up Method(提升方法):提升方法是指将一个很多继承类都要用到的方法提升到基类中,这样可以减少代码量,同时让类的结构更清晰,如果不是每个子类都有这个方法的话,可以考虑使用接口或者其他方式4、Push Do 阅读全文
posted @ 2013-08-07 13:58 liutoutou 阅读(491) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 下一页