`
zhaomengsen
  • 浏览: 207300 次
  • 性别: Icon_minigender_1
  • 来自: 河北
社区版块
存档分类
最新评论
文章列表
用户自定义函数 继承UDF,重写evaluate方法即可  以 length 为例 例子如下 import org.apache.hadoop.hive.ql.exec.UDF; public class MD5Hash extends UDF { public String evaluate(String in) { // 请在此实现 } } hive 怎么调用呢 hive 把一切操作单元 看成operater operater 是hive 逻辑操作单位 operater 下面 fileSinkOperator filter Operator Groupby Operator KeyW ...

aaa

Spark在读写关系型数据表时提供了DataFrameReader和DataFrameWriter DataFrameReader Interface used to load a [[DataFrame]] from external storage systems (e.g. file systems, * key-value stores, etc). Use [[SQLContext.read]] to access this.
隐式转换 缺少好完,但是对于 java对类方法严格要求, 确实起到补充作用。 java 如果实现需要代码开发大量代码 我估计新的java代码也会引入这些方法。 import java.io.File import scala.io.Source /* @author zhao */ class RichFile(val file:File){   def read=Source.fromFile(file.getPath()).mkString   } object Context {   implicit def file2RichFile(file:File)=new RichF ...
先看putIfAbsent 这个方法 线程安全的情况修改值 ConcurrentHashMap的putIfAbsent 这个方法在key不存在的时候加入一个值,如果key存在就不放入,等价:    if (!map.containsKey(key))       return map.put(key, value);   else        return map.get(key); 测试代码: 复制代码 public class Test {     public static void main(String[] args) {         ConcurrentHashMap&l ...
private[spark] abstract class BlockStore(val blockManager: BlockManager) extends Logging {   def putBytes(blockId: BlockId, bytes: ByteBuffer, level: StorageLevel): PutResult   /**    * Put in a block and, possibly, also return its content as either bytes or another Iterator.    * This is use ...
Spark 调优 因为大部分Spark程序都具有“内存计算”的天性,所以集群中的所有资源:CPU、网络带宽或者是内存都有可能成为Spark程序的瓶颈。通常情况下,如果数据完全加载到内存那么网络带宽就会成为瓶颈,但是你仍然需要对 ...
MetadataCleaner运行定时任务周期性的清理元数据(metadata),有6种类型的元数据:MAP_OUTPUT_TRACKER,executor跟踪各个map任务输出的存储位置的数据,根据spark.cleaner.ttl.MAP_OUTPUT_TRACKER设置清理时间,默认值为-1,表示不清理; SPARK_CONTEXT,SparkContext中记录缓存到内存中的RDD的数据结构,根据spark.cleaner.ttl.SPARK_CONTEXT设置清理时间,默认值为-1,表示不清理;; HTTP_BROADCAST,采用http方式广播broadcast的元数据,根据s ...
Scala implicit implicit基本含义 在Scala中有一个关键字是implicit, 之前一直不知道这个货是干什么的,今天整理了一下。 我们先来看一个例子: def display(input:String):Unit = println(input)我们可以看到,display函数的定义只是接受String类型的入参,因此调用display("any string")这样的函数是没问题的。但是如果调用display(1)这样的入参不是String类型的话,编译会出错的。 如果我们想让display函数也能够支持Int类型的入参的话,除了我们重新定一个 ...
Scala中提供相对轻便的语法定义匿名函数。在源代码中的匿名函数被调用函数文本,并在运行时,函数文本被实例化为调用的函数值的对象。 Scala支持一流的功能,这意味着可以表达功能文本语法功能,即,(x: Int) => x + 1,函数都可以通过对象,这是所谓的函数值来表示。下面的表达式创建一个后继函数的整数: var inc = (x:Int) => x+1 变量inc现在可以使用以通常的方式的函数: var x = inc(7)-1 另外,也可以用多个参数定义的函数如下: var mul = (x: Int, y: Int) => x*y 变量mul现在可以使用以通 ...
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/137.html 一、Redis提供了哪些持久化机制:     1). RDB持久化:     该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。        2). AOF持久化:     该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。     3). 无持久化:     我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可以将Redis视为一 ...
所谓的推测执行,就是当所有task都开始运行之后,Job Tracker会统计所有任务的平均进度,如果某个task所在的task node机器配置比较低或者CPU load很高(原因很多),导致任务执行比总体任务的平均执行要慢,此时Job Tracker会启动一个新的任务(duplicate task),原有任务和新任务(一个task会有多个attempt同时执行)哪个先执行完就把另外一个kill掉,这也是我们经常在Job Tracker页面看到任务执行成功,但是总有些任务被kill,就是这个原因。另外,根据mapreduce job的特点,同一个task执行多次的结果是一样的,所以task只要 ...
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/134.html?1455807040 一、概述:       在该系列的前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String、List、Set、Hashes和Sorted-Set。这些命令都具有一个共同点,即所有的操作都是针对与Key关联的Value的。而该篇博客将主要讲述与Key相关的Redis命令。学习这些命令对于学习Redis是非常重要的基础,也是能够充分挖掘Redis潜力的利器。       在该篇博客中,我们将一如既往的给出所有相关命令的 ...
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/131.html?1455808279 一、概述:       字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或 ...
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/141.html 一、请求应答协议和RTT:     Redis是一种典型的基于C/S模型的TCP服务器。在客户端与服务器的通讯过程中,通常都是客户端率先发起请求,服务器在接收到请求后执行相应的任务,最后再将获取的数据或处理结果以应答的方式发送给客户端。在此过程中,客户端都会以阻塞的方式等待服务器返回的结果。见如下命令序列:    代码如下: Client: INCR X     Server: 1     Client: INCR X     Server: ...
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/135.html?1455806987 一、概述:       和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制。在Redis中,MULTI/EXEC/DISCARD/WATCH这四个命令是我们实现事务的基石。相 ...
Global site tag (gtag.js) - Google Analytics