You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by nj...@apache.org on 2016/06/03 12:31:54 UTC

kylin git commit: KYLIN-1761: Fetch part of metadata to local

Repository: kylin
Updated Branches:
  refs/heads/master 18516c5e7 -> e50faa323


KYLIN-1761: Fetch part of metadata to local


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/e50faa32
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/e50faa32
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/e50faa32

Branch: refs/heads/master
Commit: e50faa3233ddccc4b3ec81b83bed03c59ff885a4
Parents: 18516c5
Author: kyotoYaho <nj...@apache.org>
Authored: Fri Jun 3 19:49:13 2016 +0800
Committer: Zhong <ya...@lm-shc-16501214.corp.ebay.com>
Committed: Fri Jun 3 20:01:59 2016 +0800

----------------------------------------------------------------------
 build/bin/metastore.sh                                | 14 ++++++++++++++
 .../apache/kylin/common/persistence/ResourceTool.java | 10 ++++++++++
 .../storage/hbase/steps/SandboxMetastoreCLI.java      |  3 +++
 3 files changed, 27 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/e50faa32/build/bin/metastore.sh
----------------------------------------------------------------------
diff --git a/build/bin/metastore.sh b/build/bin/metastore.sh
index 7573270..1592043 100755
--- a/build/bin/metastore.sh
+++ b/build/bin/metastore.sh
@@ -40,6 +40,19 @@ then
     ${KYLIN_HOME}/bin/kylin.sh org.apache.kylin.common.persistence.ResourceTool download ${_file}
     echo "metadata store backed up to ${_file}"
 
+elif [ "$1" == "fetch" ]
+then
+
+    _file=$2
+
+    _now=$(date +"%Y_%m_%d_%H_%M_%S")
+    _fileDst="${KYLIN_HOME}/meta_backups/meta_${_now}"
+    echo "Starting restoring $_fileDst"
+    mkdir -p $_fileDst
+
+    ${KYLIN_HOME}/bin/kylin.sh org.apache.kylin.common.persistence.ResourceTool fetch $_fileDst $_file
+    echo "metadata store backed up to $_fileDst"
+
 elif [ "$1" == "restore" ]
 then
 
@@ -80,6 +93,7 @@ then
 
 else
     echo "usage: metastore.sh backup"
+    echo "       metastore.sh fetch DATA"
     echo "       metastore.sh reset"
     echo "       metastore.sh restore PATH_TO_LOCAL_META"
     echo "       metastore.sh list RESOURCE_PATH"

http://git-wip-us.apache.org/repos/asf/kylin/blob/e50faa32/core-common/src/main/java/org/apache/kylin/common/persistence/ResourceTool.java
----------------------------------------------------------------------
diff --git a/core-common/src/main/java/org/apache/kylin/common/persistence/ResourceTool.java b/core-common/src/main/java/org/apache/kylin/common/persistence/ResourceTool.java
index c0f3fd9..b10856f 100644
--- a/core-common/src/main/java/org/apache/kylin/common/persistence/ResourceTool.java
+++ b/core-common/src/main/java/org/apache/kylin/common/persistence/ResourceTool.java
@@ -67,6 +67,9 @@ public class ResourceTool {
         case "download":
             copy(KylinConfig.getInstanceFromEnv(), KylinConfig.createInstanceFromUri(args[1]));
             break;
+        case "fetch":
+            copy(KylinConfig.getInstanceFromEnv(), KylinConfig.createInstanceFromUri(args[1]), args[2]);
+            break;
         case "upload":
             copy(KylinConfig.createInstanceFromUri(args[1]), KylinConfig.getInstanceFromEnv());
             break;
@@ -103,6 +106,13 @@ public class ResourceTool {
         System.out.println("" + result);
     }
 
+    public static void copy(KylinConfig srcConfig, KylinConfig dstConfig, String path) throws IOException {
+        ResourceStore src = ResourceStore.getStore(srcConfig);
+        ResourceStore dst = ResourceStore.getStore(dstConfig);
+
+        copyR(src, dst, path);
+    }
+
     public static void copy(KylinConfig srcConfig, KylinConfig dstConfig, List<String> paths) throws IOException {
         ResourceStore src = ResourceStore.getStore(srcConfig);
         ResourceStore dst = ResourceStore.getStore(dstConfig);

http://git-wip-us.apache.org/repos/asf/kylin/blob/e50faa32/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/SandboxMetastoreCLI.java
----------------------------------------------------------------------
diff --git a/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/SandboxMetastoreCLI.java b/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/SandboxMetastoreCLI.java
index fa1687b..e49640e 100644
--- a/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/SandboxMetastoreCLI.java
+++ b/storage-hbase/src/test/java/org/apache/kylin/storage/hbase/steps/SandboxMetastoreCLI.java
@@ -56,6 +56,8 @@ public class SandboxMetastoreCLI {
             ResourceTool.main(new String[] { "reset" });
         }else if ("download".equalsIgnoreCase(args[0])) {
             ResourceTool.main(new String[] { "download", args[1] });
+        } else if ("fetch".equalsIgnoreCase(args[0])) {
+            ResourceTool.main(new String[] { "fetch", args[1], args[2]});
         } else if ("upload".equalsIgnoreCase(args[0])) {
             ResourceTool.main(new String[] { "upload", args[1] });
         } else {
@@ -65,6 +67,7 @@ public class SandboxMetastoreCLI {
 
     private static void printUsage() {
         logger.info("Usage: SandboxMetastoreCLI download toFolder");
+        logger.info("Usage: SandboxMetastoreCLI fecth toFolder data");
         logger.info("Usage: SandboxMetastoreCLI upload   fromFolder");
     }
 }