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

Reply via email to