zoukankan      html  css  js  c++  java
  • 【转】备份Kylin的元数据

    http://blog.csdn.net/jiangshouzhuang/article/details/51290239

    Kylin组织它所有的元数据(包括cube descriptions and instances, projects, inverted index description and instances,jobs, tables and dictionaries)作为一个层次的文件系统。

    然而,Kylin使用HBase来进行存储,而不是普通的文件系统。

    我们可以从Kylin的配置文件kylin.properties中查看到:

    ## The metadata store in hbase

    kylin.metadata.url=kylin_metadata@hbase

    表示Kylin的元数据被保存在HBase的kylin_metadata表中。

    备份Kylin的元数据

    ./bin/metastore.sh backup

    这将备份元数据到本地目录KYLIN_HOME/metadata_backps下面,目录的命名格式为:

    KYLIN_HOME/meta_backups/meta_year_month_day_hour_minute_second

    比如我的Kylin的家目录为/var/lib/kylin/kylin,那么备份数据的目录为:

    /var/lib/kylin/kylin/meta_backups/meta_2016_05_01_11_50_32

    我们来查看一下目录:

    [kylin@SZB-L0023777kylin]$ cd /var/lib/kylin/kylin/meta_backups/meta_2016_05_01_11_50_32

    [kylin@SZB-L0023777meta_2016_05_01_11_50_32]$ ll

    total 44

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 cube

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 cube_desc

    drwxrwxr-x 4 kylin kylin 4096 May  1 11:50 cube_statistics

    drwxrwxr-x 6 kylin kylin 4096 May  1 11:50 dict

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 execute

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 execute_output

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 model_desc

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 project

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 table

    drwxrwxr-x 2 kylin kylin 4096 May  1 11:50 table_exd

    drwxrwxr-x 5 kylin kylin 4096 May  1 11:50 table_snapshot

    恢复元数据 

    假如你的Kylin元数据挂掉了,那么我们就可以使用之前备份的数据进行恢复:

    1.      首先reset当前Kylin的元数据存储,这将清理掉所有存储在HBase中的Kylin元数据,确保在此之前做过备份

    ./bin/metastore.sh reset

    2.      接着,上传备份的元数据到Kylin的元数据中

    ./bin/metastore.sh restore$KYLIN_HOME/meta_backups/meta_xxxx_xx_xx_xx_xx_xx

    从Kylin元数据中清理掉无用的资源

    随着时间的推移,有些资源,比如字典,表的快照等变得无用了(cube的segment被删除或合并了),但是他们仍然占用空间。可以执行如下命令查找和清理无用的元数据:

    1.      首先,执行检查,这是安全的操作,不会修改任何内容:

    ./bin/metastore.sh clean

    将需要被删除的资源(resources)罗列出来

    2.      接着,在上面的命令中,添加“--delete true”参数,这样就会清理掉哪些无用的资源。切记,在这个命令操作之前,一定要备份Kylin元数据:

    ./bin/metastore.sh clean --delete true

  • 相关阅读:
    Java学习之内部类
    Java学习之方法内部类
    CTFHub:RCE命令注入
    C++ :string 用法详解
    oracle数据类型
    a[0]=1,a[1]=11,a[2]=21,a[3]=1211找出规律,输入下标,得出对应的值
    python计算登山队最远坐标
    子网掩码
    实现点赞功能
    获取评论数和细节处理
  • 原文地址:https://www.cnblogs.com/hark0623/p/5583583.html
Copyright © 2011-2022 走看看