顯示廣告
隱藏 ✕
※ 本文為 terievv 轉寄自 ptt.cc 更新時間: 2018-05-08 17:12:14
看板 PHP
作者 localhost (127.0.0.1)
標題 [請益] json跟資料庫查詢的速度哪個快
時間 Fri Apr 27 16:53:26 2018


目前接到案子是 成績評級加排序

排序沒問題 評級的話是有另外一個對照表 例如100分 A++ 90分A+
之類的

如果我用成績去select對照表

還是先用json把對照的資料全都傳過去 用成績當key值對應 這樣速度差異大嗎

目前測試資料量不多 是無感

這是要跑大量的報表 可能會有幾萬筆

加上有好幾科 數量會有幾十萬筆

這樣是用哪個方法效能最快?

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.246.33.199
※ 文章代碼(AID): #1QukK96q (PHP)
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1524819209.A.1B4.html
MOONRAKER: 沒index: 資料庫快一點因為他code最佳化1F 04/27 18:10
MOONRAKER: 有index: 資料庫電死你土製json
MOONRAKER: 你做index絕難做贏資料庫 沒做更慘 所以不要土炮了
MOONRAKER: 除非你的json是MongoDB那種表面json底下資料庫的玩意
localhost: 程式是用angularjs+php開發的 資料庫是mysql5F 04/27 19:43
localhost: angularjs似乎都是用json在傳遞 目前也只是剛接手
localhost: 也就是說有索引的話 資料庫查詢會比較快?
localhost: 我看之前的作法都是把資料全部塞在json裡面
apple0660: 你是要把幾萬筆資料傳到前端處理嗎?9F 04/27 20:42
應該這麼說 程式的本體是JAVA寫的 就是用json來提供各種資料

目前接手到的都是用json送過來的資料 我也是有資料庫的連線設定

如果用資料庫的效能較高 我就可以直接處理 如果是json速度快

我就必須請對方將整個對照表的資料用json傳給我...就是這樣

當時為什麼不直接用資料庫 我在猜當時有可能是PHP跟資料庫放不同server

舊的連線被註解掉還留著QQ 應該是跨server效能不佳吧 現在是有整合了
※ 編輯: localhost (36.239.219.56), 04/27/2018 22:08:12
liisi: 感覺案子的資料結構不複雜 還不需要用到json吧10F 04/27 23:16
liisi: 另外 為何不在成績計算好時 也把評級放入 就不用作對照了
iFEELing: 幾十萬筆對JSON很大 但對調好的DB是小CASE12F 04/28 09:58
iFEELing: 評級固定的話直接用select case 做掉 不用再查表了
MOONRAKER: 都angularjs應該是沒有辦法不用json。14F 04/28 10:41
GALINE: 其實要看你怎麼用,批次作業的話一大包分行JSON有優勢15F 04/30 18:55
GALINE: 但隨機存取不適合...
GALINE: 如果常常需要隨機讀寫檔案,SSD 是你的好朋友

--
※ 看板: terievv 文章推薦值: 0 目前人氣: 0 累積人氣: 287 
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇