Search in sources :

Example 51 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestDiffSeries method diffMultipleSeriesEach.

@Test
public void diffMultipleSeriesEach() throws Exception {
    oneExtraSameE();
    queryAB_Dstar();
    query_results.clear();
    query_results.add(results.get("1").getValue());
    query_results.add(results.get("0").getValue());
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(3, results.length);
    double val = 17;
    for (int i = 0; i < results.length; i++) {
        long ts = 1431561600000l;
        final SeekableView it = results[i].iterator();
        while (it.hasNext()) {
            final DataPoint dp = it.next();
            assertEquals(ts, dp.timestamp());
            if (i < 2) {
                assertEquals(10, dp.toDouble(), 0.0001);
            } else {
                assertEquals(val++, dp.toDouble(), 0.0001);
            }
            ts += INTERVAL;
        }
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) DataPoint(net.opentsdb.core.DataPoint) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 52 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestDiffSeries method diffOneSeriesEach.

@Test
public void diffOneSeriesEach() throws Exception {
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, true, 10, 1);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricName()).thenReturn("sys.mem");
    when(dps2.metricUID()).thenReturn(new byte[] { 0, 0, 2 });
    group_bys = new DataPoints[] { dps2 };
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(1, results.length);
    assertEquals(METRIC_STRING, results[0].metricName());
    long ts = START_TIME;
    for (DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        assertEquals(-9, dp.toDouble(), 0.001);
        ts += INTERVAL;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 53 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestDivideSeries method divideMultipleSeriesEach.

@Test
public void divideMultipleSeriesEach() throws Exception {
    oneExtraSameE();
    queryAB_Dstar();
    query_results.clear();
    query_results.add(results.get("1").getValue());
    query_results.add(results.get("0").getValue());
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(3, results.length);
    final int[][] vals = new int[2][];
    vals[0] = new int[] { 11, 1 };
    vals[1] = new int[] { 14, 4 };
    for (int i = 0; i < results.length; i++) {
        long ts = 1431561600000l;
        final SeekableView it = results[i].iterator();
        while (it.hasNext()) {
            final DataPoint dp = it.next();
            assertEquals(ts, dp.timestamp());
            if (i < 2) {
                assertEquals(((double) vals[i][0]++ / (double) vals[i][1]++), dp.toDouble(), 0.001);
            } else {
                assertEquals(0, dp.toDouble(), 0.0001);
            }
            ts += INTERVAL;
        }
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) DataPoint(net.opentsdb.core.DataPoint) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Example 54 with SeekableView

use of net.opentsdb.core.SeekableView in project opentsdb by OpenTSDB.

the class TestDivideSeries method divideOneSeriesEach.

@Test
public void divideOneSeriesEach() throws Exception {
    SeekableView view2 = SeekableViewsForTest.generator(START_TIME, INTERVAL, NUM_POINTS, true, 10, 1);
    DataPoints dps2 = PowerMockito.mock(DataPoints.class);
    when(dps2.iterator()).thenReturn(view2);
    when(dps2.metricName()).thenReturn("sys.mem");
    when(dps2.metricUID()).thenReturn(new byte[] { 0, 0, 2 });
    group_bys = new DataPoints[] { dps2 };
    query_results.add(group_bys);
    final DataPoints[] results = func.evaluate(data_query, query_results, params);
    assertEquals(1, results.length);
    assertEquals(METRIC_STRING, results[0].metricName());
    double[] vals = new double[] { 0.1, 0.181, 0.25, 0.307, 0.357 };
    long ts = START_TIME;
    int i = 0;
    for (final DataPoint dp : results[0]) {
        assertEquals(ts, dp.timestamp());
        assertEquals(vals[i++], dp.toDouble(), 0.001);
        ts += INTERVAL;
    }
}
Also used : DataPoint(net.opentsdb.core.DataPoint) SeekableView(net.opentsdb.core.SeekableView) DataPoints(net.opentsdb.core.DataPoints) DataPoint(net.opentsdb.core.DataPoint) Test(org.junit.Test) SeekableViewsForTest(net.opentsdb.core.SeekableViewsForTest) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest)

Aggregations

SeekableView (net.opentsdb.core.SeekableView)54 DataPoint (net.opentsdb.core.DataPoint)50 DataPoints (net.opentsdb.core.DataPoints)50 Test (org.junit.Test)47 PrepareForTest (org.powermock.core.classloader.annotations.PrepareForTest)47 SeekableViewsForTest (net.opentsdb.core.SeekableViewsForTest)45 ArrayList (java.util.ArrayList)7 MutableDataPoint (net.opentsdb.core.MutableDataPoint)7 AggregationIterator (net.opentsdb.core.AggregationIterator)3 NoSuchElementException (java.util.NoSuchElementException)2 Callback (com.stumbleupon.async.Callback)1 Deferred (com.stumbleupon.async.Deferred)1 IOException (java.io.IOException)1 Map (java.util.Map)1 Aggregator (net.opentsdb.core.Aggregator)1 Query (net.opentsdb.core.Query)1 TSDB (net.opentsdb.core.TSDB)1 TSQuery (net.opentsdb.core.TSQuery)1 TSSubQuery (net.opentsdb.core.TSSubQuery)1 TopNSortingEntry (net.opentsdb.query.expression.HighestMax.TopNSortingEntry)1