/** * Create hive ql CubeMeasure from JAXB counterpart * * @param xm * @return {@link CubeMeasure} */ public static CubeMeasure hiveMeasureFromXMeasure(XMeasure xm) { Date startDate = xm.getStartTime() == null ? null : xm.getStartTime().toGregorianCalendar().getTime(); Date endDate = xm.getEndTime() == null ? null : xm.getEndTime().toGregorianCalendar().getTime(); CubeMeasure cm = new ColumnMeasure(new FieldSchema(xm.getName(), xm.getType().name().toLowerCase(), xm.getDescription()), xm.getDisplayString(), xm.getFormatString(), xm.getDefaultAggr(), xm.getUnit(), startDate, endDate, null, xm.getMin(), xm.getMax(), mapFromXProperties(xm.getTags()) ); return cm; }
/** * Create hive ql CubeMeasure from JAXB counterpart * * @param xm * @return {@link CubeMeasure} */ public static CubeMeasure hiveMeasureFromXMeasure(XMeasure xm) { Date startDate = xm.getStartTime() == null ? null : xm.getStartTime().toGregorianCalendar().getTime(); Date endDate = xm.getEndTime() == null ? null : xm.getEndTime().toGregorianCalendar().getTime(); CubeMeasure cm = new ColumnMeasure(new FieldSchema(xm.getName(), xm.getType().name().toLowerCase(), xm.getDescription()), xm.getDisplayString(), xm.getFormatString(), xm.getDefaultAggr(), xm.getUnit(), startDate, endDate, null, xm.getMin(), xm.getMax(), mapFromXProperties(xm.getTags()) ); return cm; }
public void testMeasureJaxBConversion() throws Exception { CubeMeasure cubeMeasure = new ColumnMeasure(new FieldSchema("msr1", "int", "first measure"), null, null, null, null, null, null, null, 0.0, 9999.0); XMeasure measure = JAXBUtils.xMeasureFromHiveMeasure(cubeMeasure); CubeMeasure actualMeasure = JAXBUtils.hiveMeasureFromXMeasure(measure); assertEquals(actualMeasure, cubeMeasure); assertEquals(actualMeasure.getMin(), measure.getMin()); assertEquals(actualMeasure.getMax(), measure.getMax()); }
tag2.put("is_ui_visible", "true"); Set<CubeMeasure> cubeMeasures = new HashSet<>(); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr1", "int", "measure1 with tag"), null, null, null, null, null, null, null, 0.0, 9999.0, tag1)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr2", "int", "measure2 with tag"), "measure2 with tag", null, null, null, NOW, null, null, 0.0, 999999.0, tag2));
toAlter.alterMeasure(new ColumnMeasure(new FieldSchema("testAddMsr1", "int", "testAddMeasure"))); toAlter.alterMeasure(new ColumnMeasure(new FieldSchema("msr3", "float", "third altered measure"), "Measure3Altered", null, "MAX", "alterunit")); toAlter.removeMeasure("msr4"); assertEquals(altered.getChainByName("city").getDescription(), "cube city desc modified"); toAlter.alterMeasure(new ColumnMeasure(new FieldSchema("testAddMsr1", "double", "testAddMeasure"))); client.alterCube(cubeName, toAlter); altered = new Cube(Hive.get(conf).getTable(cubeName));
private static void defineCube(final String cubeName, String cubeNameWithProps, String derivedCubeName, String derivedCubeNameWithProps) throws LensException { cubeMeasures = new HashSet<>(); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr1", "int", "first measure"), null, null, null, null, null, null, null, 0.0, 9999.0)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr2", "float", "second measure"), "Measure2", null, "SUM", "RS")); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr3", "double", "third measure"), "Measure3", null, "MAX", null)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msr4", "bigint", "fourth measure"), "Measure4", null, "COUNT", null)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msrstarttime", "int", "measure with start time"), "Measure With Starttime", null, null, null, NOW, null, null, 0.0, 999999.0)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msrendtime", "float", "measure with end time"), "Measure With Endtime", null, "SUM", "RS", NOW, NOW, null)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msrcost", "double", "measure with cost"), "Measure With cost", null, "MAX", null, NOW, NOW, 100.0)); cubeMeasures.add(new ColumnMeasure( new FieldSchema("msrcost2", "bigint", "measure with cost"), "Measure With cost2", null, "MAX", null, null, null, 100.0, 0.0, 999999999999999999999999999.0)); Set<CubeMeasure> dummyMeasure = Sets.newHashSet(); for (int i = 0; i < 5000; i++) { dummyMeasure.add(new ColumnMeasure(new FieldSchema("dummy_msr" + i, "bigint", "dummy measure " + i), "", null, "SUM", null, null, null, 100.0, 0.0, 999999999999999999999999999.0));