当前位置: 首页>>代码示例>>Java>>正文


Java SinkCall.getOutput方法代码示例

本文整理汇总了Java中cascading.scheme.SinkCall.getOutput方法的典型用法代码示例。如果您正苦于以下问题:Java SinkCall.getOutput方法的具体用法?Java SinkCall.getOutput怎么用?Java SinkCall.getOutput使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在cascading.scheme.SinkCall的用法示例。


在下文中一共展示了SinkCall.getOutput方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: sink

import cascading.scheme.SinkCall; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void sink(FlowProcess<JobConf> fp, SinkCall<Object[], OutputCollector> sc)
    throws IOException {
  TupleEntry tuple = sc.getOutgoingEntry();

  if (tuple.size() != 1) {
    throw new RuntimeException("ParquetValueScheme expects tuples with an arity of exactly 1, but found " + tuple.getFields());
  }

  T value = (T) tuple.getObject(0);
  OutputCollector output = sc.getOutput();
  output.collect(null, value);
}
 
开发者ID:apache,项目名称:parquet-mr,代码行数:15,代码来源:ParquetValueScheme.java

示例2: sink

import cascading.scheme.SinkCall; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void sink(FlowProcess<? extends JobConf> fp, SinkCall<Object[], OutputCollector> sc)
    throws IOException {
  TupleEntry tuple = sc.getOutgoingEntry();

  if (tuple.size() != 1) {
    throw new RuntimeException("ParquetValueScheme expects tuples with an arity of exactly 1, but found " + tuple.getFields());
  }

  T value = (T) tuple.getObject(0);
  OutputCollector output = sc.getOutput();
  output.collect(null, value);
}
 
开发者ID:apache,项目名称:parquet-mr,代码行数:15,代码来源:ParquetValueScheme.java

示例3: sink

import cascading.scheme.SinkCall; //导入方法依赖的package包/类
@Override
public void sink( FlowProcess<JobConf> flowProcess, SinkCall<Object[], OutputCollector> sinkCall ) throws IOException {
    // it's ok to use NULL here so the collector does not write anything
    TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
    OutputCollector outputCollector = sinkCall.getOutput();
    if( updateBy != null )
    {
        Tuple allValues = tupleEntry.selectTuple( updateValueFields );
        Tuple updateValues = tupleEntry.selectTuple( updateByFields );

        allValues = cleanTuple( allValues );

        TupleRecord key = new TupleRecord( allValues );

        if( updateValues.equals( updateIfTuple ) )
            outputCollector.collect( key, null );
        else
            outputCollector.collect( key, key );

        return;
    }

    Tuple result = tupleEntry.selectTuple( getSinkFields() );

    result = cleanTuple( result );

    outputCollector.collect( new TupleRecord( result ), null );
}
 
开发者ID:ParallelAI,项目名称:SpyGlass,代码行数:29,代码来源:JDBCScheme.java

示例4: sink

import cascading.scheme.SinkCall; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void sink(FlowProcess<JobConf> flowProcess, SinkCall<Object[], OutputCollector> sinkCall) throws IOException {
	TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
	OutputCollector outputCollector = sinkCall.getOutput();
	Tuple key = tupleEntry.selectTuple(RowKeyField);
	Object okey = key.getObject(0);
	ImmutableBytesWritable keyBytes = getBytes(okey);
	Put put = new Put(keyBytes.get());
	Fields outFields = tupleEntry.getFields().subtract(RowKeyField);
	if (null != outFields) {
		TupleEntry values = tupleEntry.selectEntry(outFields);
		for (int n = 0; n < values.getFields().size(); n++) {
			Object o = values.get(n);
			ImmutableBytesWritable valueBytes = getBytes(o);
			Comparable field = outFields.get(n);
			ColumnName cn = parseColumn((String) field);
			if (null == cn.family) {
				if (n >= familyNames.length)
					cn.family = familyNames[familyNames.length - 1];
				else
					cn.family = familyNames[n];
			}
			if (null != o || writeNulls)
				put.add(Bytes.toBytes(cn.family), Bytes.toBytes(cn.name), valueBytes.get());
		}
	}
	outputCollector.collect(null, put);
}
 
开发者ID:ParallelAI,项目名称:SpyGlass,代码行数:30,代码来源:HBaseRawScheme.java

示例5: sink

import cascading.scheme.SinkCall; //导入方法依赖的package包/类
@Override
public void sink(FlowProcess<JobConf> flowProcess, SinkCall<Object[], OutputCollector> sinkCall)
    throws IOException {
  TupleEntry tupleEntry = sinkCall.getOutgoingEntry();
  OutputCollector outputCollector = sinkCall.getOutput();
  Tuple key = tupleEntry.selectTuple(keyField);
  ImmutableBytesWritable keyBytes = (ImmutableBytesWritable) key.getObject(0);

  if (useSalt) {
    keyBytes = HBaseSalter.addSaltPrefix(keyBytes);
  }

  Put put;
  if (this.timeStamp == 0L) {
    put = new Put(keyBytes.get());
  } else {
    put = new Put(keyBytes.get(), this.timeStamp);
  }
  
  for (int i = 0; i < valueFields.length; i++) {
    Fields fieldSelector = valueFields[i];
    TupleEntry values = tupleEntry.selectEntry(fieldSelector);

    for (int j = 0; j < values.getFields().size(); j++) {
      Fields fields = values.getFields();
      Tuple tuple = values.getTuple();

      ImmutableBytesWritable valueBytes = (ImmutableBytesWritable) tuple.getObject(j);
      if (valueBytes != null)
          put.add(Bytes.toBytes(familyNames[i]), Bytes.toBytes((String) fields.get(j)), valueBytes.get());
    }
  }

  outputCollector.collect(null, put);
}
 
开发者ID:ParallelAI,项目名称:SpyGlass,代码行数:36,代码来源:HBaseScheme.java


注:本文中的cascading.scheme.SinkCall.getOutput方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。