.NET足球賽事資料資料庫平臺SmartLottery開源釋出——全球足球聯賽應有盡有

weixin_34054866發表於2015-07-20

          本部落格所有文章分類的總目錄:【總目錄】本部落格博文總目錄-實時更新 

開源C#彩票資料資料庫系列文章總目錄【目錄】C#搭建足球賽事資料庫與預測平臺與彩票資料分析目錄 

  前2個月,我的系列文章:C#搭建足球賽事資料庫與預測平臺(1) 基本介紹 ,【目錄】C#搭建足球賽事資料庫與預測平臺與彩票資料分析目錄,對足球賽事資料庫平臺的基本結構進行了介紹。我在文章中也提出了大概計劃,一步步將這個我花了1年業餘時間整理而成的資料資料庫進行開放。在經過2個月的業餘時間努力後,將這個程式碼進行了部分整理和精簡,將核心的賽事資料庫部分進行了獨立。下面就簡單對這個開源資料庫及核心程式碼進行介紹。 

  本文原文地址: .NET足球賽事資料資料庫平臺——SmartLottery正式開源

  接下來我將每週一篇文章左右,來介紹如何使用該資料庫,以及做一些基礎的分析,至於預測大家入門後八仙過海各顯神通!感興趣的可以關注!

1.為什麼要開源這個資料庫

    全國數以百計的網際網路彩票公司,都有足球賽事資料庫系統,但是他們不共享,都是自己採集,而有大量的業餘研究人員,特別是程式設計師玩足球的,很多都要自己採集資料,多多少少造成了很多浪費,不僅僅是精力時間的浪費,更多的是網路資源,頻寬的浪費。如果網際網路公司的資料被人大量採集,他們也會採取相應措施,使得采集難度不斷提高。所以我開發這些資料的目的,基於以下幾點:

1.讓喜歡足球的程式設計師,可以直接獲取足球賽事資料資料,不用重複採集;

2.開放基礎資料庫,讓更多的人可以實現自己的思路和想法,專注業務,而不是這些沒有技術含量的資料;

3.採集資料,從某些角度上說,只要花時間,都可以做,我就是把自己花時間做的,分享出來,降低大家的門檻。

4.我們不僅開源核心的資料庫,同時也開放針對資料庫的資料訪問介面程式碼(C#版本),大家有資料庫,也可以自己寫相應程式碼,但前提是搞清楚資料庫的結構,可以參考上面提到的系列文章。

  本文將對核心資料庫的情況和核心訪問程式碼的情況,進行初步介紹,我們也將準備一些文章,來具體介紹使用方法,請大家關注部落格。

2.針對核心資料庫的說明

    針對有人可能會有的疑問,我對相關問題進行說明:

1.核心資料庫是單機版的Sqlite,大量分庫進行。至於架構和相關表結構,可以看這裡的文章:【目錄】C#搭建足球賽事資料庫與預測平臺與彩票資料分析目錄

2.總的資料量目前是1.4G左右,由於單機版檔案資料庫的關係,我們不方便進行時時更新,2-3個月進行一次資料更新,開放給大家;

3.由於該專案主要是研究使用,所以不能開放核心採集程式碼。原因是這樣的:我們常規採集的流量如果按照20M/天計算,如果100個人都每天採集,採集的資料來源網站的流量會增加很多,長時間採集,必然會導致遮蔽IP,會導致大家都採集不到,或者難度增加。所以為了我們自己有一個穩定的資料來源,也適當的考慮人家網站的壓力。我們選擇定期更新,然後如果有時時採集需求的,可以單獨和我聯絡。

4.另外,由於本人不是專業開發人員,程式以及資料庫設計肯定有很多不合理的地方,能力有限,不能強求太多,如果有人對程式碼進行修改,可以給我反饋,也希望大家提意見。

5.程式碼中包括了籃球賽事資料的相關實體類以及一些特殊的國彩玩法實體類,可能大家暫時用不上,但相關資料也在採集,至於分析方法,八仙過海各顯神通,大家也可以交流。 

3.資料內容簡介

  目前該資料庫的主要資料是足球賽事的資料資料,當然我們出於長遠考慮,也採集了部分籃球賽事資料,但不完整,只是為了積累相關實時資料,供以後可能進行的研究。目前資料庫主要包括的內容有:

1.包括全世界各大洲,各個國家主要的足球賽事的比賽資料,目前共有680個賽事。基本覆蓋了全球所有的比賽類,包括洲際盃賽,聯賽,盃賽,友誼賽等;我們對賽事進行了手動分級,最高為1級,如世界盃,歐洲5大聯賽等,最低為7級,一般我們把主要分析的物件歸為1-3級別。當然也可以進行自定義,如下圖所示部分賽事資料:

2.每個賽事,都按照年度分為各個賽季,我們採集了每個聯賽最近10年,也就是10個賽季的基本比賽結果資料。2013年後的比賽才有完整的賠率資料。看下面單個賽事的賽季資料:

3.比賽場次資料,場次資料反應了主客隊的基本比較結果資訊。不包括賠率,是核心內容,我們根據賽事進行了分庫,比如我們開啟“德甲”資料庫,看看裡面的資料結構,根據上面的理解,我們採集了10年內的比賽場次資料,限於篇幅,下面只展示了部分欄位:

4.賠率資料,賠率資料根據每個類別和相關公司進行了分庫,由於內容比較多,大家看系列文章目錄的表結構和相關資料。直接檢視實際資料庫,也可以知道相關的結構,比如我們分庫的名字很好理解,可以根據資料庫的名字和路徑知道分庫的資訊,公司-聯賽:   

4.足球賽事資料庫下載

    注意,該資料庫是2015年6月18日的更新版本,該資料庫我們將持續1個月後,在合適的時候,會發布新的資料

  下載地址http://pan.baidu.com/s/1gdD6RmV  密碼:hbnz

  為了避免其他網站爬蟲的影響,我們將不定期修改下載地址

  如果下載地址錯誤,請到本文原始頁面下載: .NET足球賽事資料資料庫平臺——SmartLottery正式開源

       Sqlite資料庫開啟,可以自己下載一個工具吧,不多說。  

5.核心訪問程式下載

    核心訪問程式是獨立的,我們刪掉了資料更新的程式碼,大部分是實體類和相關訪問方法。

    下載地址http://pan.baidu.com/s/1jGku2Ho 密碼:8r6k

  如果下載地址錯誤,請到本文原始頁面下載: .NET足球賽事資料資料庫平臺——SmartLottery正式開源

6.程式和資料庫的基本使用

     程式使用基本有2個要注意,至於其他複雜的問題,大家可以隨時在部落格提問,或者通過QQ聯絡我,以及參考本站其他文章:

1.任何地方使用都要在獨立執行緒內呼叫 資料庫連線字串初始化方法。該方法在內,有一個 XX屬性,用來設定資料庫的路徑,一般給絕對路徑。

2.查詢時,注意資料的分庫,要及時切換資料庫。至於分庫的使用,很簡單,不過大家最好是看看X元件的相關內容,在部落格選單欄。

       實體類.SetDbConnName(XXName);

  接下來我將每週一篇文章左右,來介紹如何使用該資料庫,以及做一些基礎的分析,至於預測大家入門後八仙過海各顯神通!

     可以參考程式碼中的相關使用。如果大家有什麼問題,或者針對性的要點不懂,可以直接留言或者郵件,我將會選擇重點進行介紹,爭取讓大家都能用上它。

  由於以前的採集和寫程式碼的過程中,沒有想到這麼遠,所以註釋以及部分程式碼不太規範。本人也不是正規軍,所以將在後續逐步改進,同時也在抓緊時間完善註釋,製作幫助文件,以及編寫查詢使用的Demo。請大家關注本站首頁資訊。

相關文章