作者jackal11 (NC)
看板Programming
標題[問題] 大量資料處理
時間Sun Sep 9 23:55:45 2012
小弟最近要處理幾百萬筆的資料,格式以.txt檔為主
除了原本的資料檔外,還要另外Output出兩個檔
兩個檔的差別就在於
一個檔是印出原本資料檔裡,所有重複的字串
而另一個檔則是印出原本資料檔裡,所有不重複的字串
而小弟所遇到的問題就是
我在程式裡每讀一筆資料,就要跟之前的"""已讀的"""資料比對一次
然後就很耗時間........
想問大家有沒有哪種"""程式語言"""(混合也可),可以較為快速處理大量的文字資料
-----
PS希望可以不要用到database來處理
先感謝大家了>___<"
-----
補充一下,目前小弟是用python中的字典,來存放key和value
跑了半小時,只跑了5000筆資料><"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.172.92.111
1F:→ streitleak:你需要的是夠大的RAM來跑 1.34.71.45 09/10 00:21
2F:→ streitleak:基本上 先把檔案丟到RAM裡去比對 1.34.71.45 09/10 00:22
3F:→ streitleak:會比你用IO的方式比對快很多 1.34.71.45 09/10 00:22
4F:→ jackal11:喔喔,謝謝大大>< 1.172.92.111 09/10 00:33
5F:→ jackal11:只是想問問有沒有可以讓處理速度更快的程 1.172.92.111 09/10 00:36
6F:→ jackal11:式語言,GOOGLE後有發現好像有些程式語言 1.172.92.111 09/10 00:37
7F:→ jackal11:在處理大量資料上,速度會有所差異 1.172.92.111 09/10 00:37
※ 編輯: jackal11 來自: 1.172.92.111 (09/10 00:38)
8F:→ MOONRAKER:用hashtable不就結了。 114.45.202.196 09/10 02:10
9F:→ MOONRAKER:不然就是搜尋樹。 114.45.202.196 09/10 02:11
10F:→ MOONRAKER:再不然裝SQL來用。怎樣都比你現在好。 114.45.202.196 09/10 02:11
11F:→ streitleak:實際上 你的問題癥結點不在那個"語言" 1.34.71.45 09/10 10:18
12F:→ streitleak:而是你的資料結構跟演算法 1.34.71.45 09/10 10:19
13F:→ streitleak:以前cpu慢得時候 或許語言速度差異很 1.34.71.45 09/10 10:19
14F:→ streitleak:顯 但現在除非是量大到很誇張的地步 1.34.71.45 09/10 10:19
15F:→ streitleak:不然通常已經很難看出差異點了 1.34.71.45 09/10 10:19
16F:→ Lordaeron:是你看不出差異而已吧. 210.59.250.101 09/10 11:10
17F:→ jackal11:好的,謝謝以上大大的指導>___< 1.172.92.111 09/10 15:27
18F:→ MOONRAKER:SQL是你最好的朋友。不然就先uniq再diff 118.163.12.174 09/10 18:11
19F:→ MOONRAKER:不過那麼多筆uniq可能會爆炸,哈哈 118.163.12.174 09/10 18:11
※ 編輯: jackal11 來自: 1.172.92.111 (09/10 21:55)
20F:→ MOONRAKER:為啥不要db 自己查一下uniq, diff是啥 114.45.203.126 09/11 06:24
21F:→ buganini:python有那麼慢?! 61.221.51.22 09/13 01:54