---
title: 维护特性
description: "升级OmniMV物化视图软件需先删除所有的库文件，包括二进制SO以及OmniMV物化视图相关文件，然后上传最新的版本压缩包完成安装步骤，即可完成升级。升级步骤需在管理节点操作并确保OmniMV物化视图上层引擎处于没有任务执行的状态。卸载OmniMV物化视图软件删除配置文件、二进制SO文件以及OmniMV物化视图相关文件即可完成卸载。卸载步骤仅需在管理节点操作。可通过命令查询OmniMV物化视图相关版本信息。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2530/bds/kunpengbds_omniruntime_20_0418.html
sourcePath: /source/zh/kunpengboostkithistory/2530/bds/kunpengbds_omniruntime_20_0418.html
indexId: bf08edeb9e297c9f0630d584422e4adc9382320c915142397925ffdd43955b1a78
---
# 维护特性

升级OmniMV物化视图软件需先删除所有的库文件，包括二进制SO以及OmniMV物化视图相关文件，然后上传最新的版本压缩包完成安装步骤，即可完成升级。升级步骤需在管理节点操作并确保OmniMV物化视图上层引擎处于没有任务执行的状态。卸载OmniMV物化视图软件删除配置文件、二进制SO文件以及OmniMV物化视图相关文件即可完成卸载。卸载步骤仅需在管理节点操作。可通过命令查询OmniMV物化视图相关版本信息。

#### 升级OmniMV

1. 删除二进制SO文件以及OmniMV物化视图相关文件，安装目录以“/opt/omnimv”为例。
  1 rm -rf /opt/omnimv

2. 下载并上传最新版本的OmniMV物化视图到管理节点，参见安装OmniMV完成安装。
3. 可选：更新Spark版本后需刷新物化视图元数据，如Spark版本未更新则不需要执行。

  a. 删除物化视图元数据。

    1. 设置数据库名称。
      1 DATABASE="tpcds_bin_partitioned_varchar_orc_3000"

    2. 删除物化视图元数据。
      1 2 hdfs dfs -rm -r -f /omnimv/plugin_metadata/${DATABASE} hdfs dfs -rm -r -f /omnimv/plugin_metadata/mock

  b. 可选：刷新Spark 3.1.1版本在数据库中的物化视图元数据。

    1. 获取刷新物化视图元数据命令。
      1 2 3 4 sqls="" mvs=`spark-sql --master local -e "SHOW MATERIALIZED VIEWS" --conf spark.sql.extensions=com.huawei.boostkit.spark.OmniMV --jars /opt/omnimv/boostkit-omnimv-spark-3.1.1-1.2.0-aarch64.jar --database ${DATABASE} | grep -P "^${DATABASE}" |awk -F "\t" '{print $2}' |grep -v "partition"` ; \ for mv in `echo "$mvs"|tr -s '|' ' '`;do sqls="ALTER MATERIALIZED VIEW $mv ENABLE REWRITE;$sqls" ; done echo $sqls|tr -s ';' '\n'

    2. 执行刷新物化视图元数据命令。
      1 spark-sql --master local --database ${DATABASE} --jars /opt/omnimv/boostkit-omnimv-spark-3.1.1-1.2.0-aarch64.jar --conf 'spark.sql.extensions=com.huawei.boostkit.spark.OmniMV' -e "$sqls"

  c. 可选：刷新Spark 3.4.3版本在数据库中的物化视图元数据。

    1. 获取刷新物化视图元数据命令。
      1 2 3 4 sqls="" mvs=`spark-sql --master local -e "SHOW MATERIALIZED VIEWS" --conf spark.sql.extensions=com.huawei.boostkit.spark.OmniMV --jars /opt/omnimv/boostkit-omnimv-spark-3.4.3-1.2.0-aarch64.jar --database ${DATABASE} | grep -P "^${DATABASE}" |awk -F "\t" '{print $2}' |grep -v "partition"` ; \ for mv in `echo "$mvs"|tr -s '|' ' '`;do sqls="ALTER MATERIALIZED VIEW $mv ENABLE REWRITE;$sqls" ; done echo $sqls|tr -s ';' '\n'

    2. 执行刷新物化视图元数据命令。
      1 spark-sql --master local --database ${DATABASE} --jars /opt/omnimv/boostkit-omnimv-spark-3.4.3-1.2.0-aarch64.jar --conf 'spark.sql.extensions=com.huawei.boostkit.spark.OmniMV' -e "$sqls"


#### 卸载OmniMV

当前步骤仅供需要卸载OmniMV时参考，不属于部署OmniMV的必要操作步骤。


1. 删除OmniMV，安装目录以“/opt/omnimv”为例。
  1 rm -rf /opt/omnimv

2. 删除Python环境，安装目录以“/opt/anaconda3”为例。
  1 rm -rf /opt/anaconda3

3. 可通过version.txt查询OmniMV的版本信息。
  1 cat /opt/omnimv/BoostKit-omnimv_1.2.0/version.txt
