PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
java
[問題] 如何縮短判斷的時間
作者:
phoenixlife
(鍵盤小底迪)
2015-03-18 00:02:45
目前手上有700多萬筆資料
每一筆都有時間點(時:分:秒)
然後我想把每一筆資料作歸類
每5秒為一個區隔
例如: 00:00:04的資料會被歸類到 00:00:00的bucket(用TreeMap實作)
小弟我的作法是先建立好所有時段bucket
每讀一筆資料 就會去判斷是在哪個時段bucket (從00:00:00 一直加5秒 至24:00:00結束)
但這樣很慢
有更快的作法嗎
謝謝
作者:
LPH66
(-6.2598534e+18f)
2015-03-18 00:06:00
時分秒標籤要分類很累, 不如全部換成秒來算
作者:
mars90226
(火星人)
2015-03-18 00:15:00
用樓上作法搭配精巧的算數應該可以用array來做
作者:
phoenixlife
(鍵盤小底迪)
2015-03-18 00:20:00
感覺全部用秒數算好像會快一點 試試看 thx
作者:
csieflyman
(風之驕子)
2015-03-18 12:44:00
你的精確度到秒 一天也才86400秒 而且還每5秒分bucket700萬筆資料不會重複嗎? 怎會是用TreeMap? 應該是multimap吧 你的key value是什麼?
作者:
phoenixlife
(鍵盤小底迪)
2015-03-18 13:29:00
我的calue值可以用array 去存在那個時段的資料valuekey是時段
作者:
csieflyman
(風之驕子)
2015-03-18 13:47:00
用 guava collection library 依照資料特性及你讀寫的需求選擇 ListMultimap 或 SetMultimap 的實作 如果資料彼此獨立 可試試開多個 thread 寫入 此時要使用 Multimaps.synchronizedSetMultimap(com.google.common.collect.SetMultimap<K, V>) 達到 thread safe一開始建立 multimap 物件時 要給預估的容量 假設資料平均分配 那就是 700萬除以bucket數量 避免過多rehashing700萬筆數目也不小 可開啟JDK附的Jvisualvm工具看memory 使用狀況 調大 heap size
作者:
phoenixlife
(鍵盤小底迪)
2015-03-18 16:54:00
嗯嗯 謝謝各位大大的建議
繼續閱讀
[問題] ARRAYLIST的問題
sp3me
[問題] 輸入文字 自動分類
hadoo
[問題] 日期格式轉不出來
purin88
[問題] 至巨匠電腦學程式找工作
libra1005
[問題]Android模擬器手勢縮放,JSON,Eclips的問題
purin88
[J2EE] Restful Jersey問題請教
OoShiunoO
[徵求]OCPJP考卷兩張
k22662266
[問題] 想請問撰寫android app的問題
Hawk123
Fw: [問卦] 圖論 & 組合論 對資工人重要嗎?
Zorich
Re: [文件] JAVA新手爬文須知
VCLee
Links
booklink
Contact Us: admin [ a t ] ucptt.com