肖子喻 中南大學
所謂算法就是解決一個問題的進程,因為算法的存在,我們不需要每遇到一個問題都發明一個解決方案。數學家們從很早便開始關注算法的設計了,在大約公元前 300 年歐幾里得算法可以計算兩個整數的最大公約數,數學家們對數學問題進行研究和總結,采用一種固定的思維和計算方式解決相似的問題,這樣既能夠減少工作量,也可以大幅度提高工作效率,更快速解決問題。將信息學與數學算法結合,可以提高數據收集和處理的效率,處理大規模的數據信息。
近年來全球數據量出現了爆炸性增長,人類日常產生和交流的信息也在呈指數級增長,根據IDC 的預測,到2020 年全球數據量將會是2005年數據量的300倍。我國發布的《促進大數據發展行動綱要》、《大數據產業發展規劃(2016-2020)》也將大數據認定是國家基礎性戰略資源,發展大數據技術是國家戰略的要求。
在當前的大數據生態當中,最為重要的技術當屬Hadoop 和和Spark。其中Hadoop 是目前應用最為廣泛的大數據平臺,它是一個開源的分布式數據存儲和應用運行框架,它的誕生主要是為了解決在集群上對大規模的數據進行可靠存儲和計算的問題。Hadoop 的運算速度快,采用的分布式計算模型能夠非常快速的對大量數據進行計算,并且計算能力可以隨著增加計算節點而加強,一線互聯網公司的節點通常可以達到數千個。此外,Hadoop 的容錯性強,在Hadoop 中對所有的數據都保存了多個副本,當節點發生故障時,會自動將作業重定向到其他正常的節點,保證分布式計算不會失敗。Hadoop 的擴展性也很強強,能夠非常簡單的通過添加新的節點來擴展系統的存儲能力和計算能力。并且Hadoop 具有非常完善的集群管理工具,即使有海量的數據節點也能進行快捷方便的管理。而Spark 則在Hadoop的基礎之上進行了發展,極大提升大數據計算的運行速度,并擴展了Hadoop 的編程模型,使大數據的開發從“匯編語言時代”進入到了“高級語言時代”。
自上世紀40 年代計算機誕生以來,其在金融計算、航空航天、機械制造等生活各個方面扮演著越來越重要的角色,已經成為人類現代文明不可缺少的一部分。在即將到來的大數據時代,計算機技術的作用只會更加重要,是大規模數據收集、數據分析、數據處理的重要工具,而計算機執行命令的基本邏輯就是算法,算法是其完成任務的基礎和關鍵,一套成熟的算法對設備的要求相對較低,可以節約硬件成本,節約運行時間,大數據時代數據量龐大并且對信息的時效性要求較高,從而算法的優化顯得至為重要。與此同時,算法的基礎就是數學,任何算法都以數學邏輯為基礎,計算機技術的產生離不開數學算法的輔助,隨著我國科技信息的不斷發展,數學算法的功能不斷凸顯出來,各種數學算法在互相聯系中發揮各自主要的功能,通過他們之間的緊密聯系才會使專業計算機人員研究出更多新技術、新產品。
在現代計算機編寫領域中,數學算法是一種高效率的技術,并且數學算法在計算機編輯中大量被應用,例如在 C 語言中計算機編程就應用的很廣泛。計算機編程的優化離不開數學算法,因為這個功能的存在,所以更要加強對數學算法的分析,把數學算法所具備的特點實際應用到編輯方面。計算機技術一直發展到現今 2019 年,計算機專業人員越來越重視計算機技術的應用,不斷強化計算機技術在計算機行業的應用。在計算機技術中數學算法中還需要建立數學模型。建立數學模型的主要觀點,就是利用計算機進行運算,在運算過程中詳細檢驗,由此不僅能夠提高編程的效率,也能夠使得計算機編程得到更好的優化在應用數學門類。因此數學算法可以優化語言編程運用,在計算機編程中通常使用 C 語言,因為 C 語言在計算機行業中是一種常用性基礎語言,而且 C 語言還可以為高級語言進行擴展。以 C 語言為基礎的計算機編程中,難免會出現翻譯與編寫上的錯誤與困難。因此在代碼的使用中要做到簡潔明了化,同時也提高了面向過程中的效率,首先做好邏輯分析,根據相應的操作流程按正確的邏輯運行。其次,在編程優化的過程中數學算法起到關鍵作用隨著信息化的多樣性發展,對于計算機編程優化與數學算法有著直接性的關系,相同的計算機編程語言可以用不同數學算法方式表達出來,在編寫代碼信息的過程中查找優化的主要核心,從而達到減少程序運行的時間,促進代碼執行更高的效率。最后,使用數學算法可以合理設計數據結構,高效的數學算法在編程優化中要合理設計數據結,因為在編程優化中數據結在設計是非常重要,在數學算法中數據結可以改變變量的位置。減少變量的運行空間,從而達到算法的有效性。例如在稀疏矩陣中元素就很多,矩陣的空間就需要進行壓縮。直接壓縮就會導致二維數組的浪費,因此,只能利用三元組對稀疏矩陣壓縮,進而降低算法空間的復雜性。
隨著計算機技術的發展,人們提起信息數據處理首先想到的各種軟件、人工智能等等,卻忘記各種信息的來源是人類、信息的收集與處理的目的是為了更好地服務人類,開發操作和使用各種數據處理技術的還是人類。古代人類只需要知道簡單的加減乘除就足以應對生活中的各種問題、可以參與經濟貿易往來,而當今時代和今后的大數據時代人們每天要處理的數據也在飛速上升,要想在這種環境下有所作為,縝密的思維和快速的計算能力是必不可少的技能。數學算法包括高等代數、概率統計、數學模型、離散數學、模糊數學等多門知識,學生通過分析計算大量數字,可以形成敏銳的數字感;通過對數學公式、定理推理證明,可以培養較強的邏輯思維,從而善于運用數學模型解決各種問題。這對個人能力的提高以及開發計算機技術都有極大地幫助。
隨著大數據時代社會對數據處理能力要求的提高,計算機技術的基礎,數學算法專業也必然迎來飛速的發展,然而目前我國大數據人才缺口很大,未來大數據行業的人才需求很龐大,但從業人員以及正在培養的大學生數量卻遠遠不夠,大數據相關企業對數據挖掘工程師、算法工程師等職位都開出很高的薪資待遇,卻仍經常遇到找不到合適的人才的窘境。因此,不斷探索優化數學算法在大數據分析技術中的應用不僅順應時代發展的潮流,促進計算機、大數據技術的進步,從業人員也可以實現人生價值、享受高薪待遇。
綜上所述,不難看出掌握經典數學算法,探索新型算法是發展大數據分析處理基礎的基礎和關鍵,學習數學算法不僅能夠提高計算機軟件的功能與效率,也能培養學習者的邏輯思維、計算能力和信息處理能力。作為一名新時代大學生,我們應該夯實專業基礎知識,了解最近技術前沿動向,依靠自己的知識和技術在大數據時代散發自己的光芒。