趙迪 王超
(成都理工大學計算機科學與技術學院,四川成都610059)
提到用于IPTV的移動終端系統人們自然會聯想到3G手機,它能夠處理圖像、音樂、視頻等多媒體,并利用無線通信網絡和互聯網相結合提供IPTV、網頁瀏覽、電視會議等多種媒體服務。隨著人們在移動環境下生活工作頻率的不斷增加,手機的用途也日益豐富,是日常生活、娛樂、工作的一部分。尤其是隨著3G商用以來,手機上網速度的提升,手機應用設計者們開發出適合各種需要的應用,給用戶提供了豐富的選擇。
本文提出了一種在Linux下shell的開發模式下的手機終端數據統計的新功能,該功能借助了Linux命令、shell語言,及數據庫結構化查詢語句將終端信息簡單靈活地呈獻給用戶。
根據用戶需求分析手機終端數據,統計分析口徑。系統建立關于終端的數據庫,涵蓋用戶使用終端信息和終端業務功能信息,支撐涉及數據業務流量和TD終端等的日常分析、營銷。明確需求和統計口徑后,每個模塊都要生成一張統計分析的報表,以方便前臺使用和檢查維護。
2.2.1 架構設計
此處架構設計主要是針對底層數據庫架構設計。對需求分析的結果進行抽象,確定手機終端各個表中的字段和字段之前的關系、表與表之間的關系,在確定各個概念之后再進行具體邏輯設計和物理設計以及數據庫的實施和后期的維護。手機終端需要統計的各個報表之間并沒有直接關系,表中的分析字段和結果字段之間也沒有直接關系。每個需統計的報表都是單獨的小模塊,由單獨的一個shell腳本生成,相互之間沒有關聯。
2.2.2 數據模型設計
(1)業務層集中了系統的業務邏輯的處理,是手機終端后臺數據庫報表設計的核心部分。后臺報表設計的健壯靈活、可重用性、可升級性和可維護性從很大程度上取決于業務層設計。
(2)根據底層數據結構,理清業務邏輯關系。需要表名字段名命名規則,同時考慮表中的因素字段和結果字段,需建立一套完整的表對應關系即建立數據模型。當數據模型建立好之后,設計報表的字段、時間維度、粒度到什么級別,維度表直接的關系、層析關系、上下級之間的關系,怎樣設計維度表來保證未來模型的可擴充性,最終形成一個既能滿足最基本的需求,也能保證可擴充性的模型。
2.2.3 應用開發設計
(1)在Linux環境下用shell語言來生成腳本是配置好所需要連接到的服務器、etc目錄和lib目錄。通常,etc目錄下配置的為引用的哪個服務器中的哪些文件、引用的表空間信息等。lib目錄下配置的是各種語言常用的數據庫操作庫、公共操作庫、短信告警等信息。etc和lib里面用到的函數都是先集成起來的,使用起來比較方便。同時需建立程序運行的bin目錄存放要運行的程序,以及日志生成目錄log,方便程序出錯改正。當配置好程序運行所需的環境后便可以調試運行腳本。
(2)應用框架設計用來完成報表中數據的管理,主要包括數據庫的設計。在數據庫的設計中本類型報表設計的操作都是用結構化查詢語言。Sql語句封裝在已經開發完成好的shell腳本中,為獲取最佳性能進行優化并通過附加的安全性得到增強。Sql語句都以shell腳本的形式固化出來,根據不同需求傳遞不同的參數,得到一張張報表。此過程主要開發完成手機終端統計量報表、終端操作系統用戶統計量報表、換機用戶統計報表、TD流量潛在用戶報表、智能終端目標用戶報表、TD終端營銷目標用戶報表、非智能終端換機報表、智能終端換機報表、新增定制終端用戶報表、存量定制終端用戶報表。
2.3.1 應用測試
一般采用c/s結構,此結構把數據庫內容放在遠程的服務器上,而在客戶機上安裝相應的軟件,主要特點是交互性強、具有安全的存取模式、網絡通信量大、響應速度快、有利于處理大量數據。該測試主要是針對已完成的腳本的編寫測試是否能溝通過,還可以進行交叉測試,保證程序的在任何情況下都能正常進行。
2.3.2 數據核對
報表生成的數據是否準確及時是衡量腳本程序是否健壯的關鍵,同時準確及時的數據也是公司衡量業務各方面能力的關鍵。所有數據測試核對也是至關重要的。根據需求和用戶的需求核對數據是否正確,如不正確則需要進行修改。
本文提出了基于Linux下的shell語言的手機終端數據庫應用的設計與實現過程,其中需使用power design實現數據倉庫的邏輯建模,得到初步的數據模型,再結合oracle數據庫結構化查詢語言來實現后臺數據庫的設計,從固化好的shell腳本修改報表分析因素和結果因素,以及結構化的語句就可輕松方便地得到滿足需求的手機終端的自主報表,從而為web前臺展示提供保障。該系統將手機終端的統計后臺數據庫設計變得更為靈活,具有良好的可擴展性和可靠性,保證數據的準確和及時。
[1] Tansley,D.Linux與Unix shell編程指南.機械工業出版社[M],2005.
[2] 伍之昂.Linux shell編程從初學到精通.電子工業出版社[M],2011.
[3] Arnold Robbins.實戰Linux編程精髓.楊明軍譯.中國電力出版社[M],2005.
[4] M ark G.Sobell.Linux命令、編輯器與shell編程.包戰、孔向華、胡艮勝譯.清華大學出版社[M],2010.
[5] 史嘉權.數據庫系統概論.清華大學出版社[M],2006.