python**
import multiprocessing
import time
def f(x):
time.sleep(2)
print x
if __name__ == '__main__':
pool = multiprocessing.pool(processes=5)
pool.map(f, xrange(10))
介紹:map
map是乙個很棒的小功能,同時它也是python並行**快速執行的關鍵。給不熟悉的人講解一下吧,map是從函式語言lisp來的。map函式能夠按序對映出另乙個函式。例如
1
urls
=
[
''
,
''
]
2
results
=
map
(urllib2.urlopen, urls)
這裡呼叫urlopen方法來把呼叫結果全部按序返回並儲存到乙個列表裡。就像:
1
results
=
2
for
url
in
urls:
3
map按序處理這些迭代。呼叫這個函式,它就會返回給我們乙個按序儲存著結果的簡易列表。
為什麼它這麼厲害呢?因為只要有了合適的庫,map能使並行執行得十分流暢!
ps 可以用lambda實現簡單的列表構造,比如 a = map(lambda x : x+2, [1,2,3,4,5]) ,不過時間是列表解析的兩倍,效能不好
衍生的 多執行緒中使用map的例子:
ES學習筆記 14 map資料結構
map是一種靈活,簡單的適合一對一查詢的資料結構 json反應的速度要低於陣列和map結構。而且map的靈活性要更好 map的key可以設定成陣列,值也可以設定成字串,讓它不規律對應起來 取值get let json var map new map map.set iam json console....
lzo檔案的並行map處理
hadoop集群中啟用了lzo後,還需要一些配置,才能使集群能夠對單個的lzo檔案進行並行的map操作,以提公升job的執行速度。首先,要為lzo檔案建立index。下面的命令對某個目錄裡的lzo檔案建立index hadoop home bin hadoop jar hadoop home lib...
基於Hadoop實現通用的並行任務處理
利用 hadoop 雲技術框架實現通用的並行任務處理功能,將原本只是單機程式改造成最終執行在 hadoop 雲平台裡。l 優點 1.分布並行執行 基於 mapreduce 及dfs 分布式檔案系統 實現了分布並行執行,可實現乙個 nosplitinputformat 類用於支援單個 map任務執行。...