天天看點

《Clojure資料分析秘笈》——3.6節使用ensure維護一緻性

本節書摘來自華章社群《clojure資料分析秘笈》一書中的第3章,第3.6節使用ensure維護一緻性,作者(美)eric rochester,更多章節内容可以通路雲栖社群“華章社群”公衆号檢視

3.6 使用ensure維護一緻性

有時在使用stm時,想在引用集合中間維護一緻性,但不需要修改其中一部分的值。可以使用ensure函數來标明stm應該引入事務當中其他的引用。

通過確定資料結構保持同步和一緻幫助簡化資料處理系統。ensure函數允許對由stm管理的值實施更多的控制。

本方法中,将使用手工編制的示例:處理文本檔案集合,計算一個術語的頻率以及總詞數。并發執行這項工作,随着處理過程的進行可以看到結果被更新。

對于文本檔案集合,将使用1960年建構的布朗語料庫,這是第一份為語言學家準備的研究語言的電子文本集合(或者說是語料庫)。在那時,這個資料集的容量(100萬詞)已經算很大了。現在,相同的語料庫包含1億詞或更多。

繼續閱讀