3
我創建了一個視圖的表:如何在Hive視圖中對列進行混淆?
CREATE VIEW anonymous_table
AS SELECT id, value FROM sensitive_table
,並想敏感表的id
領域,讓人們查詢視圖看不到以某種方式模糊,像一個MD5哈希或類似的東西實際的id
。在Hive中執行此操作的好方法是什麼?
我創建了一個視圖的表:如何在Hive視圖中對列進行混淆?
CREATE VIEW anonymous_table
AS SELECT id, value FROM sensitive_table
,並想敏感表的id
領域,讓人們查詢視圖看不到以某種方式模糊,像一個MD5哈希或類似的東西實際的id
。在Hive中執行此操作的好方法是什麼?
一些選項:
不要在您的視圖ID都:
創建sensitive_table VIEW東西AS SELECT 「HIDDEN ID」,值;
如果您仍然需要有是爲每個記錄提供一個獨特的鍵,你可以寫一個UDF做任何你喜歡的轉型:
ADD JAR mycode.jar; 將臨時函數hash創建爲'com.example.MyUDF'; CREATE VIEW作爲SELECT hash(id),來自sensitive_table的值;紅利:看到你的用戶無論如何只要看敏感表,你可以在ID到達蜂巢之前對它們進行散列處理?這可能是最好的選擇。
無論哪種方式,如果你處理的ID,具有穩定的散列函數將是你需要的,如果人們仍然需要依靠ID的加盟/匯聚等
謝謝。我有UDF但努力編譯它:http://stackoverflow.com/questions/11019465/how-do-i-compile-a-hive-udf – nickponline
看起來像是被修復? –
馬特謝謝你的幫助。你知道我可以在哪裏添加代碼來實現'ADD JAR mycode.jar;創建TEMPORARY FUNCTION哈希值爲'com.example.MyUDF';'自動而不必每次打開蜂巢會話時輸入它? – nickponline