Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Build a cube object

  1. Build cube with NOW option
  2. Build cube with ONCE option
  3. Cancel cube build if currently running
  4. Resume cube build
  5. Replace partitions
  6. Data profile for Cube with ONCE option
  7. Data profile for Cube with NOW option

Examples

  1. Build cube with NOW option

    /**
    * method to build Cube Object
    * @param cubeName: name of the cube
    * @param folderName: name of the folder containing cube
    * @param buildType: type of the build , FULL or INCREMENTAL
    * @param additionalParams: JSONObject containing fields: userParams, replacePartition, consolidationType, buildSourceDatasets,
    * recommendationParamsJson, minimalAggregation, minimalAggregation, factDataPartitionSize,
    * factDataPartitionCount, incrementalJobProcessType
    * factDataPartitionCount, incrementalJobProcessType, buildConnectionName
    */
    public void buildCubeNow(String cubeName, String folderName, String buildType, UserInfo userInfo, JSONObject additionalParams);
  2. Build cube with ONCE option

    /**
    * method to build Cube Object
    * @param cubeName: name of the cube
    * @param folderName: name of the folder containing cube
    * @param buildType: type of the build , FULL or INCREMENTAL
    * @param additionalParams: JSONObject containing fields: userParams, onceDateTime, replacePartition, consolidationType, buildSourceDatasets,
    * recommendationParamsJson, minimalAggregation, minimalAggregation, factDataPartitionSize,
    * factDataPartitionCount, incrementalJobProcessType, buildConnectionName
    */
    public void buildCubeOnce(String cubeName, String folderName, String buildType, UserInfo userInfo, JSONObject additionalParams);
  3. Cancel cube build if currently running.

    /**
    * Method to add ONCE build schedule for cube object
    * @param cubeName: name of the cube
    * @param folderName: name of the folder containing cube
    * @param buildType: type of the build, FULL or INCREMENTAL
    * @param onceDateTime: date time in format mm/dd/yyyy hh:mm
    * @param userInfo: Object of type UserInfo containing information about logged in user
    * @param incrementalJobProcessType: type of process: FACT_ADJUSTMENTS
    */
    public void buildCubeOnce(String cubeName, String folderName, String buildType, String onceDateTime, UserInfo userInfo, String incrementalJobProcessType);
  4. Resume cube build

    /**
    * method to resume cube build for cube object in ReportObjectManager. 
    * @param historyId: history id of last resumable cube build.
    * @param userInfo: Object of type UserInfo containing information about logged in user.
    */
    public void resumeBuild(String historyId, UserInfo userInfo);
  5. Replace partitions.

    /**
    * method to launch Replace Partition build and incremental build with Replace partition:
    * @param CubeObject:  Object of type CubeObject.
    * @param PartitionInfo: Object of type PartitionInfo.
    * @param userInfo: Object of type UserInfo containing information about logged in user.
    */
    public void launchReplacePartitionBuild(CubeObject co, PartitionInfo replacePartitionInfoObj, UserInfo userInfo);
    public void launchReplacePartitionWithIncrementalBuild(CubeObject co, PartitionInfo replacePartitionInfoObj, UserInfo userInfo);
  6. Data profile for a cube with ONCE option

    /**
    * method to add ONCE Data Profile schedule for Cube object
    * @param co: CubeObject to be profiled
    * @param onceDateTime: date time in format mm/dd/yyyy hh:mm
    * @param profile: Object of type DataProfile containing field information
    * @param userInfo: Object of type UserInfo containing information about logged in user
    * @param buildConnectionName: name of build connection
    */
    public void profileCubeOnce(CubeObject co, String onceDateTime, DataProfile profile, UserInfo userInfo, String buildConnectionName);
  7. Data profile for a cube with NOW option.

    /**
     * method to add NOW Data Profile schedule for Cube object
     * @param co: CubeObject to be profiled
     * @param profile: Object of type DataProfile containing field information
     * @param userInfo: Object of type UserInfo containing information about logged in user
     * @param buildConnectionName: name of build connection
     */
    public void profileCubeNow(CubeObject co, DataProfile profile, UserInfo userInfo, String buildConnectionName;
  8. Parse connectionXML and set internal properties of DBConnection. 

    /**
    * Constructor accepting connectionXML as input. Connection properties will be set by parsing this XML.
    * @param connectoinXML
    */
    public DBConnection(String connectoinXML)
  9. Set a property in a DBConnection object.

    /**
    * Method to set connection property.
    * @param propertyName
    * @param propertyValue
    */
    public void setProperty(String propertyName, String propertyValue)
  10. Set a property in a DBConnection. It is useful when a value is encrypted.

    /**
    * Method to set connection property.
    * @param propertyName
    * @param propertyValue
    * @param isEncrypted
    * @param cryptographicAlgorythm
    */
    public void setProperty(String propertyName, String propertyValue, String isEncrypted, String cryptographicAlgorythm)

Sample code

/*Method to trigger Cube Build 
 *BuildType Can be FULL, INCREMENTAL 
 */ 
public static void buildCubeNow(SchedulerManager schedulerManager, UserInfo userInfo) { 
schedulerManager.buildCubeNow("CubeName", "CubeFolderName", "BuildType", userInfo); 
} 
/*Method to Cancel Cube Build 
 *BuildType Can be FULL, INCREMENTAL 
 */ 
public static void cancelCubeBuild(SchedulerManager schedulerManager, UserInfo userInfo){ 
schedulerManager.cancelCubeBuild("CubeName", "CubeFolderName", "BuildType", userInfo); 
} 
/*Method to Resume Cube Build*/ 
public static void resumeBuild(ReportObjectManager repObjManager, UserInfo userInfo){ 
try { 
repObjManager.resumeBuild("CubeBuildHistoryID", userInfo); 
} catch (ReportObjectException e) { 
e.printStackTrace(); 
} 
       } 
/*Method to trigger Data Profile on Cube*/ 
public static void profileCubeNow(SchedulerManager schedulerManager, RepositoryManager repManager, UserInfo userInfo) { 
try { 
/*Cube and Cube Folder should be present on Kyvos*/ 
CubeObject cubeObject = repManager.getCubeByName("CubeName", "CubeFolderName", userInfo); 
DataProfile profile = new DataProfile(); 
schedulerManager.profileCubeNow(cubeObject, profile, userInfo); 
} catch (ReportObjectException e) { 
e.printStackTrace(); 
} 
       } 
  • No labels