TWI714414B - 區塊鏈資料的分次獲取方法和裝置 - Google Patents

區塊鏈資料的分次獲取方法和裝置 Download PDF

Info

Publication number
TWI714414B
TWI714414B TW109100047A TW109100047A TWI714414B TW I714414 B TWI714414 B TW I714414B TW 109100047 A TW109100047 A TW 109100047A TW 109100047 A TW109100047 A TW 109100047A TW I714414 B TWI714414 B TW I714414B
Authority
TW
Taiwan
Prior art keywords
data
target data
client
location identifier
blockchain
Prior art date
Application number
TW109100047A
Other languages
English (en)
Other versions
TW202105197A (zh
Inventor
賴爐坤
Original Assignee
開曼群島商創新先進技術有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 開曼群島商創新先進技術有限公司 filed Critical 開曼群島商創新先進技術有限公司
Application granted granted Critical
Publication of TWI714414B publication Critical patent/TWI714414B/zh
Publication of TW202105197A publication Critical patent/TW202105197A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本說明書的一個或多個實施例提供了一種區塊鏈資料的分次獲取方法和裝置,應用於包括多個節點設備和客戶端的區塊鏈網路,所述區塊鏈的分布式資料庫儲存有待所述客戶端分次獲取的目標資料;所述方法包括:第一節點設備接收所述客戶端發送的資料請求,所述資料請求包括資料位置標識,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的位置;基於所述資料位置標識,為所述客戶端獲取所述部分目標資料;基於所述部分目標資料,為所述客戶端生成新的資料位置標識,以作為所述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述目標資料的資料位置標識;向所述客戶端發送所述部分目標資料和所述新的資料位置標識。

Description

區塊鏈資料的分次獲取方法和裝置
本說明書涉及資料處理技術領域,尤其涉及一種區塊鏈資料的分次獲取方法和裝置。
區塊鏈技術,也被稱之為分布式帳本技術,是一種由若干台計算設備共同參與“記帳”,共同維護一份完整的分布式資料庫的新興技術。由於區塊鏈技術具有去中心化、公開透明、每台計算設備可以參與資料庫記錄、並且各計算設備之間可以快速的進行資料同步的特性,使得區塊鏈技術已在眾多的領域中廣泛的進行應用。
有鑑於此,本說明書一個或多個實施例提供了一種區塊鏈資料的分次獲取方法,應用於包括多個節點設備和客戶端的區塊鏈網路,所述區塊鏈的分布式資料庫儲存有待所述客戶端分次獲取的目標資料;所述方法包括: 第一節點設備接收所述客戶端發送的資料請求,所述資料請求包括資料位置標識,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的位置; 基於所述資料位置標識,為所述客戶端獲取所述部分目標資料; 基於所述部分目標資料,為所述客戶端生成新的資料位置標識,以作為所述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述目標資料的資料位置標識; 向所述客戶端發送所述部分目標資料和所述新的資料位置標識。 在又一示出的實施方式中,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的起始位置;所述資料請求還包括所述部分目標資料的容量; 所述基於所述資料位置標識,為所述客戶端生成所述部分目標資料,包括: 基於所述資料位置標識和所述部分目標資料的容量,為所述客戶端生成所述部分目標資料。 在又一示出的實施方式中,所述目標資料為列表資料;所述部分目標資料的容量包括所述部分目標資料的列表條目數、或部分目標資料佔用空間數量。 在又一示出的實施方式中,所述資料位置標識是基於所述部分目標資料所包括的最後一條列表資料生成的唯一性標識。 在又一示出的實施方式中,所述列表資料包括在所述區塊鏈的分布式資料庫存證的交易哈希值。 在又一示出的實施方式中,所述區塊鏈為聯盟鏈,所述節點設備為聯盟成員節點設備,所述客戶端為與聯盟成員節點設備連接的用戶客戶端。 相應地,本說明書還提供了一種區塊鏈資料的分次獲取裝置,應用於包括多個節點設備和客戶端的區塊鏈網路,所述區塊鏈的分布式資料庫儲存有待所述客戶端分次獲取的目標資料;所述裝置應用於節點設備端,包括: 接收單元,用於接收所述客戶端發送的資料請求,所述資料請求包括資料位置標識,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的位置; 獲取單元,用於基於所述資料位置標識,為所述客戶端獲取所述部分目標資料; 生成單元,用於基於所述部分目標資料,為所述客戶端生成新的資料位置標識,以作為所述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述目標資料的資料位置標識; 發送單元,用於向所述客戶端發送所述部分目標資料和所述新的資料位置標識。 在又一示出的實施方式中,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的起始位置;所述資料請求還包括所述部分目標資料的容量; 所述生成單元進一步用於: 基於所述資料位置標識和所述部分目標資料的容量,為所述客戶端生成所述部分目標資料。 在又一示出的實施方式中,所述目標資料為列表型資料;所述部分目標資料的容量包括所述部分目標資料的列表條目數、或部分目標資料佔用空間數量。 在又一示出的實施方式中,所述資料位置標識是基於所述部分目標資料所包括的最後一條列表資料生成的唯一性標識。 在又一示出的實施方式中,所述列表資料包括在所述區塊鏈的分布式資料庫存證的交易哈希值。 在又一示出的實施方式中,所述區塊鏈為聯盟鏈,所述節點設備為聯盟成員節點設備,所述客戶端為與聯盟成員節點設備連接的用戶客戶端。 相應地,本說明書一個或多個實施例還提出了一種計算機設備,包括:記憶體和處理器;所述記憶體上儲存有可由所述處理器運行的計算機程式;所述處理器運行所述計算機程式時,執行上述第一節點設備所執行的區塊鏈資料的多次獲取方法。 相應地,本說明書一個或多個實施例還提出了計算機可讀儲存媒體,其上儲存有計算機程式,所述計算機程式被處理器運行時,執行上述第一節點設備所執行的區塊鏈資料的多次獲取方法。 由以上技術方案可見,本說明書提供的區塊鏈資料的多次獲取方法和裝置、計算機設備及計算機可讀儲存媒體,客戶端可以依據自身的需求或限制,靈活地向區塊鏈的節點設備請求獲取部分目標資料;基於具備唯一性屬性的資料位置標識的設置,不易出現所獲得的部分目標資料重複或遺漏等現象。
這裡將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數字表示相同或相似的要素。以下示例性實施例中所描述的實施方式並不代表與本說明書一個或多個實施例相一致的所有實施方式。相反,它們僅是與如所附申請專利範圍中所詳述的、本說明書一個或多個實施例的一些態樣相一致的裝置和方法的例子。 需要說明的是:在其他實施例中並不一定按照本說明書示出和描述的順序來執行相應方法的步驟。在一些其他實施例中,其方法所包括的步驟可以比本說明書所描述的更多或更少。此外,本說明書中所描述的單個步驟,在其他實施例中可能被分解為多個步驟進行描述;而本說明書中所描述的多個步驟,在其他實施例中也可能被合併為單個步驟進行描述。 用戶客戶端在向資料庫請求目標資料時,常因請求的資料量過大、或客戶端的頁面顯示限制,需分批次地請求以獲得目標資料,以在客戶端分頁地顯示目標資料。傳統的分頁式資料請求方案,通常強烈地依賴資料庫的分頁屬性,而且每個分頁的資料記錄數目通常是固定的;如果資料庫動態地有新紀錄產生,請求所得的分頁資料可能出現重複或缺失。而且當分頁資料請求方案對應的分頁資料集合的邊界剛好處在資料庫同一個時刻產生的多條資料中時,基於固定資料記錄數目模式的分頁資料請求所得的資料就可能遺漏資料記錄;如果資料庫動態更新,該時刻的多條資料在後來被更新入資料庫,之前採用以時間為參數的分頁請求資料所得的資料也可能會遺漏資料記錄。 為解決以上提出的問題,本說明書的一個或多個實施例提供了一種區塊鏈資料的分次獲取方法,應用於包括多個節點設備和客戶端的區塊鏈網路,所述多個節點設備儲存有待所述客戶端分次獲取的目標資料。 為本說明書實施方式提供進一步的背景,分布式帳本系統(DLS)也可以稱為共識網路(例如,由點對點節點組成)和區塊鏈網路,使參與實體能夠安全地、不可篡改地進行交易和儲存資料。儘管術語“區塊鏈”一詞通常與比特幣加密貨幣網路相關聯,但是本文所使用的區塊鏈在不涉及任何特殊用例的情況下,通常指代DLS。如上所述,區塊鏈網路可以被提供為公有區塊鏈網路、私有區塊鏈網路或聯盟區塊鏈網路。 在公有區塊鏈網路中,共識過程由共識網路的節點控制。例如,數百、數千、甚至數百萬個實體可以協同運作公有區塊鏈網路,每個實體操作公共區塊鏈網路中的至少一個節點。因此,公共區塊鏈網路可以被認為是針對參與實體的公有網路。在一些示例中,大多數實體(節點)必須對每個區塊簽名從而使得該區塊有效,並被添加到區塊鏈網路的區塊鏈(分布式帳本)中。示例性公有區塊鏈網路包括作為點對點支付網路的比特幣網路。比特幣網路利用稱為區塊鏈的分布式帳本。然而,如上所述,術語“區塊鏈”通常用於指代分布式帳本,而不特別指代比特幣網路。 通常,公有區塊鏈網路支持公開交易。公開交易在公有區塊鏈網路內的所有節點間共享,並儲存在全域區塊鏈中。全域區塊鏈是跨所有節點複製的區塊鏈。也就是說,所有節點相對於全域區塊鏈處於完全共識狀態。為了達成共識(例如,同意向區塊鏈添加區塊),在公有區塊鏈網路內實施共識協議。示例性共識協議包括但不限於在比特幣網路中實施的工作量證明(POW)機制。 通常,為特定實體提供私有區塊鏈網路,該特定實體集中控制讀寫許可。該特定實體控制哪些節點能夠參與區塊鏈網路。因此,私有區塊鏈網路通常被稱為許可網路,其限制允許誰參與網路,以及它們的參與級別(例如,僅在某些交易中)。可以使用各種類型的存取控制機制(例如,現有參與者投票添加新實體,監管機構可以控制准入)。 通常,聯盟區塊鏈網路在參與實體之間是私有的。在聯盟區塊鏈網路中,共識過程由被授權的節點組控制,一個或多個節點由相應的實體(例如,金融機構、保險公司)操作。例如,由十(10)個實體(例如,金融機構,保險公司)組成的聯盟可以操作聯盟區塊鏈網路,每個實體操作聯盟區塊鏈網路中的至少一個節點。因此,聯盟區塊鏈網路可以被認為是關於參與實體的私有網路。在一些示例中,每個實體(節點)必須對每個區塊進行簽名,從而使得該區塊有效並且被添加到區塊鏈中。在一些示例中,至少實體(節點)的子集(例如,至少7個實體)必須對每個區塊簽名,從而使區塊有效並且被添加到區塊鏈中。 本文參考聯盟區塊鏈網路進一步詳細描述了本說明書的實施方式,該聯盟區塊鏈網路在參與實體中是部分公有的。然而,可以預期,本說明書的實施方式可以在任何適當類型的區塊鏈網路中實現。 本說明書一個或多個實施例所述的節點(或節點設備)是指可透過遵循相應節點協議、運行節點協議程式的安裝來加入該區塊鏈,作為該區塊鏈的節點。本領域的技術人員通常將具有區塊鏈分布式資料庫的資料全備份的節點設備稱為全節點,將具有區塊鏈分布式資料庫的部分備份資料(如僅有區塊頭的資料)的節點設備稱為輕節點等。在本說明書的一個或多個實施例中,並不限定上述節點設備的節點類型。 所述區塊鏈網路還包括客戶端。用戶實體透過在終端運行客戶端安裝程式加入到上述區塊鏈網路中來,上述客戶端安裝程式可以為區塊鏈節點設備的安裝程式,相應地,該客戶端也作為上述區塊鏈的節點設備,在備份區塊鏈的分布式資料庫副本時向其鄰近的節點發起資料獲取請求;上述客戶端安裝程式也可以是與聯盟區塊鏈鏈中的一聯盟成員節點設備連接的、被控制存取的區塊鏈用戶客戶端程式,相應地,該客戶端由於不具備直接存取區塊鏈的分布式資料庫的權限,而一般不被作為上述區塊鏈的節點,需要向與其連接的一個或多個聯盟成員節點進行具有權限獲知的資料請求。本說明書並不限定上述客戶端是否為上述區塊鏈的節點設備。如上所述,上述客戶端無論作為區塊鏈節點設備還是聯盟成員節點的用戶端設備,可向區塊鏈中的一個或多個節點設備獲取儲存於區塊鏈的分布式資料庫中的目標資料。 上述一個或多個實施例並不限制所述的目標資料在區塊鏈的分布式資料庫的具體位置,可以作為交易(transaction)的內容記錄被儲存於區塊鏈的區塊(block)中,也可以作為狀態資料被儲存於區塊鏈的“狀態資料庫”中,等等。 在本說明書中一個或多個實施例中所描述的交易(transaction),是指透過區塊鏈的節點設備創建,並需要最終發佈至區塊鏈的區塊(block)中的一筆資料。其中,區塊鏈中的交易,存在狹義的交易以及廣義的交易之分。狹義的交易是指用戶向區塊鏈發佈的一筆價值轉移;例如,在傳統的比特幣區塊鏈網路中,交易可以是用戶在區塊鏈中發起的一筆轉帳。而廣義的交易是指用戶實體透過節點向區塊鏈發佈的一筆具有業務意圖的業務資料,如本實施例所述的包括目標資料的交易。 除了以交易的形式被儲存於區塊中,區塊鏈分布式資料庫中一些資料還可以被保存在區塊鏈的“狀態資料庫”中,例如儲存於節點設備本地維護的三顆Merkle Patricia Trie中,包括state樹,transaction樹,及receipt樹,等等。 如圖1所示,本實施例所提供的區塊鏈資料的分次獲取方法包括: 步驟102,第一節點設備接收所述客戶端發送的資料請求,所述資料請求包括資料位置標識,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的位置。 本實施方式所述的第一節點設備,可以為上述區塊鏈網路所包括的多個節點設備中的任意一個。本實施例所述的資料位置標識,作為標識本次待獲取的部分目標資料在目標資料中的位置的唯一性表達,可使得區塊鏈的節點設備在區塊鏈分布式資料庫中唯一確定地尋址到本次待獲取的部分目標資料的位置。關於上述資料位置標識的具體表現形式,可依據目標資料的屬性或目標資料所屬的業務場景而具體設置,例如用以標識上述部分目標資料在目標資料中的起始位置、或結束位置、或其他位置等。 步驟104,基於所述資料位置標識,為所述客戶端獲取所述部分目標資料。 區塊鏈的節點設備可根據該資料位置標識,及系統協議規定的(預設的)部分目標資料的容量大小、或其他關於上述部分目標資料的參數(如時間參數、資料屬性參數等)、或上述客戶端所能接收的資料容量限制等因素,在區塊鏈的分布式資料庫內查詢獲取到相應的部分目標資料。 在一種示出的實施方式中,上述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的起始位置;相應地,上述資料請求還可包括所述部分目標資料的容量。則上述基於所述資料位置標識,為所述客戶端生成所述部分目標資料,包括:基於所述資料位置標識和所述部分目標資料的容量,從上述資料位置標識開始(可以包括或不包括上述資料位置標識所在的資料),為所述客戶端生成符合所述容量的部分目標資料。 上述部分目標資料的容量可以包括部分目標資料所佔用的空間大小,如1M、2M,等;當所述目標資料為列表資料時,還可包括部分目標資料的條目數等數量,如1-10條、11-15條,等。由此可見,相比於傳統資料庫中的資料分頁獲取方案,本實施例所提供的資料分次獲取方法,可以根據具體的業務需求,靈活設置每次獲取的目標資料數量。 步驟106,基於所述部分目標資料,為所述客戶端生成新的資料位置標識,以作為所述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述目標資料的資料位置標識。 上述第一節點設備在為上述客戶端獲取到所請求的部分目標資料後,應為上述客戶端更新其資料位置標識,以方便該客戶端向上述多個節點設備中的任一節點設備繼續獲取目標資料時使用。 以下,以一業務場景為例,簡述上述資料位置標識的生成方式。構建於區塊鏈上的用戶社區,通常可承載多種業務模式,如租房、租車、交友等等;由此產生的用戶業務積分可作為獎勵用戶參與社區業務的一種表徵。在該實施方式中,上述客戶端可作為與聯盟區塊鏈的聯盟成員節點設備連接的伺服器端或用戶端設備,參與到構建在聯盟鏈上的業務活動中。由於用戶數量巨大,客戶端在向節點設備獲取用戶積分列表時通常需要分次獲取以分頁在客戶端顯示。 用戶積分列表中所包括的用戶積分記錄通常可包括以下參數:用戶ID、積分值(或積分變動值)、積分發放時間、與積分變更相關的用戶行為在區塊鏈上存證的交易哈希值、等等。由於哈希算法的單向唯一性屬性,上述與積分變更相關的用戶行為在區塊鏈上存證的交易哈希值在區塊鏈的分布式資料庫中通常為唯一性的標識,因此與該哈希值連接的任何字符串(或該哈希值本身)均可作為用以標定用戶積分記錄位置的資料位置標識,應用在上述實施方式中。 當節點設備為客戶端獲取了本次待獲取的部分用戶積分記錄後,節點設備可將本次待獲取的部分用戶積分記錄中最終一條記錄的如下字符串: “用戶ID+‘^’+積分值(或積分變動值)‘^’+積分發放時間‘^’+與積分變更相關的用戶行為在區塊鏈上存證的哈希值” 生成為新的資料位置標識,以作為上述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述用戶積分記錄的資料位置標識。本領域技術人員可知,上述資料位置標識可以依據已獲取部分資料的最後一條用戶積分記錄的屬性生成,也可以依據已獲取部分資料的下一條用戶積分記錄的屬性生成,還可以依據系統協議預設的任意一條用戶積分記錄的屬性生成,在此不受限制。 步驟108,向所述客戶端發送所述部分目標資料和所述新的資料位置標識。 基於上述一個或多個實施例所述的區塊鏈資料的分次獲取方法,客戶端可以依據自身的需求或限制,靈活地向區塊鏈的節點設備請求獲取部分目標資料;基於具有唯一性屬性的資料位置標識的設置,不易出現所獲得的部分目標資料重複或遺漏等現象;而且對於可能向多個節點請求資料備份的客戶端而言,由於資料位置標識在區塊鏈的分布式資料庫中的唯一性屬性,無論該客戶端在對目標資料的備份中向幾個節點設備發起資料請求,基於區塊鏈的共識機制,均可獲得準確、完整的目標資料;相比於傳統資料庫中的資料多次獲取方法,提高了待獲取目標資料的命中概率。 與上述流程實現對應,本說明書的實施例還提供了區塊鏈資料的多次獲取裝置20。裝置20可以透過軟體實現,也可以透過硬體或者軟硬體結合的方式實現。以軟體實現為例,作為邏輯意義上的裝置,是透過所在設備的CPU (Central Process Unit,中央處理器)將對應的計算機程式指令讀取到內存記憶體中運行形成的。從硬體層面而言,除了圖3所示的CPU、內存記憶體以及記憶體之外,上述裝置所在的設備通常還包括用於進行無線信號收發的晶片等其他硬體,及/或用於實現網路通信功能的板卡等其他硬體。 如圖2所示,本說明書還提供了一種區塊鏈資料的分次獲取裝置20,應用於包括多個節點設備和客戶端的區塊鏈網路,所述區塊鏈的分布式資料庫儲存有待所述客戶端分次獲取的目標資料;所述裝置應用於節點設備端,所述裝置20包括: 接收單元202,用於接收所述客戶端發送的資料請求,所述資料請求包括資料位置標識,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的位置; 獲取單元204,用於基於所述資料位置標識,為所述客戶端獲取所述部分目標資料; 生成單元206,用於基於所述部分目標資料,為所述客戶端生成新的資料位置標識,以作為所述客戶端向所述多個節點設備中的任一節點設備繼續獲取所述目標資料的資料位置標識; 發送單元208,用於向所述客戶端發送所述部分目標資料和所述新的資料位置標識。 在又一示出的實施方式中,所述資料位置標識用以標識本次待獲取的部分目標資料在所述目標資料中的起始位置;所述資料請求還包括所述部分目標資料的容量; 所述生成單元206進一步用於: 基於所述資料位置標識和所述部分目標資料的容量,為所述客戶端生成所述部分目標資料。 在又一示出的實施方式中,所述目標資料為列表型資料;所述部分目標資料的容量包括所述部分目標資料的列表條目數、或部分目標資料佔用空間數量。 在又一示出的實施方式中,所述資料位置標識是基於所述部分目標資料所包括的最後一條列表資料生成的唯一性標識。 在又一示出的實施方式中,所述列表資料包括在所述區塊鏈的分布式資料庫存證的交易哈希值。 在又一示出的實施方式中,所述區塊鏈為聯盟鏈,所述節點設備為聯盟成員節點設備,所述客戶端為與聯盟成員節點設備連接的用戶客戶端。 上述裝置20中各個單元的功能和作用的實現過程具體詳見上述第一方節點設備所執行的區塊鏈資料的多次獲取方法中對應步驟的實現過程,相關之處參見方法實施例的部分說明即可,在此不再贅述。 以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理模組,即可以位於一個地方,或者也可以分佈到多個網路模組上。可以根據實際的需要選擇其中的部分或者全部單元或模組來實現本說明書方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解並實施。 上述實施例闡明的裝置、單元、模組,具體可以由計算機晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為計算機,計算機的具體形式可以是個人計算機、膝上型計算機、蜂巢式電話、相機電話、智慧電話、個人數位助理、媒體播放器、導航設備、電子郵件收發設備、遊戲控制台、平板計算機、可穿戴設備或者這些設備中的任意幾種設備的組合。 與上述方法實施例相對應,本說明書的實施例還提供了一種計算機設備,如圖3所示,該計算機設備包括記憶體和處理器。其中,記憶體上儲存有能夠由處理器運行的計算機程式;處理器在運行儲存的計算機程式時,執行本說明書實施例中上述第一方節點設備所執行的區塊鏈資料的多次獲取方法的各個步驟。對上述第一節點設備所執行的區塊鏈資料的多次獲取方法的各個步驟的詳細描述請參見之前的內容,不再重複。 與上述方法實施例相對應,本說明書的實施例還提供了一種計算機可讀儲存媒體,該儲存媒體上儲存有計算機程式,這些計算機程式在被處理器運行時,執行本說明書實施例中第一節點設備所執行的區塊鏈資料的多次獲取方法的各個步驟。對上述第一節點設備所執行的區塊鏈資料的多次獲取方法的各個步驟的詳細描述請參見之前的內容,不再重複。 以上所述僅為本說明書的較佳實施例而已,並不用以限制本說明書,凡在本說明書的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本說明書保護的範圍之內。 在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和內存記憶體。 內存記憶體可能包括計算機可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)及/或非揮發性內存記憶體等形式,如唯讀記憶體(ROM)或閃存(flash RAM)。內存記憶體是計算機可讀媒體的示例。 計算機可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是計算機可讀指令、資料結構、程式的模組或其他資料。 計算機的儲存媒體的例子包括,但不限於相變內存記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他內存記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁碟儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,計算機可讀媒體不包括暫存電腦可讀媒體(transitory media),如調變的資料信號和載波。 還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。 本領域技術人員應明白,本說明書的實施例可提供為方法、系統或計算機程式產品。因此,本說明書的實施例可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體態樣的實施例的形式。而且,本說明書的實施例可採用在一個或多個其中包含有計算機可用程式代碼的計算機可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的計算機程式產品的形式。
20:裝置 202:接收單元 204:獲取單元 206:生成單元 208:發送單元
[圖1]為本說明書所提供的一實施例所示的區塊鏈資料的多次獲取方法的流程示意圖; [圖2]為本說明書所提供的一實施例提供的應用於節點設備端的區塊鏈資料的多次獲取裝置的示意圖; [圖3]為運行本說明書所提供的區塊鏈資料的多次獲取裝置實施例的一種硬體結構圖。

Claims (14)

  1. 一種區塊鏈資料的分次獲取方法,應用於包括多個節點設備和客戶端的區塊鏈網路,該區塊鏈的分布式資料庫儲存有待該客戶端分次獲取的目標資料;該方法包括: 第一節點設備接收該客戶端發送的資料請求,該資料請求包括資料位置標識,該資料位置標識用以標識本次待獲取的部分目標資料在該目標資料中的位置; 基於該資料位置標識,為該客戶端獲取該部分目標資料; 基於該部分目標資料,為該客戶端生成新的資料位置標識,以作為該客戶端向該多個節點設備中的任一節點設備繼續獲取該目標資料的資料位置標識; 向該客戶端發送該部分目標資料和該新的資料位置標識。
  2. 根據請求項1所述的方法,該資料位置標識用以標識本次待獲取的部分目標資料在該目標資料中的起始位置;該資料請求還包括該部分目標資料的容量; 所述基於該資料位置標識,為該客戶端生成該部分目標資料,包括: 基於該資料位置標識和該部分目標資料的容量,為該客戶端生成該部分目標資料。
  3. 根據請求項2所述的方法,該目標資料為列表資料;該部分目標資料的容量包括該部分目標資料的列表條目數、或部分目標資料佔用空間數量。
  4. 根據請求項3所述的方法,該資料位置標識是基於該部分目標資料所包括的最後一條列表資料生成的唯一性標識。
  5. 根據請求項3或4所述的方法,該列表資料包括在該區塊鏈的分布式資料庫存證的交易哈希值。
  6. 根據請求項1至4中任一項所述的方法,該區塊鏈為聯盟鏈,該節點設備為聯盟成員節點設備,該客戶端為與聯盟成員節點設備連接的用戶客戶端。
  7. 一種區塊鏈資料的分次獲取裝置,應用於包括多個節點設備和客戶端的區塊鏈網路,該區塊鏈的分布式資料庫儲存有待該客戶端分次獲取的目標資料;該裝置應用於節點設備端,包括: 接收單元,用於接收該客戶端發送的資料請求,該資料請求包括資料位置標識,該資料位置標識用以標識本次待獲取的部分目標資料在該目標資料中的位置; 獲取單元,用於基於該資料位置標識,為該客戶端獲取該部分目標資料; 生成單元,用於基於該部分目標資料,為該客戶端生成新的資料位置標識,以作為該客戶端向該多個節點設備中的任一節點設備繼續獲取該目標資料的資料位置標識; 發送單元,用於向該客戶端發送該部分目標資料和該新的資料位置標識。
  8. 根據請求項7所述的裝置,該資料位置標識用以標識本次待獲取的部分目標資料在該目標資料中的起始位置;該資料請求還包括該部分目標資料的容量; 該生成單元進一步用於: 基於該資料位置標識和該部分目標資料的容量,為該客戶端生成該部分目標資料。
  9. 根據請求項8所述的裝置,該目標資料為列表型資料;該部分目標資料的容量包括該部分目標資料的列表條目數、或部分目標資料佔用空間數量。
  10. 根據請求項9所述的裝置,該資料位置標識是基於該部分目標資料所包括的最後一條列表資料生成的唯一性標識。
  11. 根據請求項9或10所述的裝置,該列表資料包括在該區塊鏈的分布式資料庫存證的交易哈希值。
  12. 根據請求項7至10中任一項所述的裝置,該區塊鏈為聯盟鏈,該節點設備為聯盟成員節點設備,該客戶端為與聯盟成員節點設備連接的用戶客戶端。
  13. 一種計算機設備,包括:記憶體和處理器;該記憶體上儲存有可由該處理器運行的計算機程式;該處理器運行該計算機程式時,執行如請求項1到6任一項所述的方法。
  14. 一種計算機可讀儲存媒體,其上儲存有計算機程式,該計算機程式被處理器運行時,執行如請求項1到6任一項所述的方法。
TW109100047A 2019-04-17 2020-01-02 區塊鏈資料的分次獲取方法和裝置 TWI714414B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910309271.8 2019-04-17
CN201910309271.8A CN110162570B (zh) 2019-04-17 2019-04-17 区块链数据的分次获取方法和装置

Publications (2)

Publication Number Publication Date
TWI714414B true TWI714414B (zh) 2020-12-21
TW202105197A TW202105197A (zh) 2021-02-01

Family

ID=67639558

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109100047A TWI714414B (zh) 2019-04-17 2020-01-02 區塊鏈資料的分次獲取方法和裝置

Country Status (3)

Country Link
CN (2) CN112966052A (zh)
TW (1) TWI714414B (zh)
WO (1) WO2020211498A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726049B2 (en) 2019-04-17 2020-07-28 Alibaba Group Holding Limited Obtaining blockchain data in stages
CN112966052A (zh) * 2019-04-17 2021-06-15 创新先进技术有限公司 区块链数据的分次获取方法和装置
CN110704733B (zh) * 2019-09-20 2020-10-02 北京三快在线科技有限公司 一种发送数据的方法及装置
CN111314280B (zh) * 2019-11-28 2022-05-27 上海孝庸资产管理有限公司 一种基于多用户大数据量的慢系统数据实时读取更新方法
CN111506589B (zh) * 2020-04-13 2023-06-23 西安电子科技大学 基于联盟链的区块链数据服务系统、访问方法及存储介质
CN112732679A (zh) * 2021-01-20 2021-04-30 维沃移动通信有限公司 数据迁移方法、装置、电子设备及可读存储介质
CN113641649B (zh) * 2021-10-18 2022-02-18 杭州趣链科技有限公司 数据获取方法、装置、设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170228371A1 (en) * 2016-02-05 2017-08-10 Manifold Technology, Inc. Blockchain-enhanced database
TWI644282B (zh) * 2017-05-02 2018-12-11 林庠序 基於共乘行為的碳匯產生系統與相關的共乘媒合子系統
CN109145205A (zh) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 一种基于区块链的跨链数据操作方法和装置
TW201911809A (zh) * 2017-08-15 2019-03-16 安地卡及巴布達商區塊鏈控股有限公司 臨界數位簽章方法及系統

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874326A (zh) * 2016-07-05 2017-06-20 阿里巴巴集团控股有限公司 一种条目列表获取请求处理方法及装置
CN107018125B (zh) * 2017-02-17 2019-08-09 阿里巴巴集团控股有限公司 一种区块链系统、数据存储方法及装置
CN113766035B (zh) * 2017-03-28 2023-05-23 创新先进技术有限公司 一种业务受理及共识的方法及装置
US10762479B2 (en) * 2017-04-05 2020-09-01 Samsung Sds Co., Ltd. Method and system for processing blockchain-based real-time transaction
CN107453896B (zh) * 2017-06-27 2020-08-04 创新先进技术有限公司 多重区块链网络数据处理方法、装置及服务器
US20190050810A1 (en) * 2017-08-14 2019-02-14 Honeywell International Inc. Terminal automation solutions supporting blockchain technology
CN109167811B (zh) * 2018-07-27 2020-05-05 阿里巴巴集团控股有限公司 一种基于区块链的跨链数据访问方法和装置
CN109299157B (zh) * 2018-08-27 2021-11-23 杭州安恒信息技术股份有限公司 一种分布式大单表的数据导出方法及装置
CN109522330B (zh) * 2018-10-18 2021-05-04 上海达家迎信息科技有限公司 基于区块链的云平台数据处理方法、装置、设备及介质
CN109461079B (zh) * 2018-10-29 2022-04-05 众安信息技术服务有限公司 基于区块链的交易处理方法和装置
CN109284633B (zh) * 2018-10-30 2022-02-11 众安信息技术服务有限公司 用于区块链网络系统的数据处理方法和数据处理装置
CN109522457A (zh) * 2018-11-22 2019-03-26 河北冀云气象技术服务有限责任公司 数据获取方法及装置
CN112966052A (zh) * 2019-04-17 2021-06-15 创新先进技术有限公司 区块链数据的分次获取方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170228371A1 (en) * 2016-02-05 2017-08-10 Manifold Technology, Inc. Blockchain-enhanced database
TWI644282B (zh) * 2017-05-02 2018-12-11 林庠序 基於共乘行為的碳匯產生系統與相關的共乘媒合子系統
TW201911809A (zh) * 2017-08-15 2019-03-16 安地卡及巴布達商區塊鏈控股有限公司 臨界數位簽章方法及系統
CN109145205A (zh) * 2018-07-27 2019-01-04 阿里巴巴集团控股有限公司 一种基于区块链的跨链数据操作方法和装置

Also Published As

Publication number Publication date
WO2020211498A1 (zh) 2020-10-22
CN112966052A (zh) 2021-06-15
TW202105197A (zh) 2021-02-01
CN110162570B (zh) 2021-03-05
CN110162570A (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
TWI714414B (zh) 區塊鏈資料的分次獲取方法和裝置
TWI762818B (zh) 基於區塊鏈的發票創建方法及裝置、電子設備
CN110958117B (zh) 支持零知识证明的区块链的互操作性
CN110275884B (zh) 数据存储方法及节点
US10713654B2 (en) Enterprise blockchains and transactional systems
US20190251557A1 (en) Executing multi-party transactions using smart contracts
TW201937436A (zh) 基於區塊鏈的交易執行方法及裝置、電子設備
TWI706280B (zh) 資料讀寫方法及裝置、電子設備
US20190305950A1 (en) Active state blockchain synchronization
TWI727284B (zh) 基於區塊鏈的隱私交易方法、裝置及其電腦設備、基於區塊鏈內的隱私交易的應用方法及其電腦設備
TW202022754A (zh) 基於區塊鏈的發票創建方法及裝置、電子設備
WO2020038105A1 (zh) 基于区块链的数据存证方法和装置
WO2021197092A1 (zh) 区块链账户余额的存证、恢复
US11423473B2 (en) Blockchain-based leasing
TW202025685A (zh) 跨鏈存證方法及接取方法、裝置、電子設備
TW202025057A (zh) 欄位更新方法及裝置、電子設備
CN112612856B (zh) 基于区块链的数据处理方法和装置
WO2020228364A1 (zh) 基于区块链的著作权分配方法和装置
US20190251071A1 (en) Blockchain data relationship structuring scheme based on binary log replication
TW202027457A (zh) 基於區塊鏈的資料處理方法和裝置
TWI699728B (zh) 區塊發佈方法及裝置、電子設備
WO2023056249A1 (en) Custodial systems for non-fungible tokens
CN110119947B (zh) 共享工作量证明算力生成共生区块链的方法和设备
WO2023207529A1 (zh) 数据处理方法、装置及设备、介质、产品
WO2019214071A1 (zh) 区块链上用户通信方法、装置、终端设备及存储介质