List of usage examples for org.apache.spark.sql.types DataTypes createDecimalType
public static DecimalType createDecimalType()
From source file:com.splicemachine.db.iapi.types.SQLDecimal.java
License:Apache License
@Override public StructField getStructField(String columnName) { if (precision == -1 || scale == -1) { return DataTypes.createStructField(columnName, DataTypes.createDecimalType(), true); } else {//from www.j av a 2s . c o m return DataTypes.createStructField(columnName, DataTypes.createDecimalType(precision, scale), true); } }
From source file:org.apache.carbondata.converter.SparkDataTypeConverterImpl.java
License:Apache License
private static org.apache.spark.sql.types.DataType convertCarbonToSparkDataType(DataType carbonDataType) { if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.STRING) { return DataTypes.StringType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.SHORT) { return DataTypes.ShortType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.INT) { return DataTypes.IntegerType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.LONG) { return DataTypes.LongType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.DOUBLE) { return DataTypes.DoubleType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.BOOLEAN) { return DataTypes.BooleanType; } else if (org.apache.carbondata.core.metadata.datatype.DataTypes.isDecimal(carbonDataType)) { return DataTypes.createDecimalType(); } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.TIMESTAMP) { return DataTypes.TimestampType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.DATE) { return DataTypes.DateType; } else {/*from w ww. j a v a 2 s . c o m*/ return null; } }
From source file:org.apache.carbondata.spark.util.Util.java
License:Apache License
public static org.apache.spark.sql.types.DataType convertCarbonToSparkDataType(DataType carbonDataType) { if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.STRING) { return DataTypes.StringType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.SHORT) { return DataTypes.ShortType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.INT) { return DataTypes.IntegerType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.LONG) { return DataTypes.LongType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.DOUBLE) { return DataTypes.DoubleType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.BOOLEAN) { return DataTypes.BooleanType; } else if (org.apache.carbondata.core.metadata.datatype.DataTypes.isDecimal(carbonDataType)) { return DataTypes.createDecimalType(); } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.TIMESTAMP) { return DataTypes.TimestampType; } else if (carbonDataType == org.apache.carbondata.core.metadata.datatype.DataTypes.DATE) { return DataTypes.DateType; } else {/*from w w w . j av a 2 s . c o m*/ return null; } }
From source file:org.wso2.carbon.analytics.spark.core.util.AnalyticsCommonUtils.java
License:Open Source License
public static DataType getDataType(Type returnType) throws AnalyticsUDFException { DataType udfReturnType = null;//from ww w. j av a2s . c om if (returnType == Integer.TYPE || returnType == Integer.class) { udfReturnType = DataTypes.IntegerType; } else if (returnType == Double.TYPE || returnType == Double.class) { udfReturnType = DataTypes.DoubleType; } else if (returnType == Float.TYPE || returnType == Float.class) { udfReturnType = DataTypes.FloatType; } else if (returnType == Long.TYPE || returnType == Long.class) { udfReturnType = DataTypes.LongType; } else if (returnType == Boolean.TYPE || returnType == Boolean.class) { udfReturnType = DataTypes.BooleanType; } else if (returnType == String.class) { udfReturnType = DataTypes.StringType; } else if (returnType == Short.TYPE || returnType == Short.class) { udfReturnType = DataTypes.ShortType; } else if (returnType == NullType.class) { udfReturnType = DataTypes.NullType; } else if (returnType == Byte.TYPE || returnType == Byte.class) { udfReturnType = DataTypes.ByteType; } else if (returnType == byte[].class || returnType == Byte[].class) { udfReturnType = DataTypes.BinaryType; } else if (returnType == Date.class) { udfReturnType = DataTypes.DateType; } else if (returnType == Timestamp.class) { udfReturnType = DataTypes.TimestampType; } else if (returnType == BigDecimal.class) { udfReturnType = DataTypes.createDecimalType(); } else if (returnType instanceof ParameterizedType) { ParameterizedType type = (ParameterizedType) returnType; /*if return type is a List types will contain only 1 element, if return type is Map it will have 2 elements types representing key and the value.*/ Type[] types = type.getActualTypeArguments(); if (types != null && types.length > 0) { switch (types.length) { case 1: { udfReturnType = DataTypes.createArrayType(getDataType(types[0])); break; } case 2: { udfReturnType = DataTypes.createMapType(getDataType(types[0]), getDataType(types[1])); break; } default: throw new AnalyticsUDFException("Cannot Map the return type either to ArrayType or MapType"); } } } else { throw new AnalyticsUDFException("Cannot determine the return DataType: " + returnType.toString()); } return udfReturnType; }