Cloudera Development Kit(CDK) 简介

guibin.beijing@gmail.com

2013.07.02

CDK简介

CDK(Cloudera Development Kit) 就是一些Cluodera开发的库、工具和文档的集合。CDK这个项目存在的价值在于使得在基于Hadoop生态系统上开发系统更加容易。这个项目是按照模块组织的,模块之间或者独立,或者依赖CDK内的其他模块,但是尽量少的依赖外部项目模块。CDK的文档主页在这里:http://cloudera.github.io/cdk/docs/0.2.0/index.html,项目主页:http://cloudera.github.com/cdk/cdk-data

当前CDK有以下三个模块:

  • CDK Data

CDK Data 模块在存储系统(HDFS)之上提供了逻辑抽象,使得用户能依据“records, datasets, and dataset repositories”这些概念去思考和操作数据。CDK Data的适用场景:如果你正在寻求一种方式
直接向存储系统中读/写数据记录,那么CDK Data应该就是你想要的。CDK Data 提供了操作Cloudra平台中数据集的简单、直观的API。换句话说,CDK Data所处的位置比 Hadoops input/output formats API低一个等级,比标准的HDFS+AVRO API高一个等级。

  • CDK Example
CDK Example提供了一些例子用于学习和适用CDK。
  • CDK Tools
CDK Tools提供了命令行公斤和API用于操作CDK的公共功能。

源代码

CDK的源代码地址:
https://github.com/cloudera/cdk


为什么要用CDK Data而不使用HDFS提供的API直接操作HDFS?

HDFS确实提供了用于操作HDFS的API,但是这些API(
FSInputStream,
FSOutputStream)都是面向字节流的,太底层、很不直观。
大多数的开发者更愿意思考更高层次的对象,而不是底层的文件、目录;而且开发者喜欢将表、数据集的概念移植到存储在HDFS上的数据上,因为这样更易于理解。CDK Data就着眼于这个需求,向开发者提供了立即可用的、令人愉快的方式用于操作Hadoop生态系统,并且不损失操作数据的效率。

CDK Data目前已知的局限性

  1. 目前不可以rename dataset。
  2. 当多进程操作数据集时,目前没有锁机制和进程间的协调机制。
  3. 不能确保被FileSystem*实现的writer所生成的文件名是真正唯一的。
  4. 所有的data set都使用Snappy压缩,目前不可以disable压缩或者更换不同的压缩方式。




Cloudera Development Kit(CDK) 简介的更多相关文章

  1. 2.2、CDH 搭建Hadoop在安装(安装Java Development Kit)

    第2步:安装Java Development Kit 要安装Oracle JDK,您可以使用Cloudera Manager安装Cloudera提供的版本,也可以直接安装Oracle的其他版本. 继续 ...

  2. FBX Software Development Kit

    FBX Software Development Kit The FBX Software Development Kit (FBX SDK) allows software developers t ...

  3. Data Plane Development Kit (DPDK): Getting Started

    参考:dpdk getting started 系统: Ubuntu 14.04 内核信息: 执行 uname -a Linux chen-VirtualBox 3.13.0-32-generic # ...

  4. eclipse解压后启动弹出A Java Runtime Evironment(JRE) or Java Development Kit(JDK)....

    系统环境:win7 64bit JDK:jdk-7u79-windows-x64 Eclipse:eclipse-jee-helios-win32 启动eclipse:弹出A Java Runtime ...

  5. ubuntu myeclipse 启动时提示 A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avail ....

    jdk已经安装过但是启动eclipse时提示“A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avail  ...

  6. How to install JDK (Java Development Kit) on Linux

    This tutorial will guide you on how to install JDK (Java Development Kit) on Linux. Since I use Cent ...

  7. Linux 下报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must解决方案

    一.报错环境:在Linux mint下,前几天还用得很好的的eclipse,今天开机不知为什么这样. Linux 下报错:A Java RunTime Environment (JRE) or Jav ...

  8. Java(TM) SE Development Kit 6 卸载不掉怎么办

    错误描述:Java 安装时断电,再次安装java时,提示“您的电脑上已经安装了此软件.是否要重新安装”,点“是”后出现“内部错误2753:RegUtils”,点“确定”又出现上述提示. 解决办法 :使 ...

  9. Linux 下安裝 Java SE Development Kit(JDK)並配置環境變量

    下載頁面:http://www.oracle.com/technetwork/java/javase/archive-139210.html 打開“Java SE 7”,再打開“Java SE Dev ...

随机推荐

  1. 使用SQL Server Driver for PHP解决PHP连接MSSQL乱码的问题

    原文 使用SQL Server Driver for PHP解决PHP连接MSSQL乱码的问题 最近帮客户写了一个.net商城网站的发布接口,大家都知道.net一般都使用MSSQL数据库,但鱼丸不会. ...

  2. each与list的用法

    each与list的用法(PHP学习) 1.each的用法 先看API array each ( array &$array ) api里是这么描述的:each — 返回数组中当前的键/值对并 ...

  3. sql点滴41—mysql常见sql语法

    原文:sql点滴41-mysql常见sql语法 ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename ...

  4. 快速构建Windows 8风格应用3-打包发布应用

    原文:快速构建Windows 8风格应用3-打包发布应用 本篇博文主要介绍如何打包应用程序,成功后如何部署应用程序,最后介绍如何发布应用程序到应用商店中. 如何打包Windows 8风格应用程序呢? ...

  5. [译]Java 设计模式之工厂

    (文章翻译自Java Design Pattern: Factory) 1.Java工厂模式的来历 工厂设计模式用于创建基于不同参数的对象.下面的例子就是在一个工厂里创建一个人.如果我们向工厂要一个b ...

  6. SQLServer通过链接服务器远程删除数据性能问题解决

    原文:SQLServer通过链接服务器远程删除数据性能问题解决 在上一遍文章中介绍了SQLServer通过链接服务器访问Oracle性能问题的解决方法,本文介绍链接服务器下远程删除SQLServer数 ...

  7. 一个用MFC实现Com聚合样本

    ComATLATLMFCMFC MFCIUnknownMFCCCmdTargetComMFCCom MFCCOM 1. 1.1 #pragma once typedef long HRESULT; / ...

  8. TodoList开发笔记 – PartⅠ

    做了一年多的桌面软件,最近开始转向Web方面的开发,既然比较熟悉Net那么首当其冲就是学习ASP.Net,以及HTML.CSS.Javascript. 为了检验这个把星期来的学习成果,着手做了一个To ...

  9. 个推A/B测试评测

    A/B测试在各类网站设计中已经是比较常见的,本文着重讲讲A/B测试在应用推送领域的作用. 目前国外开通A/B测试的推送服务商只有swrve,而国内的个推也在前不久发布的smart push 2.0中集 ...

  10. 学习Sass之安装Sass

    学习Sass之安装Sass 为什么使用Sass 作为前端(html.javascript.css)的三大马车之一的css,一直以静态语言存在,HTML5火遍大江南北了.javascript由于NODE ...