經常在資料開發中需要搞udf,最近發現transform更加方便易用,但是經常會涉及到集**ython版本不
一、包不全或者部分機器上沒有安裝python。
所以咱們需要快速的進行環境配置。
因為mac自帶安裝好的python,所以就不講怎麼安裝了。可以去官網下個:
1、安裝虛擬環境工具:
執行:pip install virtualenv,如果沒有pip的話可以google一把,自行安裝
2、建立虛擬環境:程式設計客棧
新建乙個目錄,各種環境檔案放裡面:
midir envs
cd 到該目錄下,建立python虛擬環境:
virtualenv python-env
建立完了可以看到會新增乙個python-env資料夾。
如果你對python版本有要求,也可以指定python版本進行建立:
virtualenv -p /usr/bin/python2.7 python-env
3、在新的虛擬環境安裝自己需要的包:
啟用虛擬環境:
source python-env/bin/activate
這時候在這個環境下安裝的py包都是在該環境下的,可以用pip install進行安裝
例如:pip install pyhs2
(安裝pyhs2的時候出現異常 cannot uninstall 'six'. it is a distutils installed project,直接跳過 sudo pip in程式設計客棧stall pyhs2 --ignore-installed six)
退出虛擬環境:
deactivate
4、修改檔案配置:
進入虛擬環境的bin資料夾
修改activate檔案內的路徑:
dir_path="$( cd "$( dirname "$" )" && pwd )"
virtual_env="$( readlink -f "$/../" )"
5、打包檔案:
進入 python-env資料夾內(因為目錄層級少一點), 打包虛擬環境:
tar -zcf python-env.tgz *
檢查一下打包檔案是否把對應包打進去了,檢視打包是否把pyhs2打進去了:
tar -tvf python-env.tgz |grep "pyhs2"
6、如何引用python環境
新建shell檔案例如test.sh,**如下:
source ./python-env.tgz/bin/activate
python test_transform.py
寫好 test_ transform 的**,例如簡單的計算(不要糾結案例的業務邏輯):
# -*- coding: utf-8 -*-
import sys
def main():
data_list = sys.stdin.readlines()
# 獲取id迴圈次數,除數-1,結果加+1
n = (data_list.__len__程式設計客棧() - 1)/20 + 1
j = 1
while j <= n:
id_lists = data_list[(j - 1) * 20:j * 20]
ids =
for id in id_lists:
ids.append(id.strip())
j += 1
for id in ids:
result=[id,str(id*100),str(id+10)]
print '\t'.join(str(e) for e in result)
if __name__ == "__main__":
main()
把python-env.tgz、 test.sh、qfijhtest_ transform.py 上傳至集群的hdfs上,例如在:hdfs:///user/tmp
7、hive引用transfrom:
進入hive客戶端後,載入上述檔案:
add archive hdfs:///user/tmp/python-env.tgz;
add file hdfs:///user/tmp/test.sh;
add file hdfs:///user/tmp/test_transform.py;
執行hsql:
select
transform(id) using 'test.sh' as (id,price1,price2)
from
(select 100 as id from dual
)以上整個流程搞通,那麼就算集群上沒有裝python,你都可以自己建立transform進行快速開發了。
以上所述是小編給大家介紹的transform python環境快速配置方法,希望對大程式設計客棧家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們**的支援!
本文標題: transform python環境快速配置方法
本文位址:
快速配置Python Selenium環境
由於專案最近要開展介面自動化測試,這裡先來嘗試配置一下環境,首先準備好相關的工具和資源 程式語言 python ide pycharm 工具 selenium 瀏覽器驅動 chromedriver 準備工作的安裝配置就大致描述一下 python官網 安裝時注意勾選 add to path 否則還需要...
xaml開發環境快速配置
xaml開發是為win8平板電腦專門做的乙個開發框架。個人理解,不知對不對。容易上手,先說說平台的搭建。1 安裝win8。這是必須的,要不你連除錯環境都沒有。先不要著急 啟用 3 在 新建專案 中選擇 windows 應用商店 空白應用程式 xaml 寫好專案名,點確定。4 要求更新開發許可證。這個...
快速配置python的專案環境
pip實際上是乙個python包的管理工具,安裝完成之後,就可以在命令列呼叫pip的相關命令來管理python包,例如,最常用的pip install pip list等。如果你的專案是在乙個單獨的虛擬環境中開發的話,那麼利用pip可以非常容易進行專案環境的遷移部署。首先,我們需要獲取到安裝在當前環...