This is an automated email from the ASF dual-hosted git repository. xxyu pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/kylin.git
The following commit(s) were added to refs/heads/master by this push: new c170594 KYLIN-4552 Add a switch to enable/disable flink cubing step: convert to HFile c170594 is described below commit c1705947dc2c04d084a4bf3f4ad15877e1c50b2c Author: harveyyue <yw_yue...@126.com> AuthorDate: Wed Jun 10 14:40:18 2020 +0800 KYLIN-4552 Add a switch to enable/disable flink cubing step: convert to HFile --- .../main/java/org/apache/kylin/common/KylinConfigBase.java | 4 ++++ .../storage/hbase/steps/HBaseFlinkOutputTransition.java | 12 ++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java index 0e52818..0b8913a 100644 --- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java +++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java @@ -1705,6 +1705,10 @@ public abstract class KylinConfigBase implements Serializable { return Boolean.parseBoolean(getOptional("kylin.engine.flink-fact-distinct", FALSE)); } + public boolean isFlinkCubeHFileEnable() { + return Boolean.parseBoolean(getOptional("kylin.engine.flink-cube-hfile", FALSE)); + } + // ============================================================================ // ENGINE.LIVY // ============================================================================ diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseFlinkOutputTransition.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseFlinkOutputTransition.java index 06b14c8..b9712a6 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseFlinkOutputTransition.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/HBaseFlinkOutputTransition.java @@ -43,7 +43,7 @@ public class HBaseFlinkOutputTransition implements IFlinkOutput { @Override public IFlinkBatchCubingOutputSide getBatchCubingOutputSide(final CubeSegment seg) { - final HBaseJobSteps steps = new HBaseFlinkSteps(seg); + final HBaseJobSteps steps = buildHBaseJobSteps(seg); return new IFlinkBatchCubingOutputSide() { @@ -69,7 +69,7 @@ public class HBaseFlinkOutputTransition implements IFlinkOutput { @Override public IFlinkBatchMergeOutputSide getBatchMergeOutputSide(final CubeSegment seg) { return new IFlinkBatchMergeOutputSide() { - final HBaseJobSteps steps = new HBaseFlinkSteps(seg); + final HBaseJobSteps steps = buildHBaseJobSteps(seg); @Override public void addStepPhase1_MergeDictionary(DefaultChainedExecutable jobFlow) { @@ -94,4 +94,12 @@ public class HBaseFlinkOutputTransition implements IFlinkOutput { public IFlinkBatchOptimizeOutputSide getBatchOptimizeOutputSide(final CubeSegment seg) { return null; } + + private HBaseJobSteps buildHBaseJobSteps(CubeSegment seg) { + if (seg.getConfig().isFlinkCubeHFileEnable()) { + return new HBaseFlinkSteps(seg); + } else { + return new HBaseMRSteps(seg); + } + } } \ No newline at end of file