Hive 保护模式
使用Hive自管理的表的時候都擔心如果誤drop了表怎么辦,因此Hive除了外部表的方式還提供了一個功能:ProtectMode(保護模式).
細心的同學會發現文檔里其實提到過alter table enable/disable no_drop/offline
(https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL),其中no_drop禁止直接drop table而offline是禁止表被讀取.其實這些過能在Hive里被稱為ProtectMode.
查看源碼是支持四種模式:
| 1 2 3 4 | publicstaticString FLAG_OFFLINE=?"OFFLINE";//禁止讀 publicstaticString FLAG_NO_DROP=?"NO_DROP";//不許刪除表 publicstaticString FLAG_NO_DROP_CASCADE =?"NO_DROP_CASCADE";//不許刪除分區 publicstatic String FLAG_READ_ONLY=?"READ_ONLY";//只讀,不過測試了下實際還不支持 |
這個特性的實現其實是在數據庫里的table_params表里支持的,param_key=’Protect_mode’,而param_value則設置相應的mode.因此批量做no_drop/offline通過SQL操作是最方便的了:)
本文轉自MIKE老畢 51CTO博客,原文鏈接:http://blog.51cto.com/boylook/1334516,如需轉載請自行聯系原作者
總結
- 上一篇: Java文件读取 中文乱码
- 下一篇: FFmpeg avio_alloc_co