Search in sources :

Example 6 with Datum

use of com.amazonaws.services.timestreamquery.model.Datum in project aws-athena-query-federation by awslabs.

the class TestUtils method buildTimeSeries.

private static void buildTimeSeries(Field field, Datum datum) {
    List<TimeSeriesDataPoint> dataPoints = new ArrayList<>();
    for (int i = 0; i < 10; i++) {
        TimeSeriesDataPoint dataPoint = new TimeSeriesDataPoint();
        Datum dataPointValue = new Datum();
        dataPoint.setTime(TIMESTAMP_FORMATTER.format(new Date(System.currentTimeMillis() - RAND.nextInt(1_000_000))));
        /**
         * Presently we only support TimeSeries as LIST<STRUCT<DATEMILLISECONDS, DOUBLE|INT|FLOAT8|BIT|BIGINT>>
         */
        Field struct = field.getChildren().get(0);
        assertEquals(Types.MinorType.STRUCT, Types.getMinorTypeForArrowType(struct.getType()));
        Field baseSeriesType = struct.getChildren().get(1);
        switch(Types.getMinorTypeForArrowType(baseSeriesType.getType())) {
            case FLOAT8:
                dataPointValue.setScalarValue(String.valueOf(RAND.nextFloat()));
                break;
            case BIT:
                dataPointValue.setScalarValue(String.valueOf(RAND.nextBoolean()));
                break;
            case INT:
                dataPointValue.setScalarValue(String.valueOf(RAND.nextInt()));
                break;
            case BIGINT:
                dataPointValue.setScalarValue(String.valueOf(RAND.nextLong()));
                break;
        }
        dataPoint.setValue(dataPointValue);
        dataPoints.add(dataPoint);
    }
    datum.setTimeSeriesValue(dataPoints);
}
Also used : TimeSeriesDataPoint(com.amazonaws.services.timestreamquery.model.TimeSeriesDataPoint) Field(org.apache.arrow.vector.types.pojo.Field) Datum(com.amazonaws.services.timestreamquery.model.Datum) ArrayList(java.util.ArrayList) TimeSeriesDataPoint(com.amazonaws.services.timestreamquery.model.TimeSeriesDataPoint) Date(java.util.Date)

Aggregations

Datum (com.amazonaws.services.timestreamquery.model.Datum)6 ArrayList (java.util.ArrayList)5 Field (org.apache.arrow.vector.types.pojo.Field)5 Row (com.amazonaws.services.timestreamquery.model.Row)4 TimeSeriesDataPoint (com.amazonaws.services.timestreamquery.model.TimeSeriesDataPoint)4 QueryResult (com.amazonaws.services.timestreamquery.model.QueryResult)3 Extractor (com.amazonaws.athena.connector.lambda.data.writers.extractors.Extractor)2 TableName (com.amazonaws.athena.connector.lambda.domain.TableName)2 ConstraintProjector (com.amazonaws.athena.connector.lambda.domain.predicate.ConstraintProjector)2 GetTableResponse (com.amazonaws.athena.connector.lambda.metadata.GetTableResponse)2 QueryRequest (com.amazonaws.services.timestreamquery.model.QueryRequest)2 Date (java.util.Date)2 HashMap (java.util.HashMap)2 Map (java.util.Map)2 FieldVector (org.apache.arrow.vector.FieldVector)2 Schema (org.apache.arrow.vector.types.pojo.Schema)2 BlockUtils (com.amazonaws.athena.connector.lambda.data.BlockUtils)1 FieldResolver (com.amazonaws.athena.connector.lambda.data.FieldResolver)1 SchemaBuilder (com.amazonaws.athena.connector.lambda.data.SchemaBuilder)1 GeneratedRowWriter (com.amazonaws.athena.connector.lambda.data.writers.GeneratedRowWriter)1