国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于非易失性內(nèi)存與Java虛擬機的新型數(shù)據(jù)管理方法與流程

      文檔序號:11285930閱讀:535來源:國知局

      本發(fā)明涉及數(shù)據(jù)管理技術(shù)領(lǐng)域,具體地,涉及基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理方法。



      背景技術(shù):

      隨著信息時代的到來,人類的生活與數(shù)據(jù)變得密不可分,如何對海量的數(shù)據(jù)進行有效的管理成為了當(dāng)今的技術(shù)熱點。良好的數(shù)據(jù)管理技術(shù)應(yīng)該包含兩個特點:(1)數(shù)據(jù)的持久化管理,即數(shù)據(jù)能夠存儲在具有持久化能力的設(shè)備中,在系統(tǒng)斷電時不會丟失;(2)數(shù)據(jù)的高效處理,即能夠快速回應(yīng)應(yīng)用的數(shù)據(jù)操作請求。由于傳統(tǒng)計算機體系結(jié)構(gòu)中的內(nèi)存不具有持久化能力,而具備持久化性質(zhì)的硬盤則存在響應(yīng)速度慢、訪問粒度粗等諸多不足之處,因此傳統(tǒng)的數(shù)據(jù)管理技術(shù)分別使用硬盤和內(nèi)存進行數(shù)據(jù)存儲和數(shù)據(jù)處理。然而,由于硬盤和內(nèi)存在存儲格式、訪問方法等方面存在巨大差異,傳統(tǒng)的數(shù)據(jù)管理技術(shù)需要對硬盤和內(nèi)存中的數(shù)據(jù)分別進行管理,給用戶帶來了沉重的管理負(fù)擔(dān)。

      java是一門面向?qū)ο?object-oriented)的高級程序語言,它提出的java虛擬機(javavirtualmachine,jvm)這一抽象可以幫助java應(yīng)用進行內(nèi)存管理、性能調(diào)優(yōu)、類型檢查等一系列復(fù)雜而瑣碎的工作,使得用戶能夠?qū)W⒂诔绦蜻壿嫳旧恚瑴p輕了用戶的負(fù)擔(dān)。針對傳統(tǒng)數(shù)據(jù)管理技術(shù)中管理負(fù)擔(dān)過重的問題,java語言也提出了java持久化接口jpa(javapersistenceapi)將內(nèi)存與硬盤的數(shù)據(jù)管理進行了解耦。jpa一方面將持久化數(shù)據(jù)轉(zhuǎn)化為java對象格式放入內(nèi)存中,使用戶能夠使用熟悉的面向?qū)ο蟮姆绞竭M行數(shù)據(jù)處理;另一方面則提供了從java對象到sql語句的轉(zhuǎn)化,并使用sql語句操作和管理持久化的數(shù)據(jù)。jpa的提出消除了用戶管理持久化數(shù)據(jù)的負(fù)擔(dān),但內(nèi)存與硬盤之間數(shù)據(jù)格式轉(zhuǎn)化的開銷卻造成了數(shù)據(jù)處理的性能損失。

      非易失性內(nèi)存這一新型硬件的出現(xiàn),使得內(nèi)存在保留原有的高速訪問、細粒度讀寫特點的基礎(chǔ)上,增加了持久化數(shù)據(jù)的能力,為數(shù)據(jù)管理技術(shù)的發(fā)展帶來了全新的機遇,基于非易失性內(nèi)存的技術(shù)方興未艾。相比基于c/c++語言的數(shù)據(jù)管理技術(shù),基于java虛擬機的數(shù)據(jù)管理技術(shù)可以直接利用java虛擬機成熟的內(nèi)存管理功能以及java持久化接口來降低數(shù)據(jù)管理的開銷。然而,目前的java虛擬機缺乏對易失性內(nèi)存的支持,其持久化接口jpa也不能很好地利用非易失性內(nèi)存的持久化特性。因此,如何針對java虛擬機以及非易失性內(nèi)存的特點,開發(fā)全新的數(shù)據(jù)管理技術(shù),從而充分發(fā)揮兩者的優(yōu)勢,同時達成數(shù)據(jù)的持久化管理和高效處理兩個目標(biāo),已成為亟待解決的技術(shù)難題。



      技術(shù)實現(xiàn)要素:

      針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明的目的是提供一種基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理方法。

      根據(jù)本發(fā)明提供的基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理方法,包括如下步驟:

      數(shù)據(jù)訪問步驟:通過java應(yīng)用以java對象格式直接訪問和處理數(shù)據(jù)庫中的數(shù)據(jù),消除了數(shù)據(jù)格式轉(zhuǎn)化的過程;

      載入數(shù)據(jù)庫步驟:將數(shù)據(jù)庫在java虛擬機運行的任意時刻作為java堆的一部分載入并使用;

      數(shù)據(jù)管理步驟:通過java虛擬機對數(shù)據(jù)庫進行直接的內(nèi)存管理。

      優(yōu)選地,所述數(shù)據(jù)訪問步驟中使用輕量級的java持久化接口直接訪問和處理數(shù)據(jù)。

      優(yōu)選地,所述載入數(shù)據(jù)庫步驟中的數(shù)據(jù)庫具有java虛擬機兼容性,即所述數(shù)據(jù)庫的格式能夠被java虛擬機載入后解析使用。

      優(yōu)選地,通過所述java虛擬機能夠?qū)?shù)據(jù)庫進行內(nèi)存使用監(jiān)控、垃圾收集以及碎片整理。

      優(yōu)選地,通過所述java虛擬機能夠通過操作系統(tǒng)提供的接口獲取非易失性內(nèi)存資源,并進行操作和管理。

      根據(jù)本發(fā)明提供的基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理方法,包括如下步驟:

      步驟1:運行java應(yīng)用,并啟動java虛擬機進行初始化;

      步驟2:通過輕量級java持久化接口在java應(yīng)用運行的任意時刻請求載入或新建數(shù)據(jù)庫實例,java虛擬機獲取數(shù)據(jù)庫實例,或者通過操作系統(tǒng)接口向內(nèi)存管理模塊請求分配更多的非易失性內(nèi)存;

      步驟3:通過java虛擬機對數(shù)據(jù)庫的內(nèi)存使用進行資源監(jiān)控、垃圾回收、碎片整理管理;

      步驟4:退出java虛擬機。

      與現(xiàn)有技術(shù)相比,本發(fā)明具有如下的有益效果:

      1、本發(fā)明充分利用了非易失性內(nèi)存訪問速度快,粒度細,以及持久化的特點,使數(shù)據(jù)管理的整體性能得到提升;

      2、本發(fā)明充分利用了java虛擬機成熟的內(nèi)存管理功能和持久化接口,進一步降低了數(shù)據(jù)持久化管理的開銷;

      3、本發(fā)明在保持原有語義的情況下,提供了更加輕量級的java持久化接口實現(xiàn),消除了復(fù)雜的數(shù)據(jù)格式轉(zhuǎn)化過程,進一步提升數(shù)據(jù)處理的性能。

      附圖說明

      通過閱讀參照以下附圖對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:

      圖1為本發(fā)明提供的方法的原理框圖。

      具體實施方式

      下面結(jié)合具體實施例對本發(fā)明進行詳細說明。以下實施例將有助于本領(lǐng)域的技術(shù)人員進一步理解本發(fā)明,但不以任何形式限制本發(fā)明。應(yīng)當(dāng)指出的是,對本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變化和改進。這些都屬于本發(fā)明的保護范圍。

      根據(jù)本發(fā)明提供的基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理方法,包括如下步驟:

      數(shù)據(jù)訪問步驟:通過java應(yīng)用以java對象格式直接訪問和處理數(shù)據(jù)庫中的數(shù)據(jù),消除了數(shù)據(jù)格式轉(zhuǎn)化的過程;

      載入數(shù)據(jù)庫步驟:將數(shù)據(jù)庫在java虛擬機運行的任意時刻作為java堆的一部分載入并使用;

      數(shù)據(jù)管理步驟:通過java虛擬機對數(shù)據(jù)庫進行直接的內(nèi)存管理。

      所述數(shù)據(jù)訪問步驟中使用輕量級的java持久化接口直接訪問和處理數(shù)據(jù)。

      所述載入數(shù)據(jù)庫步驟中的數(shù)據(jù)庫具有java虛擬機兼容性,即所述數(shù)據(jù)庫的格式能夠被java虛擬機載入后解析使用。

      所述java虛擬機能夠?qū)?shù)據(jù)庫進行內(nèi)存使用監(jiān)控、垃圾收集以及碎片整理。

      所述java虛擬機能夠通過操作系統(tǒng)提供的接口獲取非易失性內(nèi)存資源,并進行操作和管理。

      下面結(jié)合具體實施例對本發(fā)明的技術(shù)方案做更加詳細的說明。

      基于非易失性內(nèi)存與java虛擬機的新型數(shù)據(jù)管理技術(shù)的具體運行流程包括:java虛擬機啟動、載入或新建數(shù)據(jù)庫實例、數(shù)據(jù)庫操作、java虛擬機退出四個階段。以下將通過具體實施示例來詳細描述本發(fā)明。

      本發(fā)明的示例具體步驟如下:

      步驟s1:用戶運行java應(yīng)用,java虛擬機啟動,進行初始化。

      步驟s2:java應(yīng)用可在運行的任意時刻通過修改過的輕量級java持久化接口(圖中的jpa’)請求載入或新建數(shù)據(jù)庫實例,java虛擬機根據(jù)請求獲取之前已經(jīng)持久化的數(shù)據(jù)庫實例,也可以通過操作系統(tǒng)接口向內(nèi)存管理模塊請求分配更多的非易失性內(nèi)存。

      步驟s3:用戶可通過jpa’進行增刪改查等數(shù)據(jù)庫操作。由于目前的數(shù)據(jù)以java對象格式存儲在java虛擬機之中,省去了之前的數(shù)據(jù)轉(zhuǎn)化開銷,從而提升了數(shù)據(jù)處理的性能。同時,java虛擬機也會對數(shù)據(jù)庫的內(nèi)存使用進行資源監(jiān)控、垃圾回收、碎片整理等管理。

      步驟s4:當(dāng)java程序退出時,java虛擬機也隨之退出,但數(shù)據(jù)庫實例由于存儲在非易失性內(nèi)存之中,數(shù)據(jù)并不會因此丟失。當(dāng)新的java虛擬機啟動時,可以再次向操作系統(tǒng)請求載入該數(shù)據(jù)庫實例并進行數(shù)據(jù)庫操作。

      以上對本發(fā)明的具體實施例進行了描述。需要理解的是,本發(fā)明并不局限于上述特定實施方式,本領(lǐng)域技術(shù)人員可以在權(quán)利要求的范圍內(nèi)做出各種變化或修改,這并不影響本發(fā)明的實質(zhì)內(nèi)容。在不沖突的情況下,本申請的實施例和實施例中的特征可以任意相互組合。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1