[問題] 類似Datatable select的功能

看板C_Sharp (C#)作者 (123)時間12年前 (2012/10/20 23:33), 編輯推噓4(4013)
留言17則, 5人參與, 最新討論串1/1
是這樣的 我有8萬~40多萬個字串 要去幾百個文章(在data table中)中比對 有沒有出現 於是就使用datatable的select 比對8萬多次 但是真的慢到我以為他當掉了 不用messagebox秀出來 我還以為出錯 根本跑不完 我索性自己手寫 看有沒有contain這個字串 跑8萬多次還可以接受 大概1x秒 但到40萬次就有點久了 google一下 說是用data.row.find會比較快 但是我一定要用like %xxx%來比對才行 所以想問一下 有沒有人有類似的經驗 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 119.14.176.210

10/21 13:47, , 1F
個人經驗:資料庫存取效率問題多半與(1)取出的資料集大小
10/21 13:47, 1F

10/21 13:48, , 2F
(2)存取的次數 有關
10/21 13:48, 2F

10/21 13:48, , 3F
也就是說 如果你經常向資料庫要一個上百萬筆的DATASET
10/21 13:48, 3F

10/21 13:49, , 4F
或是說你用迴圈跑上千上百次SQL命令字串
10/21 13:49, 4F

10/21 13:50, , 5F
那是怎麼樣也快不起來的 就算你跑得起來 有天有個使用者
10/21 13:50, 5F

10/21 13:50, , 6F
家裡電腦比較爛 或是頻寬比較低 整個網頁或程序執行
10/21 13:50, 6F

10/21 13:51, , 7F
超過10秒 使用者很難不認為這個程序當掉了
10/21 13:51, 7F

10/21 13:52, , 8F
處理效率會變快 就是要減少上面(1)或(2)
10/21 13:52, 8F

10/21 13:54, , 9F
釜底抽薪將效率優化的觀點 鎖定為上述2者
10/21 13:54, 9F

10/21 13:54, , 10F
並自已寫出符合你自已要求的程式 或去找相關指令或方法
10/21 13:54, 10F

10/21 13:58, , 11F
註:存取效率與原始資料叢大小較無關係
10/21 13:58, 11F

10/21 13:58, , 12F
(也就是你文中的數十萬筆字串或數千篇文章)
10/21 13:58, 12F

10/21 13:59, , 13F
優化搜尋法的撰寫 就是要減少從原始資料叢拿出來的東西
10/21 13:59, 13F

10/22 01:58, , 14F
這種應該要作索引會比較好處理.....
10/22 01:58, 14F

10/22 23:21, , 15F
要不要先對文章進行預先處理...=.=...
10/22 23:21, 15F

10/23 16:56, , 16F
預處理應該會比較快...比竟字串比對本來就天殺慢...
10/23 16:56, 16F

10/26 07:16, , 17F
預先處理大概是什麼事情呢?
10/26 07:16, 17F
文章代碼(AID): #1GWiH9QG (C_Sharp)
文章代碼(AID): #1GWiH9QG (C_Sharp)