• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      NoSQL在學(xué)生電子履歷信息管理系統(tǒng)中的應(yīng)用

      2014-12-15 06:36苗志鋒
      廣西教育·C版 2014年10期

      【摘 要】學(xué)生電子履歷建設(shè)對(duì)于學(xué)習(xí)實(shí)習(xí)、職業(yè)規(guī)劃、求職晉升等方面有著重要意義。通過分析現(xiàn)狀,從web網(wǎng)站分布式技術(shù)架構(gòu)中引入NoSQL數(shù)據(jù)庫,與關(guān)系型數(shù)據(jù)庫相結(jié)合,為結(jié)構(gòu)化信息、非結(jié)構(gòu)化數(shù)據(jù)的存取提供一個(gè)統(tǒng)一數(shù)據(jù)模型接口,便于應(yīng)用。

      【關(guān)鍵詞】履歷 非結(jié)構(gòu)化數(shù)據(jù) NoSQL 統(tǒng)一數(shù)據(jù)模型

      【中圖分類號(hào)】G 【文獻(xiàn)標(biāo)識(shí)碼】A

      【文章編號(hào)】0450-9889(2014)10C-0187-03

      構(gòu)建現(xiàn)代職業(yè)教育體系,推動(dòng)進(jìn)入終身教育社會(huì),其中學(xué)生履歷管理是保障條件之一。在學(xué)生經(jīng)歷普通教育、職業(yè)教育、繼續(xù)教育的過程中,會(huì)產(chǎn)生大量有價(jià)值的教育培訓(xùn)、職業(yè)經(jīng)歷、工作業(yè)績等信息,需要保存在履歷中,用于求學(xué)、實(shí)習(xí)、求職、晉升等證明。

      履歷信息具有“碎片性”和“發(fā)展性”兩個(gè)基本特性。其中“碎片”是信息具有零碎、繁雜、多樣的橫向特性。履歷中使用類別項(xiàng)進(jìn)行分類,主要分為:個(gè)人信息,專業(yè)信息,課程成績,職業(yè)操行,培訓(xùn)認(rèn)證,獎(jiǎng)懲,實(shí)踐創(chuàng)新與其他?!鞍l(fā)展性”是指隨著學(xué)生成長成才,發(fā)展進(jìn)步,履歷信息會(huì)逐步變遷,級(jí)別晉升,證書升級(jí)等。過程性信息需要保留,方便統(tǒng)計(jì)職業(yè)發(fā)展軌跡,研究成才規(guī)律。

      一、當(dāng)前研究現(xiàn)狀

      目前對(duì)履歷信息管理研究集中在人力資源管理和檔案管理。如陳哲娟研究了履歷業(yè)績評(píng)價(jià)在領(lǐng)導(dǎo)干部選拔任用的作用、業(yè)績評(píng)價(jià)指標(biāo)等。劉大衛(wèi)論證履歷深度分析法在高管人員甄選中的作用,并指出其使用的局限性。田瑞強(qiáng)等從履歷研究的發(fā)展、數(shù)據(jù)源、分析方法及存在缺陷等方面進(jìn)行了闡述,同時(shí)指出了履歷研究的發(fā)展趨勢,從理論上對(duì)科技人員履歷及人才流失問題進(jìn)行了分析探討。同時(shí),履歷被引入產(chǎn)品管理范疇,對(duì)產(chǎn)品履歷的研究也逐步成為熱點(diǎn)。郝玲、陳勇等研究農(nóng)情履歷、現(xiàn)代信息采集手段在現(xiàn)代精準(zhǔn)農(nóng)業(yè)、農(nóng)業(yè)信息管理中的應(yīng)用。丁偉將電子履歷應(yīng)用于軍隊(duì)車輛裝備管理,提高了車輛裝備管理的效率和科學(xué)化水平。

      現(xiàn)代履歷信息管理系統(tǒng)信息存儲(chǔ)環(huán)節(jié),經(jīng)歷了從紙質(zhì)履歷到Excel表格文檔,正逐步向關(guān)系型數(shù)據(jù)庫遷移的階段。在當(dāng)前工程實(shí)踐中,信息數(shù)據(jù)源主要有以下四種方式。

      (一)文件系統(tǒng)方式

      以文件格式作為數(shù)據(jù)源,管理傳感器采集設(shè)備上傳的非結(jié)構(gòu)化數(shù)據(jù),存放于服務(wù)器文件系統(tǒng)中。

      優(yōu)點(diǎn)是存取速度快,操作方便。

      缺點(diǎn)是隨著數(shù)據(jù)規(guī)??焖僭鲩L,目錄結(jié)構(gòu)混亂,難以管理;無法與應(yīng)用層權(quán)限管理協(xié)同使用,存在安全隱患;數(shù)據(jù)難于遷移。

      (二)關(guān)系型數(shù)據(jù)庫方式

      將非結(jié)構(gòu)數(shù)據(jù)直接存放到數(shù)據(jù)庫表的二進(jìn)制字段中。優(yōu)點(diǎn)是有較好的安全性,實(shí)現(xiàn)數(shù)據(jù)存取操作的一致性。缺點(diǎn)是數(shù)據(jù)庫IO是整個(gè)系統(tǒng)的性能瓶頸,使得數(shù)據(jù)表規(guī)??焖僭黾?,進(jìn)一步降低性能。

      (三)專用商業(yè)數(shù)據(jù)庫

      應(yīng)用范圍較窄,且代價(jià)昂貴。

      (四)云計(jì)算平臺(tái)

      公用云計(jì)算平臺(tái)提供了大數(shù)據(jù)解決方案,但由于行業(yè)特殊性,公有云的安全性還需要評(píng)估。

      本文在文件、關(guān)系型數(shù)據(jù)庫基礎(chǔ)上,引入NoSQL數(shù)據(jù)庫,綜合使用三種數(shù)據(jù)源,提供一致的數(shù)據(jù)模型接口,實(shí)現(xiàn)結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)同步管理,按照時(shí)間標(biāo)簽階段性保存履歷更新,從而優(yōu)化履歷的管理,提高信息共享與復(fù)用。

      研究農(nóng)情履歷超文本信息規(guī)范存儲(chǔ)管理的關(guān)鍵技術(shù),構(gòu)建一致的模型層,引入元數(shù)據(jù)、時(shí)間標(biāo)簽、NoSQL等技術(shù),構(gòu)建履歷信息的存儲(chǔ)系統(tǒng)原型。

      二、系統(tǒng)設(shè)計(jì)

      (一)系統(tǒng)功能設(shè)計(jì)

      系統(tǒng)功能模塊:學(xué)生個(gè)人信息管理;教學(xué)培訓(xùn)信息管理,包括課程成績、考勤、培訓(xùn)認(rèn)證活動(dòng)管理;獎(jiǎng)懲信息管理;實(shí)習(xí)實(shí)踐活動(dòng)管理;信息檢索、排序、統(tǒng)計(jì)等。

      (二)系統(tǒng)框架分析

      系統(tǒng)按照MVC模式進(jìn)行分層設(shè)計(jì),系統(tǒng)構(gòu)架如圖1所示。具體功能如下:

      1.視圖層——提供用戶UI,用于接收來自智能傳感器上傳的影像、圖片或其它非結(jié)構(gòu)化數(shù)據(jù),記錄傳感器節(jié)點(diǎn)信息,并標(biāo)記文件流的元數(shù)據(jù)。

      2.控制器層——根據(jù)訪問路徑(如url)得到用戶請(qǐng)求意圖,處理請(qǐng)求,并調(diào)用Model層完成數(shù)據(jù)流的存儲(chǔ)或讀取。

      3.Model層——根據(jù)Controller要求,完成具體的數(shù)據(jù)庫操作。

      4.數(shù)據(jù)源系統(tǒng)——由關(guān)系型數(shù)據(jù)庫、非關(guān)系型數(shù)據(jù)庫及擴(kuò)展文件系統(tǒng)三部分組成。其中結(jié)構(gòu)化信息和非結(jié)構(gòu)化數(shù)據(jù)元信息存儲(chǔ)在關(guān)系型數(shù)據(jù)庫中,非結(jié)構(gòu)化數(shù)據(jù)存放到非關(guān)系型數(shù)據(jù)庫NoSQL及私有云計(jì)算平臺(tái)上。

      5.控制采集中心——對(duì)系統(tǒng)進(jìn)行管理與維護(hù),能實(shí)時(shí)監(jiān)測系統(tǒng)的運(yùn)行狀態(tài),查看監(jiān)測對(duì)象的履歷信息,進(jìn)行分析與決策,并控制定時(shí)與隊(duì)列模塊運(yùn)行管理,及時(shí)更新數(shù)據(jù)信息。

      圖1

      (三)系統(tǒng)選型

      表1 軟件選型

      軟件名稱 作用

      Ubuntu 服務(wù)器操作系統(tǒng)

      Python 程序語言,用于原型開發(fā)

      Flask Web微框架

      MongoDB NoSQL數(shù)據(jù)庫

      Pymongo python的MongoDB驅(qū)動(dòng)

      Pygridfs Python的GridFS驅(qū)動(dòng)

      Mysqldb Python的MySQL驅(qū)動(dòng)

      SQLAlchemy Python的ORM套件

      數(shù)據(jù)源綜合采用關(guān)系型數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫及分布式文件系統(tǒng),用于存取、檢索學(xué)生電子履歷信息。為增加可靠性,降低成本,在軟件選型中,優(yōu)先選擇成熟、穩(wěn)定的開源軟件產(chǎn)品構(gòu)建。

      MongoDB 作為NoSQL 開源數(shù)據(jù)庫的一種主流分布式數(shù)據(jù)庫,基于對(duì)象/文檔形式存儲(chǔ),提供BSON(Binary JSON) 數(shù)據(jù)結(jié)構(gòu)形式存儲(chǔ),有便利的查詢索引方式,提供分布式文件系統(tǒng)GridFS 來進(jìn)行存儲(chǔ)管理,使得定制信息變得靈活,擴(kuò)展數(shù)據(jù)變得高效。

      三、關(guān)鍵原型實(shí)現(xiàn)

      (一)履歷信息采集元數(shù)據(jù)字段約定

      為便于生成索引,我們需要對(duì)文件命名進(jìn)行約定?!邦悇e”用兩位數(shù)字表示采集信息所屬的類別;“節(jié)點(diǎn)”是指個(gè)人、組織或機(jī)構(gòu),一般值為自己、院系辦公室、授予機(jī)構(gòu)等;“證明者”對(duì)于不同類別含義不同,如果是資格證,則表示授予單位,如果是校內(nèi)活動(dòng)證明等,則表示院內(nèi)機(jī)構(gòu)負(fù)責(zé)人;“審核者”是審核材料有效,允許上傳的院系、教學(xué)團(tuán)隊(duì)負(fù)責(zé)人;“當(dāng)前最新”是當(dāng)有多項(xiàng)同類材料中,時(shí)間最新或級(jí)別最高的材料為當(dāng)前,否則為歷史;“時(shí)間”是指材料獲取時(shí)間,為方便存儲(chǔ)、檢索需要,轉(zhuǎn)化為整型。調(diào)用程序語言的uuid()生成隨機(jī)唯一值,保留32bit。此外還有預(yù)留字段,用于保存不常用的信息屬性。

      表2 采集信息元數(shù)據(jù)約定字段示例

      其中,上表中各項(xiàng)值作為結(jié)構(gòu)化數(shù)據(jù),在數(shù)據(jù)采集上傳、協(xié)議解析后,按照協(xié)議生成元數(shù)據(jù),及時(shí)存入關(guān)系型數(shù)據(jù)庫MySQL數(shù)據(jù)表中。同時(shí)各項(xiàng)值用于生成非結(jié)構(gòu)化數(shù)據(jù)文件名。將其或ObjectId值更新到MySQL數(shù)據(jù)表的履歷表對(duì)應(yīng)字段中。從而完成結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)同時(shí)添加到數(shù)據(jù)源中。

      (二)信息共享利用與導(dǎo)出歸檔

      數(shù)字化信息需要及時(shí)歸檔。通過歸檔整理,把數(shù)據(jù)庫動(dòng)態(tài)數(shù)據(jù)轉(zhuǎn)化生成為靜態(tài)、只讀屬性的文件形式存放,供后續(xù)者查閱。由于網(wǎng)頁是超文本信息的天然組織者,因此優(yōu)先選擇靜態(tài)頁面方式歸檔信息,批量結(jié)構(gòu)化數(shù)據(jù)可以導(dǎo)出為Excel,政策文件、結(jié)果或結(jié)論性的信息按照模板格式生成PDF文檔。

      (三)一致數(shù)據(jù)模型實(shí)現(xiàn)

      SQLAlchemy是Python實(shí)現(xiàn)的數(shù)據(jù)隊(duì)形映射模型包,主要實(shí)現(xiàn)python對(duì)SQL數(shù)據(jù)庫的跨平臺(tái)操作?;赟QLAlchemy模型,使用pyMongo和mysqld驅(qū)動(dòng)程序,對(duì)農(nóng)情信息建立統(tǒng)一數(shù)據(jù)模型。而不是直接使用SQL與原生執(zhí)行命令對(duì)數(shù)據(jù)進(jìn)行管理。

      限于篇幅,只給出GridFS上傳關(guān)鍵代碼示例:

      // 導(dǎo)入必需的包

      from sqlalchemy.ext.declarative

      import declarative_base

      from pymongo import Connection

      from gridfs import *

      #文件處理系統(tǒng)

      class GFS:

      #定義connection and fs

      #初始化

      def __init__(self):

      #獲得單件對(duì)象

      @staticmethod

      def getInstance(): pass

      Def put(self,name,**args):

      try:

      data= StringIO.StringIO()

      image.save(data,format)

      gf = GFS.fs.open(name,"w")

      gf.content_type = "%s/%s" % (mime,format)

      gf.write(data.getvalue())

      finally:

      Base = declarative_base()

      class HypertextModel(Base):

      // 使用SQLAlchemy聲明字段屬性

      __tablename__ = 'picking'

      id = Column(Integer, primary_key=True)

      // 對(duì)照表2字段,依次聲明

      //初始化方法,

      def __init__(self, .....):

      def write(data=[], params=[]):

      dstfile = None

      // 保存元素?fù)?jù)

      // 確定文件名

      for x in data:

      dstfile = dstfile + “_”+x

      Session.add(HypertextMode(data))

      Params[0] = dstfile

      // 將文件上傳到GridFS

      GFS.put(params)

      四、結(jié)果分析

      經(jīng)驗(yàn)證,MongoDB在百萬條數(shù)據(jù),單條數(shù)據(jù)低于5K時(shí),性能低于純文件系統(tǒng)50%左右。當(dāng)單條數(shù)據(jù)逐漸增大時(shí),兩者差距逐漸減小。當(dāng)數(shù)據(jù)規(guī)模處于大尺寸,如高清圖片、視頻時(shí),MongoDB的性能穩(wěn)定,并可輕松擴(kuò)展成數(shù)據(jù)庫集群。

      隨著新一代信息技術(shù)的發(fā)展,物聯(lián)網(wǎng)、云計(jì)算等技術(shù)在電子履歷各個(gè)環(huán)節(jié)中應(yīng)用日趨深入。學(xué)生電子履歷信息采集的數(shù)據(jù)具有橫向“碎片化”,縱向發(fā)展性等特征明顯,信息過載癥狀顯現(xiàn)。通過引入MongoDB和MySQL混合數(shù)據(jù)庫技術(shù),結(jié)合分布式文件系統(tǒng),構(gòu)建統(tǒng)一數(shù)據(jù)模型接口,充分利用兩者優(yōu)勢,實(shí)現(xiàn)了數(shù)據(jù)的有序、高效、安全地存儲(chǔ),有效降低成本,提高了項(xiàng)目效益。在后續(xù)的研究中,對(duì)數(shù)據(jù)格式、傳輸協(xié)議等規(guī)范,數(shù)據(jù)共享技術(shù)需進(jìn)一步的研究。

      【參考文獻(xiàn)】

      [1]陳哲娟. 履歷業(yè)績評(píng)價(jià)方法在領(lǐng)導(dǎo)干部競爭性選拔中的應(yīng)用[J].中國人力資源開發(fā),2012(3)

      [2]田瑞強(qiáng),姚長青,袁軍鵬,等.基于科研履歷的科技人才流動(dòng)研究進(jìn)展[J].圖書與情報(bào),2013(5)

      [3]徐棟.基于MongoDB的SaaS數(shù)據(jù)層多租戶關(guān)鍵技術(shù)研究與實(shí)現(xiàn)[D].上海:華東理工大學(xué),2012

      [4]潘凡. 從MySQL到MongoDB[J].程序員,2010 (6)

      [5]王光磊. MongoDB數(shù)據(jù)庫的應(yīng)用研究和方案優(yōu)化[J].中國信息科技,2011(20)

      【基金項(xiàng)目】2012年度廣西高等教育教學(xué)改革工程一般A類項(xiàng)目(2012JGA336)

      【作者簡介】苗志鋒(1979- ),男,河北邯鄲人,碩士,廣西水利電力職業(yè)技術(shù)學(xué)院講師,研究方向:形式化方法,網(wǎng)絡(luò)分布式系統(tǒng),職業(yè)教育。

      温州市| 博罗县| 观塘区| 泾川县| 呼伦贝尔市| 垣曲县| 新乐市| 湘乡市| 东港市| 定结县| 扶风县| 祥云县| 肇庆市| 开平市| 浮山县| 巴林左旗| 通许县| 嘉荫县| 丰原市| 普安县| 鲁甸县| 安溪县| 竹北市| 太仓市| 深水埗区| 闵行区| 杨浦区| 建宁县| 当雄县| 南涧| 靖安县| 金阳县| 商都县| 郑州市| 剑阁县| 台北县| 乌海市| 淮北市| 鄢陵县| 蒙阴县| 平邑县|