Package brickhouse.udf.timeseries

Source Code of brickhouse.udf.timeseries.TimeSeriesTest

package brickhouse.udf.timeseries;

import static org.junit.Assert.*;

import java.util.Arrays;
import java.util.List;
import java.util.ArrayList;

import junit.framework.Assert;

import org.apache.hadoop.hive.ql.exec.UDFArgumentException;
import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory;
import org.apache.hadoop.hive.serde2.objectinspector.primitive.PrimitiveObjectInspectorFactory;
import org.junit.Test;

import brickhouse.hbase.SaltedBigIntUDF;

public class TimeSeriesTest {

  static final String scoreListStr = "63.8413206534525,63.71369659407431,63.88648961452553,62.092462648245956,62.20327870946366,61.960318311195465,62.2674488939494,62.2524848049267,61.44278939756412,60.91723423709123,61.72830398640342,61.36357222476592,60.771082522833424,60.77169575698248,59.98175779182293,59.711860144622655,61.40788465211787,62.82350841867626,63.3773826786647,63.60533931399915,63.52152842519892,63.80639914193045,63.73289127601721,63.4391352669832,63.47419532674951,63.49170420334373,48.42479762818472,63.50089659914201,63.19736831007291,63.2833760692396,62.72605077957354,62.354773637227396,61.66826260457817,61.15105393281607,61.32862036910649,61.55738106428775,61.228762290188165,61.55738106428775,61.55738106428775,60.75356515947351,61.299350496423266,61.01404573748421,60.536572088412775,61.95696201175753";

  @Test
  public void testMovingAvgStr() throws UDFArgumentException {
    String[] scoreList = scoreListStr.split",");
    System.out.println(" Score List size = " + scoreList.length);
   
    MovingAvgUDF mvnAvg = new MovingAvgUDF();
    mvnAvg.initialize( new ObjectInspector[] {
        ObjectInspectorFactory.getStandardListObjectInspector( PrimitiveObjectInspectorFactory.javaStringObjectInspector ),
        PrimitiveObjectInspectorFactory.javaIntObjectInspector  } )
   
    List ts = Arrays.asList( scoreList);
   
    List<Double> avgList = mvnAvg.evaluatets, 3);
   
    for(int i=0; i< avgList.size(); ++i) {
      System.out.println(" mvn Avg " + i + " == " + avgList.get(i));
    }
   
  }
 
  @Test
  public void testMovingAvgDouble() throws UDFArgumentException {
    String[] scoreList = scoreListStr.split( ",");
   
    MovingAvgUDF mvnAvg = new MovingAvgUDF();
    mvnAvg.initialize( new ObjectInspector[] {
        ObjectInspectorFactory.getStandardListObjectInspector( PrimitiveObjectInspectorFactory.javaDoubleObjectInspector ),
        PrimitiveObjectInspectorFactory.javaIntObjectInspector  } )
   
   
    List ts = new ArrayList<Double>();
    for(int i=0; i<scoreList.length; ++i ) {
      Double dblScore =  Double.parseDouble(scoreList[i]);
      ts.add(dblScore);
    }
   
    List<Double> avgList = mvnAvg.evaluatets, 7);
   
    for(int i=0; i< avgList.size(); ++i) {
      System.out.println(" mvn Avg " + i + " == " + avgList.get(i));
    }
   
  }
 
  @Test
  public void testSaltId() {
    SaltedBigIntUDF salty = new SaltedBigIntUDF();
   
    long joe = 44;
    String joeSalt = salty.evaluate( joe);
   
    System.out.println(" Joe's Salt = " + joeSalt);
    Assert.assertEquals("0044:44", joeSalt);
   
    long jerome = 995034;
    String jeromeSalt = salty.evaluate( jerome);
   
    System.out.println(" Jerome's Salt = " + jeromeSalt);
    Assert.assertEquals("5034:995034", jeromeSalt);
   
    long barack = 2055;
    String barackSalt = salty.evaluate( barack);
   
    System.out.println(" Barack's Salt = " + barackSalt);
    Assert.assertEquals("2055:2055", barackSalt);
   
  }

    @Test
    public void testMovingStdevStr() throws UDFArgumentException {
        String[] scoreList = scoreListStr.split",");
        System.out.println(" Score List size = " + scoreList.length);

        MovingStdevUDF MovingStdev = new MovingStdevUDF();
        MovingStdev.initialize( new ObjectInspector[] {
                ObjectInspectorFactory.getStandardListObjectInspector( PrimitiveObjectInspectorFactory.javaStringObjectInspector ),
                PrimitiveObjectInspectorFactory.javaIntObjectInspector  } );

        List ts = Arrays.asList( scoreList);

        List<Double> avgList = MovingStdev.evaluatets, 2);

        for(int i=0; i< avgList.size(); ++i) {
            System.out.println(" rolling std dev " + i + " == " + avgList.get(i));
        }

    }

    @Test
    public void testMovingStdevDouble() throws UDFArgumentException {
        String[] scoreList = scoreListStr.split( ",");

        MovingStdevUDF movingStdev = new MovingStdevUDF();
        movingStdev.initialize( new ObjectInspector[] {
                ObjectInspectorFactory.getStandardListObjectInspector( PrimitiveObjectInspectorFactory.javaDoubleObjectInspector ),
                PrimitiveObjectInspectorFactory.javaIntObjectInspector  } );


        List ts = new ArrayList<Double>();
        for(int i=0; i<scoreList.length; ++i ) {
            Double dblScore =  Double.parseDouble(scoreList[i]);
            ts.add(dblScore);
        }

        List<Double> avgList = movingStdev.evaluatets, 7);

        for(int i=0; i< avgList.size(); ++i) {
            System.out.println(" rolling std dev " + i + " == " + avgList.get(i));
        }

    }
}
TOP

Related Classes of brickhouse.udf.timeseries.TimeSeriesTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.