本文整理了Java中org.apache.pig.data.DataByteArray
类的一些代码示例,展示了DataByteArray
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DataByteArray
类的具体详情如下:
包路径:org.apache.pig.data.DataByteArray
类名称:DataByteArray
[英]An implementation of byte array. This is done as an object because we need to be able to implement compareTo, toString, hashCode, and some other methods.
[中]字节数组的一种实现。这是作为对象完成的,因为我们需要能够实现compareTo、toString、hashCode和其他一些方法。
代码示例来源:origin: apache/hive
switch (itemType) {
case BINARY:
result = new DataByteArray((byte[]) o);
break;
case STRUCT:
result = new DateTime(d.getYear(), d.getMonth(), d.getDay(), 0, 0, DateTimeZone.UTC);
break;
case TIMESTAMP:
result = new DateTime(((Timestamp)o).toEpochMilli(), DateTimeZone.UTC);
break;
default:
代码示例来源:origin: apache/hive
switch (type) {
case BINARY:
return ((DataByteArray) pigObj).get();
List<Object> all = ((Tuple) pigObj).getAll();
ArrayList<Object> converted = new ArrayList<Object>(all.size());
for (int i = 0; i < all.size(); i++) {
bagContents.add(getJavaObj(needTuple ? bagItr.next() : bagItr.next().get(0), tupFS));
BigDecimal bd = (BigDecimal)pigObj;
DecimalTypeInfo dti = (DecimalTypeInfo)hcatFS.getTypeInfo();
if(bd.precision() > dti.precision() || bd.scale() > dti.scale()) {
handleOutOfRangeValue(pigObj, hcatFS);
return null;
case TIMESTAMP:
DateTime dt = (DateTime)pigObj;
return Timestamp.ofEpochMilli(dt.getMillis());//toEpochMilli() returns UTC time regardless of TZ
case DATE:
if(dateTime.getMillisOfDay() != 0) {
handleOutOfRangeValue(pigObj, hcatFS, "Time component must be 0 (midnight) in local timezone; Local TZ val='" + pigObj + "'");
return null;
return Date.of(dateTime.getYear(), dateTime.getMonthOfYear(), dateTime.getDayOfMonth());
default:
throw new BackendException("Unexpected HCat type " + type + " for value " + pigObj
代码示例来源:origin: elastic/elasticsearch-hadoop
object = pt.getTuple().get(0);
type = pt.getTuple().getType(0);
} catch (Exception ex) {
throw new EsHadoopIllegalStateException("Encountered exception while processing tuple", ex);
to.bytes(dba.get(), dba.size());
return;
代码示例来源:origin: org.apache.pig/pig
} else if (obj instanceof DataByteArray) {
if (null != caster) {
result = caster.bytesToBag(((DataByteArray)obj).get(), fs);
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "bag for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
result = caster.bytesToTuple(((DataByteArray)obj).get(), fs);
} else {
int errCode = 1075;
} else if (obj instanceof DataByteArray) {
if (null != caster) {
result = caster.bytesToMap(((DataByteArray)obj).get(), fs);
} else {
int errCode = 1075;
switch (DataType.findType(obj)) {
case DataType.BYTEARRAY:
if (null != caster) {
result = caster.bytesToBoolean(((DataByteArray) obj).get());
} else {
int errCode = 1075;
switch (DataType.findType(obj)) {
case DataType.BYTEARRAY:
if (null != caster) {
result = caster.bytesToInteger(((DataByteArray) obj).get());
代码示例来源:origin: org.apache.pig/pig
return new DataByteArray(data.getBytes());
case DataType.DOUBLE:
return Double.valueOf(data);
return Long.valueOf(data);
case DataType.BIGINTEGER:
return new BigInteger(data);
case DataType.BIGDECIMAL:
return new BigDecimal(data);
case DataType.DATETIME:
return new DateTime(data);
case DataType.CHARARRAY:
return data;
代码示例来源:origin: org.apache.pig/pig
return extractString(bytes, startIndex, endIndex, true);
} else if (fs.type == DataType.BYTEARRAY) {
return new DataByteArray(bytes, startIndex, endIndex+1);
return ToDate.extractDateTime(val);
} else if (fs.type == DataType.BIGINTEGER) {
return new BigInteger(val);
} else if (fs.type == DataType.BIGDECIMAL) {
return new BigDecimal(val);
} else {
throw new ExecException("Can't deserialize type: " + DataType.findTypeName(fs.type));
代码示例来源:origin: org.apache.pig/pig
return BigInteger.valueOf(((Integer)o).longValue());
return BigInteger.valueOf(((Long)o).longValue());
return BigInteger.valueOf(((Float)o).longValue());
return new BigInteger(((DataByteArray)o).toString());
return ((BigDecimal)o).toBigInteger();
return BigInteger.valueOf(((DateTime)o).getMillis());
default:
int errCode = 1071;
String msg = "Cannot convert a " + findTypeName(o) +
" to a BigInteger.";
throw new ExecException(msg, errCode, PigException.INPUT);
int errCode = 1074;
String msg = "Problem with formatting. Could not convert " + o + " to BigInteger.";
throw new ExecException(msg, errCode, PigException.INPUT, nfe);
} catch (Exception e) {
int errCode = 2054;
String msg = "Internal error. Could not convert " + o + " to BigInteger.";
throw new ExecException(msg, errCode, PigException.BUG);
代码示例来源:origin: org.apache.pig/pig
return BigDecimal.valueOf(((Integer)o).longValue());
return BigDecimal.valueOf(((Long)o).longValue());
return BigDecimal.valueOf(((Float)o).doubleValue());
return new BigDecimal(((DataByteArray)o).toString());
return BigDecimal.valueOf(((DateTime)o).getMillis());
default:
int errCode = 1071;
String msg = "Cannot convert a " + findTypeName(o) +
" to a BigDecimal.";
throw new ExecException(msg, errCode, PigException.INPUT);
int errCode = 1074;
String msg = "Problem with formatting. Could not convert " + o + " to BigDecimal.";
throw new ExecException(msg, errCode, PigException.INPUT, nfe);
} catch (Exception e) {
int errCode = 2054;
String msg = "Internal error. Could not convert " + o + " to BigDecimal.";
throw new ExecException(msg, errCode, PigException.BUG);
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
res.result = DataType.toBigInteger(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toBigInteger(res.result, realType);
res.result = caster.bytesToBigInteger(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "BigInteger for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigInteger.valueOf(((Integer) res.result).longValue());
Result res = in.getNextDouble();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigInteger.valueOf(((Double) res.result).longValue());
Result res = in.getNextLong();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigInteger.valueOf(((Long) res.result).longValue());
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
try {
res.result = DataType.toBigDecimal(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toBigDecimal(res.result, realType);
res.result = caster.bytesToBigDecimal(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "BigDecimal for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigDecimal.valueOf(((Integer) res.result).longValue());
Result res = in.getNextDouble();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigDecimal.valueOf(((Double) res.result).doubleValue());
Result res = in.getNextLong();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = BigDecimal.valueOf(((Long) res.result).longValue());
代码示例来源:origin: org.apache.pig/pig
Object GetLargerValue(Object v) {
byte type = DataType.findType(v);
return (String) v + "0";
case DataType.BYTEARRAY:
String str = ((DataByteArray) v).toString();
str = str + "0";
return new DataByteArray(str);
case DataType.INTEGER:
return Integer.valueOf((Integer) v + 1);
return Double.valueOf((Double) v + 1);
case DataType.BIGINTEGER:
return ((BigInteger)v).add(BigInteger.ONE);
case DataType.BIGDECIMAL:
return ((BigDecimal)v).add(BigDecimal.ONE);
case DataType.DATETIME:
DateTime dt = (DateTime) v;
if (dt.getMillisOfSecond() != 0) {
return dt.plusMillis(1);
} else if (dt.getSecondOfMinute() != 0) {
return dt.plusSeconds(1);
} else if (dt.getMinuteOfHour() != 0) {
代码示例来源:origin: org.apache.pig/pig
writeField(out, ((BigInteger)field).toString().getBytes(Charset.defaultCharset()),
DataType.BIGINTEGER, includeTypeInformation);
break;
writeField(out, ((BigDecimal)field).toString().getBytes(Charset.defaultCharset()),
DataType.BIGDECIMAL, includeTypeInformation);
break;
writeField(out, ((DateTime)field).toString().getBytes(Charset.defaultCharset()),
DataType.DATETIME, includeTypeInformation);
break;
writeField(out, ((DataByteArray)field).get(),
DataType.BYTEARRAY, includeTypeInformation);
break;
putField(out, t.get(i), delims, includeTypeInformation);
} catch (ExecException ee) {
throw ee;
int errCode = 2108;
String msg = "Could not determine data type of field: " + field;
throw new ExecException(msg, errCode, PigException.BUG);
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
res.result = DataType.toDateTime(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toDateTime(res.result, realType);
res.result = caster.bytesToDateTime(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "datetime for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = new DateTime(((Integer) res.result).longValue());
Result res = in.getNextDouble();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = new DateTime(((Double) res.result).longValue());
Result res = in.getNextLong();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = new DateTime(((Long) res.result).longValue());
代码示例来源:origin: org.apache.pig/pig
return null;
case BYTEARRAY:
return new DateTime(((DataByteArray) o).toString());
case CHARARRAY:
return new DateTime(((Integer) o).longValue());
case LONG:
return new DateTime(((Long) o).longValue());
case FLOAT:
return new DateTime(((Float) o).longValue());
return new DateTime(((Double) o).longValue());
case BIGINTEGER:
return new DateTime(((BigInteger) o).longValue());
case BIGDECIMAL:
return new DateTime(((BigDecimal) o).longValue());
case DATETIME:
return (DateTime) o;
default:
int errCode = 1071;
String msg = "Cannot convert a " + findTypeName(o) + " to a DateTime";
throw new ExecException(msg, errCode, PigException.INPUT);
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
try {
res.result = DataType.toString(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toString(res.result, realType);
res.result = caster.bytesToCharArray(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "string for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextDateTime();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = ((DateTime) res.result).toString();
Result res = in.getNextBigInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = ((BigInteger)res.result).toString();
Result res = in.getNextBigDecimal();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = ((BigDecimal)res.result).toString();
代码示例来源:origin: org.apache.pig/pig
return ((DateTime)o).toString();
return ((DataByteArray)o).toString();
return ((BigInteger)o).toString();
return ((BigDecimal)o).toString();
default:
int errCode = 1071;
String msg = "Cannot convert a " + findTypeName(o) +
" to a String";
throw new ExecException(msg, errCode, PigException.INPUT);
int errCode = 2054;
String msg = "Internal error. Could not convert " + o + " to String.";
throw new ExecException(msg, errCode, PigException.BUG);
代码示例来源:origin: org.apache.pig/pig
Object val) throws IOException {
out.writeLong(((DateTime)val).getMillis());
out.writeShort(((DateTime)val).getZone().getOffset((DateTime)val) / 60000);
break;
out.writeByte(DataType.BYTEARRAY);
DataByteArray bytes = (DataByteArray)val;
out.writeInt(bytes.size());
out.write(bytes.mData);
break;
byte[] bytes = ((BigInteger)val).toByteArray();
out.writeInt(bytes.length);
out.write(bytes);
byte[] bt = ((BigDecimal)val).toString().getBytes(DataReaderWriter.UTF8);
out.writeInt(bt.length);
out.write(bt);
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
try {
res.result = DataType.toLong(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toLong(res.result, realType);
res.result = caster.bytesToLong(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "long for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextDateTime();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Long.valueOf(((DateTime) res.result).getMillis());
Result res = in.getNextBigInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Long.valueOf(((BigInteger)res.result).longValue());
Result res = in.getNextBigDecimal();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Long.valueOf(((BigDecimal)res.result).longValue());
代码示例来源:origin: org.apache.pig/pig
return Long.valueOf(((DataByteArray)o).toString());
return Long.valueOf(((BigInteger)o).longValue());
return Long.valueOf(((BigDecimal)o).longValue());
return Long.valueOf(((DateTime)o).getMillis());
case MAP:
case INTERNALMAP:
default:
int errCode = 1071;
String msg = "Cannot convert a " + findTypeName(o) +
" to a Long";
throw new ExecException(msg, errCode, PigException.INPUT);
int errCode = 1074;
String msg = "Problem with formatting. Could not convert " + o + " to Long.";
throw new ExecException(msg, errCode, PigException.INPUT, nfe);
} catch (Exception e) {
int errCode = 2054;
String msg = "Internal error. Could not convert " + o + " to Long.";
throw new ExecException(msg, errCode, PigException.BUG);
代码示例来源:origin: org.apache.pig/pig
realType = DataType.findType(res.result);
try {
res.result = DataType.toInteger(res.result, realType);
} catch (ClassCastException cce) {
realType = DataType.findType(res.result);
res.result = DataType.toInteger(res.result, realType);
res.result = caster.bytesToInteger(dba.get());
} else {
int errCode = 1075;
String msg = unknownByteArrayErrorMessage + "int for " + this.getOriginalLocations();
throw new ExecException(msg, errCode, PigException.INPUT);
Result res = in.getNextDateTime();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Integer.valueOf(Long.valueOf(((DateTime) res.result).getMillis()).intValue());
Result res = in.getNextBigInteger();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Integer.valueOf(((BigInteger)res.result).intValue());
Result res = in.getNextBigDecimal();
if (res.returnStatus == POStatus.STATUS_OK && res.result != null) {
res.result = Integer.valueOf(((BigDecimal)res.result).intValue());
内容来源于网络,如有侵权,请联系作者删除!