網頁
▼
Friday, July 29, 2011
ORM Speed Test : LINQ to SQL , Entity Framework , SubSonic
上圖就是這次測試的評比結果,計算方式為將測試時間以 SqlCommand 的時間為 Index (所以1為最快,數字越大越慢),然後來與其他ORM的時間做比較,Read的測試有做兩個,所以Read的分數是兩個測試的Index去平均的。
簡單來說,Read 時的LINQ與EF效能輸SqlCommand不會太多,分別約慢了51%與79%,而SubSonic就爆掉了,分數為5.20,也就是慢了420%。
而 Write 時,反過來是SubSonic慢SqlCommand 34%,領先LINQ與EF的174%與172%。
下面說明這次測試如何進行。
Thursday, July 28, 2011
[SubSonic] SubSonic 3.0 Insert / Select Top / Where In
同前面LINQ與EF,這篇也是測試ORM的語法,順便拿來當備忘錄的。
使用的版本為SubSonic 3.0,測試的相關資料請看這篇。
下面就是以 SubSonic 去做 Insert / Select Top / Where In 的範例,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
使用的版本為SubSonic 3.0,測試的相關資料請看這篇。
下面就是以 SubSonic 去做 Insert / Select Top / Where In 的範例,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
public static void SubSonicInsert(string name, int score) { Data.tbl_Speed_Test st= new Data.tbl_Speed_Test(); st.name = name; st.score = score; st.Save(); }語法超短的,相當於SQL Command的
insert into [Died_Test].[dbo].[tbl_Speed_Test] (name,score) values(@name,@score)SubSonic對有預設值的欄位也需要手動對ActiveRecord.cs(如果你是用ActiveRecord)改點設定,詳情可以見這篇"Linq to SQL, Entity Framework, SubSonic 3.0 對於預設欄位的處理方式"。
[EF4] Entity Framework Insert / Select Top / Where In
同前文,這篇也是測試ORM的語法,順便拿來當備忘錄的。
使用的版本為ADO.NET Entity Framework 4.1 - Update 1,測試的相關資料請看這篇。
下面就是以 Entity Framework 去做 Insert / Select Top / Where In 的範例,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
使用的版本為ADO.NET Entity Framework 4.1 - Update 1,測試的相關資料請看這篇。
下面就是以 Entity Framework 去做 Insert / Select Top / Where In 的範例,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
public static void EntityInsert(string name, int score) { tbl_Speed_Test_EF st = new tbl_Speed_Test_EF(); st.name = name; st.score = score; using (Died_TestEntities context = new Died_TestEntities()) { try { context.tbl_Speed_Test.AddObject(st); context.SaveChanges(); } catch (Exception e) { throw e; } } }相當於SQL Command的
insert into [Died_Test].[dbo].[tbl_Speed_Test] (name,score) values(@name,@score)Entity Framework對於有預設值的欄位也需要手動對edmx改點設定,詳情可以見這篇"Linq to SQL, Entity Framework, SubSonic 3.0 對於預設欄位的處理方式"。
[LINQ] LINQ to SQL Insert / Select Top / Where In
之前用幾個ORM去測試速度,想說寫了都寫了,就順便把測試用的語法也貼出來,這樣我健忘時還可以回來找code參考。
測試的相關資料請看這篇。
下面就是以LINQ to SQL去做Insert / Select Top / Where In 的範例,我沒有測試過很多種寫法,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
測試的相關資料請看這篇。
下面就是以LINQ to SQL去做Insert / Select Top / Where In 的範例,我沒有測試過很多種寫法,如果有效率更好的寫法,麻煩請跟我說,感謝。
Insert
public static void LinqInsert(string name, int score) { LinqModelDataContext DB = new LinqModelDataContext(); tbl_Speed_Test st = new tbl_Speed_Test(); st.name = name; st.score = score; DB.tbl_Speed_Tests.InsertOnSubmit(st); try { DB.SubmitChanges(); } catch(Exception e) { throw e; } }這段語法相當於SQL Command的
insert into [Died_Test].[dbo].[tbl_Speed_Test] (name,score) values(@name,@score)實際上測試的Table有三個欄位,不過Prime Key的Guid我設成DB自動產生,所以就不塞值進去了,這種方式需要手動對dbml改點設定,詳情可以見這篇"Linq to SQL, Entity Framework, SubSonic 3.0 對於預設欄位的處理方式"。
《不能戳的秘密》完整版 + 懶人包
因為蘋果的影片不能嵌入,新頭殼的影片畫質比較差,所以我傳上了Youtube。
影片原始檔來自蘋果動新聞,作者李惠仁。
《不能戳的秘密》是2011年李惠仁導演最新紀錄片作品。本片將輪迴在台灣學界、官僚系統那些明明看得到但卻又不能說的秘密,一次披露,呈現給觀眾。用深入淺出的方式將艱深的公衛知識化為常識,讓大眾明白每天圍繞在身邊的謊言與危機。這部片子要捍衛的不只是全民的健康,也是永恆不滅的正義!
獨立導演及自由記者李惠仁,耗時6年,追蹤調查完成《不能戳的秘密》紀錄片。片中指出台灣之所以爆發禽流感疫情,是有人將禽流感病毒株偷偷製成禽流感疫苗販賣,由於製程粗糙,原先想讓雞隻產生抗體的疫苗,反讓疫情大流行;同時揭露農委會隱匿國內高病原禽流感疫情,並找專家學者背書放寬認定標準的過程。
2011/7/29 update 懶人包。
Wednesday, July 20, 2011
烙印勇士新版動畫
有在看烙印勇士的人,還記得Berserk Film上之前說的7/15號公布消息嗎 ?
果真,時間到了之後,網站首頁放上了一段約30秒長度的Trailer,由於是重新製作,所以畫質相當的棒,比之前的動畫版好上太多了,而這次的內容則是黃金時代篇Part 1,之後的Part2,3時間尚未宣布,下面可以看一下2012一月會上映的全新Berserk Film Trailer。
Tuesday, July 12, 2011
Love Lost - The Temper Trap
前陣子看了飯飯之交(No Strings Attached),在故事要到尾聲前,突然聽到了一段熟悉的音樂,直到電影結束後,我還是一直被這小段輕快的節奏吸引住,總覺得在哪邊聽過,找了好久,才找到這首歌是 The Temper Trap 的「Love Lost」,而後來也想了起來在哪邊聽到這首歌了,去年有間馬來西亞公司員工旅遊,來台後拍的影片就是使用 Love Lost 當配樂,因為音樂與影片都相當出色,所以我就一直記在心頭,直到最近又被翻出來。
相當好聽的歌,enjoy it.
Monday, July 11, 2011
農委會拿人民稅金搞政黨鬥爭
日前農民跟馬英九反映農產品價格很差,結果馬英九回:「怎麼不早說」,引起軒然大波,農委會主委陳武雄立刻展開反擊,並且在隨後的晚報登了上面這廣告。
想用廣告洗腦,讓人忘記農產品價格很差的卑劣心態就先跳過暫時不提,最可惡的是農委會居然用我繳的稅金去打擊特定政黨,這不就是跟共產黨拿公帑去唱紅歌一樣的作為嗎 ?
才重新執政三年,又重回國庫通黨庫的狀態了,明著拿民脂民膏去搞政黨鬥爭,肆無忌憚到如此,我想已經不是陳武雄下台可以解決的吧...
Sunday, July 10, 2011
[心得]原來行政院長可以公開恐嚇他人
今天翻到這則新聞,真是讓我太訝異了,原來行政院長可以公開恐嚇他人性命,果真人追求權勢不是沒有原因的,有權後錢自然會找上門,然後還不用守法,真是太酷了。
吳敦義:「我從執政到問政現在,沒有一樣是不可信的。」
吳敦義:「從未有過講不實的話。」
吳敦義:「罵我那三個字的,逃亡海外,不敢負責,最後病死異鄉的王玉雲老先生,我不希望李前總統也學王玉雲老先生學的那麼快。」
Saturday, July 9, 2011
蕉農:香蕉價錢很差。馬英九:你怎麼不早說 ?
相當有趣的新聞。
蕉農:「香蕉鳳梨啊,價錢那麼差。」
馬英九:「這個價格不好要早點說。」
我幫馬英九補上內心OS好了,「這個報紙沒寫,我不知道啊,你早說我就會推給八年遺毒,外交鎖國了。」
Thursday, July 7, 2011
benjemin 廁所實驗展“Exhibit for what?”線上看!
既然租畫廊作品也賣不掉,那除了畫廊還有別的嗎?
屁股涼颼颼地邊解放邊看作品的可能性探討中!
If we borrow a gallery and cannot sell artwork,
why it have to be at gallery?
Is it possible to see artwork in toilet with naked ass?
雖然形象跟氣質不太對,但班仔本人我真的是念藝術科系的!
(現代美術研究所在學中8-))
做藝術的人常常說想要跟觀眾親近,
但是專程到畫廊看這要求卻也好像不怎麼好親近?
所以就借著在學校可以使用學校場地的機會
做一些展示的實驗 :>
(題外話:大學的時候覺得借畫廊要湊錢好難啊~出社會發現
"錢可以解決的問題都是小問題"說得沒錯!真的想借學校這種公共空間才難!)
第一彈就是配合廁所這個空間 做一個輕鬆好玩,廁所塗鴉式的展示!
線上版還請捧個場呀~(搓手ing)
Alvin : G+ 做的很棒! 看來是時候噗浪把Google買下來了
最近比較忙,沒空寫文章,只能在Google Plus上亂逛,看到Plurk創辦人之一在G+上面的回話,實在是太有趣了,不得不貼上來分享一下。
不萊恩在G+的訊息中說了Alvin也來Google Plus了,結果Alvin後來自己跑來回應:「G+ 做的很棒! 看來是時候噗浪把Google買下來了」。
Alvin真的是相當逗趣的人,在plurk上看他一直都是如此風趣,希望能繼續保持下去!!
不過說好的裸奔呢 ????
Monday, July 4, 2011
Sunday, July 3, 2011
Google Trends : 台北人最愛 Google+
6/29號Google宣布了全新的社交平台,Google+,吸引了相當多愛嘗鮮、想玩Google產品、或是厭倦Facebook的人前來使用,短短沒幾天,已湧進相當多的人潮,使得Google不得已先暫時邀請功能,使用Google Trends看了一下,沒想到台灣是最多人對Google+搜尋的地方,也就是台灣對Google+最有興趣,而台北也得到了第一名,真是難得的事,特此紀錄一下。