zoukankan      html  css  js  c++  java
  • 使用hadoop命令rcc生成Record 一个简单的方法来实现自己的定义writable对象

     
    hadoop 的bin文件夹以下一个rcc命令,网上介绍非常少。看了一下源代码。发现能够用来生成 java和c++的hadoop Record 类代码,比起自己直接实现writable 接口。简单非常多并且不easy出错,最好还是试一下。

    详细方法例如以下:

    >rcc
    Usage: rcc --language [java|c++] ddl-files
     
    1 新建 ddl文件
    >vim stud.ddl
    module com.xschao.bean {
    class Stud{
    ustring name;
    long id;
    int age;
    ustring time;
    }
    }

    其它的类型补充,详细是啥自行脑补:
    ""byte"",
    ""boolean"",
    ""int"",
    ""long"",
    ""float"",
    ""double"",
    ""ustring"",
    ""buffer"",
    ""vector"",
    ""map"",


    2 运行编译命令
    > rcc --language java stud.ddl
    查看生成的文件:

    >tree
    .
    |-- com
    | `-- xschao
    | `-- bean
    | `-- Stud.java
    |-- command_example.sh
    `-- stud.ddl
    3 directories, 3 files
    Stud.java即为生成的java代码
    // File generated by hadoop record compiler. Do not edit.
    package com.xschao.bean;
    public class Stud extends org.apache.hadoop.record.Record {
    private static final org.apache.hadoop.record.meta.RecordTypeInfo _rio_recTypeInfo;
    private static org.apache.hadoop.record.meta.RecordTypeInfo _rio_rtiFilter;
    private static int[] _rio_rtiFilterFields;
    static {
    _rio_recTypeInfo = new org.apache.hadoop.record.meta.RecordTypeInfo("Stud");
    _rio_recTypeInfo.addField("name", org.apache.hadoop.record.meta.TypeID.StringTypeID);
    _rio_recTypeInfo.addField("id", org.apache.hadoop.record.meta.TypeID.LongTypeID);
    _rio_recTypeInfo.addField("age", org.apache.hadoop.record.meta.TypeID.IntTypeID);
    _rio_recTypeInfo.addField("time", org.apache.hadoop.record.meta.TypeID.StringTypeID);
    }
    private String name;
    private long id;
    private int age;
    private String time;
    public Stud() { }
    public Stud(
    final String name,
    final long id,
    final int age,
    final String time) {
    this.name = name;
    this.id = id;
    this.age = age;
    this.time = time;
    }

    。。

    。。。。

    。。。。。。

    。。

    。。。



    ok










    格格巫婆--蓝精灵- 

    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    电子器件选型:保险丝
    智能硬件类产品测试项目总结
    PCB设计铜箔厚度、线宽和电流关系
    可控硅设计经验总结
    反激变压器安匝比
    外面的世界很精彩,然而等待你的人却可能已不在
    《一条狗的使命》观后感
    HT7A6312—— 离线开关电源小功率初级转换开关IC 记录总结
    Linux
    Python
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4620797.html
Copyright © 2011-2022 走看看