@Override public String getName() { return dimtable.getName(); }
@Override public String getName() { return dimtable.getName(); }
public Set<String> getPartCols() { Set<String> partCols = Sets.newHashSet(); String partColsStr = getProperties().get(MetastoreUtil.getDimTablePartsKey(getName())); if (partColsStr != null) { for (String s : StringUtils.split(partColsStr, ",")) { if (!StringUtils.isBlank(s)) { partCols.add(s); } } } return partCols; }
public Set<String> getPartCols() { Set<String> partCols = Sets.newHashSet(); String partColsStr = getProperties().get(MetastoreUtil.getDimTablePartsKey(getName())); if (partColsStr != null) { for (String s : StringUtils.split(partColsStr, ",")) { if (!StringUtils.isBlank(s)) { partCols.add(s); } } } return partCols; }
/** * Alter snapshot dump period of a storage * * @param storage Storage name * @param period The new value */ public void alterSnapshotDumpPeriod(@NonNull String storage, UpdatePeriod period) { if (snapshotDumpPeriods.containsKey(storage)) { log.info("Updating dump period for {} from {} to {}", storage, snapshotDumpPeriods.get(storage), period); } snapshotDumpPeriods.put(storage, period); setSnapshotDumpPeriods(getName(), getProperties(), snapshotDumpPeriods); }
@Override public int hashCode() { final int prime = 31; int result = super.hashCode(); result = prime * result + ((getTable() == null) ? 0 : getTable().getName().toLowerCase().hashCode()); return result; }
/** * Alter snapshot dump period of a storage * * @param storage Storage name * @param period The new value */ public void alterSnapshotDumpPeriod(@NonNull String storage, UpdatePeriod period) { if (snapshotDumpPeriods.containsKey(storage)) { log.info("Updating dump period for {} from {} to {}", storage, snapshotDumpPeriods.get(storage), period); } snapshotDumpPeriods.put(storage, period); setSnapshotDumpPeriods(getName(), getProperties(), snapshotDumpPeriods); }
@Override public int hashCode() { final int prime = 31; int result = super.hashCode(); result = prime * result + ((getTable() == null) ? 0 : getTable().getName().toLowerCase().hashCode()); return result; }
void dropStorage(String storage) { snapshotDumpPeriods.remove(storage); setSnapshotDumpPeriods(getName(), getProperties(), snapshotDumpPeriods); } }
void dropStorage(String storage) { snapshotDumpPeriods.remove(storage); setSnapshotDumpPeriods(getName(), getProperties(), snapshotDumpPeriods); } }
/** * Adds storage to dimension and creates corresponding storage table * * @param dim The CubeDimensionTable * @param storage The storage * @param dumpPeriod The dumpPeriod if any, null otherwise * @param storageTableDesc The storage table description * @throws LensException */ public void addStorage(CubeDimensionTable dim, String storage, UpdatePeriod dumpPeriod, StorageTableDesc storageTableDesc) throws LensException { dim.alterSnapshotDumpPeriod(storage, dumpPeriod); createOrAlterStorageHiveTable(getTableWithTypeFailFast(dim.getName(), CubeTableType.DIM_TABLE), storage, storageTableDesc); alterCubeTable(dim.getName(), getTableWithTypeFailFast(dim.getName(), CubeTableType.DIM_TABLE), dim); updateDimCache(dim.getName()); }
/** * Alter the dimension name that the table belongs to * * @param newDimName new dimension name. */ public void alterUberDim(String newDimName) { this.dimName = newDimName; setDimName(getName(), getProperties(), this.dimName); }
/** * Alter the dimension name that the table belongs to * * @param newDimName new dimension name. */ public void alterUberDim(String newDimName) { this.dimName = newDimName; setDimName(getName(), getProperties(), this.dimName); }
@Override public List<String> getAllDimTableNames(LensSessionHandle sessionid, String dimensionName) throws LensException { try (SessionContext ignored = new SessionContext(sessionid)){ CubeMetastoreClient client = getClient(sessionid); Dimension dimension = client.getDimension(dimensionName); if (dimensionName != null && dimension == null) { throw new LensException("Could not get table: " + dimensionName + " as a dimension"); } Collection<CubeDimensionTable> dims = client.getAllDimensionTables(dimension); List<String> dimNames = new ArrayList<>(dims.size()); for (CubeDimensionTable cdt : dims) { dimNames.add(cdt.getName()); } return dimNames; } }
public XDimensionTable getXDimensionTable(CubeDimensionTable dimTable) throws LensException { XDimensionTable dt = JAXBUtils.dimTableFromCubeDimTable(dimTable); if (!dimTable.getStorages().isEmpty()) { for (String storageName : dimTable.getStorages()) { XStorageTableElement tblElement = JAXBUtils.getXStorageTableFromHiveTable( this.getHiveTable(MetastoreUtil.getFactOrDimtableStorageTableName(dimTable.getName(), storageName))); tblElement.setStorageName(storageName); UpdatePeriod p = dimTable.getSnapshotDumpPeriods().get(storageName); if (p != null) { tblElement.getUpdatePeriods().getUpdatePeriod().add(XUpdatePeriod.valueOf(p.name())); } dt.getStorageTables().getStorageTable().add(tblElement); } } return dt; }
public XDimensionTable getXDimensionTable(CubeDimensionTable dimTable) throws LensException { XDimensionTable dt = JAXBUtils.dimTableFromCubeDimTable(dimTable); if (!dimTable.getStorages().isEmpty()) { for (String storageName : dimTable.getStorages()) { XStorageTableElement tblElement = JAXBUtils.getXStorageTableFromHiveTable( this.getHiveTable(MetastoreUtil.getFactOrDimtableStorageTableName(dimTable.getName(), storageName))); tblElement.setStorageName(storageName); UpdatePeriod p = dimTable.getSnapshotDumpPeriods().get(storageName); if (p != null) { tblElement.getUpdatePeriods().getUpdatePeriod().add(XUpdatePeriod.valueOf(p.name())); } dt.getStorageTables().getStorageTable().add(tblElement); } } return dt; } /**