TW201904229A - 資料處理的方法及裝置 - Google Patents

資料處理的方法及裝置 Download PDF

Info

Publication number
TW201904229A
TW201904229A TW107107225A TW107107225A TW201904229A TW 201904229 A TW201904229 A TW 201904229A TW 107107225 A TW107107225 A TW 107107225A TW 107107225 A TW107107225 A TW 107107225A TW 201904229 A TW201904229 A TW 201904229A
Authority
TW
Taiwan
Prior art keywords
consensus
processing
block
processing block
parameters
Prior art date
Application number
TW107107225A
Other languages
English (en)
Other versions
TWI697227B (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 香港商阿里巴巴集團服務有限公司
Publication of TW201904229A publication Critical patent/TW201904229A/zh
Application granted granted Critical
Publication of TWI697227B publication Critical patent/TWI697227B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Advance Control (AREA)
  • Detergent Compositions (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本發明揭示一種資料處理的方法及裝置,該方法中區塊鏈節點在確定獲取到的預處理塊通過共識後,可啟動對下一次待共識的預處理塊進行共識,以透過並行的方式對已通過共識的預處理塊中包含的業務資料進行資料處理。由於區塊鏈節點在確定獲取到的預處理塊通過共識後,採用並行處理方式,啟動對下一次待共識的預處理塊進行共識,且對已通過共識的預處理塊中包含的業務資料進行處理。換句話說,區塊鏈節點實現業務資料在業務共識階段以及業務提交階段的並行處理,既能夠對一部分業務資料執行業務提交階段的資料處理,同時又可執行另一部分業務資料的業務共識階段的共識處理,從而提升系統的業務資料處理效率。

Description

資料處理的方法及裝置
本發明係有關電腦技術領域,尤其有關一種資料處理的方法及裝置。
隨著電腦技術的不斷發展,區塊鏈技術的應用範圍得到了進一步的拓展,目前,多種業務模式由於區塊鏈技術的引入而變得更加的有效和安全,從而為用戶提供了更為有效的業務服務。   在實際應用中,涉及區塊鏈技術的業務在業務執行過程中大致可分為三個過程:   一、業務受理階段。在這一階段中,區塊鏈節點可接收用戶透過終端或用戶端發送的待處理的業務資料(也可以稱之為交易資料),並在通過對該業務資料的驗證後,儲存該業務資料。當然,區塊鏈節點在此階段也可接收由其他區塊鏈節點透過廣播的方式發送的待處理的業務資料,按照上述記載的方式,儲存該業務資料。   二、業務共識階段。在這一階段中,若該區塊鏈節點作為發起共識的主節點,可從儲存的業務資料中撈取一部分業務資料打包成預處理塊,並廣播給其他區塊鏈節點,以對該預處理塊進行共識。共識網路中的其他區塊鏈節點在接收到該預處理塊後,可根據已儲存的業務資料,對該預處理塊中包含的業務資料進行共識驗證。當然,若該區塊鏈節點不是主節點,則也可接收主節點廣播的預處理塊,並透過自身記憶體中儲存的業務請求,對該預處理塊中包含的業務請求進行共識驗證。   三、業務提交階段。在這一階段中,在該區塊鏈節點確定業務共識階段處理的預處理塊通過共識後,可將該預處理塊中包含的業務資料儲存在區塊鏈中。不僅如此,該區塊鏈節點可將這些業務資料儲存在指定的資料庫中,並從自身的儲存空間中釋放該預處理塊中所包含的業務資料。   在現有技術中,對於同一個部分的業務資料,區塊鏈節點通常需要在業務共識階段完成的基礎上,才能進入業務提交階段,而只有在該業務提交階段完成後,區塊鏈節點才可以對下一次待共識的預處理塊進行共識。   然而,由於現有技術中,對於業務資料處理過程中所經歷的業務共識階段和業務提交階段是串列執行的,區塊鏈節點只有在完成一次業務資料處理的業務提交階段後,方能啟動下一次業務資料處理的業務共識階段,這樣就勢必增加了兩次業務資料處理的時間間隔,進而降低了整個系統的業務處理效率。
本發明實施例提供一種資料處理的方法,用以解決現有技術的區塊鏈技術中存在的業務處理效率低的問題。   本發明實施例提供了一種資料處理的方法,包括:   區塊鏈節點獲取待共識的預處理塊,並對所述預處理塊進行共識;   若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   本發明實施例提供一種資料處理的裝置,用以解決現有技術業務共識效率較低的問題。   本發明實施例提供了一種資料處理的裝置,包括:   獲取模組,獲取待共識的預處理塊,並對所述預處理塊進行共識;   處理模組,若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   本發明實施例提供一種資料處理的裝置,用以解決現有技術業務共識效率較低的問題。   本發明實施例提供了一種資料處理的裝置,包括:記憶體和至少一個處理器,其中:所述記憶體儲存有程式,並被配置成由所述至少一個處理器執行以下步驟:   獲取待共識的預處理塊,並對所述預處理塊進行共識;   若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   本發明實施例採用的上述至少一個技術方案能夠達到以下有益效果:   在本發明實施例中,由於區塊鏈節點在確定獲取到的預處理塊通過共識後,採用並行處理方式,啟動對下一次待共識的預處理塊進行共識,並且對已通過共識的預處理塊中包含的業務資料進行資料處理。換句話說,區塊鏈節點實現了業務資料在業務共識階段以及業務提交階段的並行處理,既能夠對一部分業務資料執行業務提交階段的資料處理,同時又可執行另一部分業務資料的業務共識階段的共識處理,這樣能夠縮短兩次業務共識階段的共識處理的時間間隔,從而有效提升了系統的業務資料處理效率。
為了使本技術領域的人員更好地理解本發明中的技術方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明的一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。   圖1為本發明實施例提供的資料處理過程的示意圖,具體包括以下步驟:   S101:區塊鏈節點獲取待共識的預處理塊,並對所述預處理塊進行共識。   在本發明實施例中,區塊鏈節點在業務共識階段中,可獲取在一次共識所要的預處理塊(這裏將目前獲取的預處理塊稱之為本次共識所獲取的預處理塊)。其中,該預處理塊可以是由該區塊鏈節點根據自身保存的業務資料而產生的,也可以是從其他區塊鏈節點中獲取到的。   S102:若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   上述區塊鏈節點在確定出本次共識中待共識的預處理塊通過共識驗證後,可採用並行處理的方式,對已通過共識的預處理塊進行業務提交階段的資料處理,這樣,能夠有效實現在對下一個預處理塊進行業務共識階段的共識處理時,還可以同步對已通過共識的預處理塊進行業務提交階段的資料處理。   由此可見,在本發明實施例中,在業務資料的處理過程中,業務共識節點的業務共識階段的共識處理與業務提交階段的資料處理是同步並行處理的。即假設待共識的預處理塊為至少兩個,那麼透過本發明提供的技術方案,能夠實現在對已通過共識的預處理塊進行業務提交階段的資料處理時,同步可以並行地對尚未通過共識的預處理塊進行業務共識階段的共識處理。   需要說明的是,對於本次共識中待共識的預處理塊,在確定透過對本次共識中待共識的預處理塊的共識處理時,啟動對下一次共識的待共識的預處理塊的共識處理,同時獲取針對本次共識通過的預處理塊的處理參數,以便於用來實現業務資料處理過程中業務提交階段的資料處理的處理器(後續可以稱之為預設的處理器)基於這些處理參數對本次共識通過的預處理塊進行資料處理。   例如:一種情況:在啟動對下一次共識的待共識的預處理塊的共識處理時,預設的處理器基於產生的處理參數對本次共識通過的預處理塊進行資料處理。這裏可以理解為對下一次共識的待共識的預處理塊的共識處理與對本次共識通過的預處理塊進行資料處理是同時並行處理的,有效縮短了本次共識的待共識的預處理塊的共識處理與下一次共識的待共識的預處理塊的共識處理之間的時間間隔;   另一種情況:在啟動對下一次共識的待共識的預處理塊的共識處理時,預設的處理器在對之前共識通過的預處理塊進行資料處理,那麼本次共識通過的預處理塊將被儲存至預設的佇列中進行等待,預設的處理器按照某種規則(例如:按照共識完成時間順序等)依次對該佇列中儲存的、通過共識的預處理塊進行資料處理,這裏可以理解為本次共識的待共識的預處理塊的共識處理與該預處理塊的資料處理是透過非同步方式完成的。   例如,假設有A、B、C三個預處理塊,這三個預處理塊按照字母的排列順序依次發送至區塊鏈節點中進行共識。區塊鏈節點確定預處理塊A通過共識後,可透過預設的處理器對預處理塊A進行資料處理。與此同時,區塊鏈節點可對預處理塊B進行共識,而當確定預處理塊B通過共識後,發現還未完成對預處理塊A的資料處理時,則可將通過共識的預處理塊B儲存在預設的佇列中進行等待,並繼續對預處理塊C進行共識。當確定完成對預處理塊A的資料處理時,則可從預設的佇列中提取出預處理塊B,繼而透過預設的處理器,對預處理塊B進行資料處理。   所以,對於每一個預處理塊來說,該預處理塊的共識處理和資料處理這兩個階段是透過非同步的方式完成的。而對於不同的預處理塊來說,一個預處理塊的共識處理和另一個已通過共識的預處理塊的資料處理可以透過同步的方式來進行處理。   區塊鏈節點在確定出本次共識中待共識的預處理塊通過共識驗證後,在本發明實施例中包括但不限於執行以下兩大類操作:   1、第一類操作:確定與本次共識通過的預處理塊對應的處理參數。該處理參數中包含有對所述預處理塊中的業務資料進行處理的參數,以便於預設的處理器可以按照該處理參數對所述預處理塊進行處理,以完成業務提交階段的相關操作。   下面針對第一類操作進行詳細說明。   這裏的處理參數可以包含但不限於:儲存參數、釋放參數、刪除參數、上鏈參數等,而上述只是簡單的舉例說明了處理參數中所包含的一些參數,在實際應用中,該處理參數還可包含有其他的參數,而具體包含有哪些參數則可由區塊鏈節點在業務提交階段所執行的具體操作來決定。   例如,釋放參數用以指示對通過共識的預處理塊執行將該預處理塊從儲存空間中進行釋放的操作;   儲存參數用以指示將通過共識的預處理塊中包含的業務資料儲存至指定位置。針對不同的預處理塊確定的儲存參數不同。在該儲存參數中包含儲存位置。   刪除參數用以指示將通過共識的預處理塊在業務共識階段產生的訊息(如PBFT共識中的預準備訊息、準備訊息、確認訊息)進行刪除,以降低儲存壓力。   上鏈參數用以指示按照預處理塊中包含的上一個區塊的頭Hash,將該預處理塊以區塊的形式上鏈至上一個區塊所在的區塊鏈中。   較優地,在本發明實施例中,區塊鏈節點在對相鄰下一次待共識的預處理塊進行共識的過程中,還可透過預設的處理器實現對通過本次共識的預處理塊中包含的業務資料進行處理的平行作業。   假設現有技術中區塊鏈節點執行一次業務資料處理過程中的業務共識階段以及業務提交階段,可以理解成是透過同一個線程來完成這兩個階段的。區塊鏈節點需要透過該線程先完成本次業務資料處理過程中的業務共識階段,而後再利用該線程執行本次業務資料處理過程中的業務提交階段。顯然,現有技術中區塊鏈節點是透過串列的方式來執行一次業務資料處理過程中所涉及的業務共識階段以及業務提交階段,因此,增加了相鄰兩次業務資料處理之間的時間間隔,降低了業務資料處理效率。   為了有效的解決上述問題,在本發明實施例中,區塊鏈節點中預先設置一個處理器(該處理器可以採用非同步處理方式操作,這裏不做具體限定),該處理器可用來執行業務提交階段所涉及的操作。換句話說,在本發明實施例中,區塊鏈節點可以採用兩個線程分別實現業務資料處理過程中的業務共識階段的共識處理和業務提交階段的資料處理,亦即,由一個線程用以對待共識的預處理塊進行共識處理,另一個線程用以對共識通過的預處理塊進行資料處理,這樣對於同一個預處理塊,其共識處理與其資料處理透過非同步方式完成。   這樣一來,區塊鏈節點利用該處理器執行業務提交階段所涉及的操作的過程中,區塊鏈節點可以不受影響的啟動相鄰下一次待共識的預處理塊的共識任務,就開始下一次共識的執行,從而極大的縮短了相鄰兩次共識之間的時間間隔,進而提高了共識效率。   在本發明實施例中,本次共識所確定的處理參數均可透過上一次共識所確定的處理參數得出。   以儲存參數為例來進行說明。區塊鏈節點在確定本次共識中待共識的預處理塊通過共識後,可根據本次共識已通過共識的預處理塊的儲存參數,確定出相鄰下一次共識的預處理塊的儲存參數,並儲存。   例如,假設通過本次共識的預處理塊所對應的儲存參數(也可以理解為本次共識所對應的儲存參數)中規定了需要將通過本次共識的預處理塊中包含的業務資料儲存在關係型資料庫A中的a表上。則區塊鏈節點可以依照該關係型資料庫A中各表的字母順序,確定出通過相鄰下一次共識的預處理塊所對應的儲存參數為:將通過此次共識(亦即,上面提到的相鄰下一次共識)的預處理塊中包含的業務資料儲存在關係型資料庫A的b表中。   區塊鏈節點可將確定出的下一次共識的儲存參數進行儲存,這樣使得預設的處理器在確定下一次共識的預處理塊通過共識時,可根據得到的儲存參數,確定出需要將通過此次通過共識的預處理塊中包含的業務資料儲存在哪一個資料庫中的哪一個表中。   較優地,在本發明實施例中,區塊鏈節點在確定出本次共識中待共識的預處理塊通過共識後,也可根據該預處理塊以及該預處理塊的儲存參數,確定出相鄰下一次共識的預處理塊的儲存參數並儲存。   具體地,若儲存參數中包含的儲存位置是以儲存指標形式存在的,亦即,儲存指標所指向的位置即為預處理塊中業務資料的儲存位置,區塊鏈節點在確定出本次共識中待共識的預處理塊通過共識後,可以以目前儲存指標所在位置為起點,按照本次共識的預處理塊的大小,移動儲存指標的位置,並將移動後的儲存指標的位置確定為下一次共識所對應的儲存參數,亦即,相鄰下一次待共識的預處理塊的儲存參數。   例如,假設每次共識的處理參數中包含有一個以儲存指標basepointer的形式而出現的儲存參數,該儲存指標(亦即,儲存參數)指向業務資料的具體儲存位置。該儲存指標basepointer的初始值可以設為0,每經過一次共識後,區塊鏈節點可根據經過本次共識的預處理塊的大小以及本次共識所對應的處理參數中包含的儲存指標,確定出相鄰下一次共識所對應的處理參數中,儲存指標的具體值。在第一次共識中,區塊鏈節點確定出通過此次共識的預處理塊的大小為1024位元組,則區塊鏈節點可根據確定出的預處理塊的大小,以及儲存指標basepointer的初始值0,確定出第二次共識所對應的處理參數中包含的儲存指標basepointer為1024,並儲存。相應地,在第二次共識中,區塊鏈節點可透過處理器,將通過第二次共識的預處理塊中包含的業務資料儲存在儲存指標basepointer=1024所對應的儲存位置中。   在第二次共識中,區塊鏈節點確定出通過此次共識的預處理塊的大小為10位元組,則區塊鏈節點可根據確定出的通過此次共識的預處理塊的大小,以及上一次共識(亦即,第一次共識)對應的處理參數中所包含的儲存指標basepointer=1024,確定出第三次共識對應的處理參數中包含的儲存指標basepointer為1034並儲存。相應地,在第三次共識中,區塊鏈節點可透過處理器,將通過第三次共識的預處理塊中包含的業務資料儲存在儲存指標basepointer=1034所對應的儲存位置中,後續的共識則可以此類推。   需要說明的是,在本發明實施例中,除了可以通過本次共識的預處理塊的大小,確定下一次共識對應的處理參數中包含的儲存參數外,還可通過預處理塊的其他資訊來進行確定,具體採用哪一種資訊來進行確定則可由區塊鏈節點的運維人員來決定,在此就不一一舉例說明了。   需要說明的是,對於處理參數中所包含的不同參數來說,區塊鏈節點在業務提交階段所執行的操作,決定了這些參數是否每經過一次共識就需要發生相應的變更。如,對於上述提到的儲存參數來說,由於每次共識所涉及的預處理塊中包含的業務資料不可能儲存在相同的儲存位置中,所以,每經過一次共識後,儲存參數則需要發生相應的變更。而對於上述提到的上鏈參數來說,無論是哪次共識所涉及的預處理塊,預處理塊一旦通過了共識網路的共識,則均需要將預處理塊以區塊的形式儲存在區塊鏈中。換句話說,無論是哪個預處理塊,該預處理塊一旦通過共識,則處理器均需要對該預處理塊執行上鏈操作。所以,每經過一次共識後,該上鏈參數則不需要發生相應的變更,亦即,對於每次共識來說,上鏈參數可以是一致的。   較優地,在本發明實施例中,區塊鏈節點可將得到的下一次共識的處理參數儲存在一個預設的佇列中。例如,將相鄰下一次業務共識的預處理塊的儲存參數儲存在該預設的佇列中。   這樣一來,處理器可從該預設的佇列中獲取到處理參數(亦即,獲取到已通過共識的預處理塊的處理參數),進而根據該處理參數所包含的儲存參數,將與該儲存參數對應的通過共識的預處理塊中包含的業務資料進行儲存。   其中,這裏提到的預設的佇列可以是先進先出佇列(First Input First Output,FIFO),也可以是其他類型的佇列,這裏不做具體限定。處理器可獲取到儲存在該FIFO佇列中的處理參數,並根據該處理參數中所包含的儲存參數,從儲存的已通過共識的預處理塊中確定出與該儲存參數對應的預處理塊,進而根據該儲存參數,將該預處理塊中包含的業務資料進行儲存。   具體地,處理器可從上述FIFO佇列中獲取到儲存參數,而後,處理器可進一步的從確定出與該儲存參數對應的待處理的預處理塊。例如:區塊鏈節點在對本次共識的待共識的預處理塊的共識通過時,產生該預處理塊的儲存參數,並確定該預處理塊與該儲存參數之間的對應關係,那麼處理器即可根據該對應關係,確定出與該儲存參數對應的待處理的預處理塊。再例如:區塊鏈節點在對本次共識的待共識的預處理塊的共識通過時,產生該預處理塊的儲存參數,確定產生該儲存參數的第一時間,並確定本次共識的待共識的預處理塊的共識通過的第二時間,建立第一時間和第二時間之間的對應關係,那麼處理器可以根據儲存參數的產生時間,查找與該產生時間之間滿足設定條件的共識處理結束時間對應的預處理塊,查找出的預處理塊可以確定為與該儲存參數對應的待處理的預處理塊。再例如:處理器從FIFO佇列中獲取位於佇列出口最前端的儲存參數,那麼處理器從區塊鏈節點的儲存空間中查找儲存位置排在最靠前的已通過共識的預處理塊,將該預處理塊確定為與該儲存參數對應的預處理塊。   處理器在確定出與該儲存參數對應的待處理的預處理塊後,可根據該儲存參數,將該待處理的預處理塊中包含的業務資料儲存在該儲存參數所規定的儲存位置中。   需要說明的是,在本發明實施例中,區塊鏈節點除了可採用上述說明的FIFO佇列來儲存各處理參數外,還可透過其他的佇列來進行儲存,如雙端佇列等,在此就不一一舉例說明了。   處理器除了可根據獲取的處理參數中包含的儲存參數,對該儲存參數對應的待處理的預處理塊中包含的業務資料進行儲存外,還可根據該處理參數中包含的其他參數,對該待處理的預處理塊執行其他操作。   例如,處理器可以根據該處理參數中的釋放參數,將該待處理的預處理塊中包含的業務資料從儲存空間中釋放。再例如,處理器可根據獲取到的處理參數中包含的刪除參數,將本次共識中業務共識階段所產生的諸如預準備訊息、準備訊息、確認訊息等進行刪除,以節省區塊鏈節點的儲存空間。當然,處理器還可根據該處理參數中的其他參數來執行其他的操作,在此就不一一舉例說明了。   2、第二類操作:根據本次共識所對應的共識參數,更新下一次共識所對應的共識參數。換句話說,區塊鏈節點可確定出已通過本次共識的預處理塊所對應的共識參數,並根據確定出的該共識參數,得到相鄰下一次待共識的預處理塊對應的共識參數。   需要說明的是,在本發明實施例中,區塊鏈節點在確定本次共識需要進行共識的預處理塊通過共識驗證後,除了需要根據本次共識所對應的處理參數,來得到下一次共識所對應的處理參數並儲存外,還可根據本次共識所對應的共識參數,更新下一次共識所對應的共識參數。換句話說,區塊鏈節點可確定出已通過本次共識的預處理塊所對應的共識參數,並根據確定出的該共識參數,得到相鄰下一次待共識的預處理塊對應的共識參數。   其中,這裏提到的共識參數可以理解為一次共識所對應的屬性資訊。例如,以PBFT共識舉例說明,在PBFT共識過程中,一次共識通常對應有一個視圖編號v,該視圖編號v用以唯一標識這一次共識。在一次共識中,無論共識網路中的哪一個區塊鏈節點作為主節點,其產生的預處理塊中所包含的上一個區塊的頭Hash通常都是目前位於區塊鏈上最後一個區塊的頭Hash。對於這裏提到的視圖編號v以及上一個區塊的頭Hash,則可以稱之為本次共識所對應的共識參數。   當然,共識參數除了可包含有上述說明的視圖編號v以及上一個區塊的頭Hash外,還可包含有其他的資訊,而對於不同共識方式來說,共識參數中所包含的內容也存在有一定的差異,具體就不進行詳細說明了。   區塊鏈節點在確定本次共識的預處理塊通過共識驗證後,可進一步的確定出本次共識所對應的共識參數,進而通過更新該共識參數的方式,得到下一次共識所對應的共識參數,亦即,得到相鄰下一次待共識的預處理塊對應的共識參數。   還以PBFT共識方式為例,假設在本次共識所對應的共識參數中包含有視圖編號v以及上一個區塊的頭Hash,其中,視圖編號v為16、上一個區塊的頭Hash為0929d9sldom23oix239xed。區塊鏈節點在確定出本次共識所涉及的預處理塊通過共識驗證後,可將視圖編號16更新為17,並根據預處理塊中包含的該預處理塊的頭Hash:679xx9a9a8dfa23389xx34,將下一次共識所基於的區塊的頭Hash更新為679xx9a9a8dfa23389xx34。這樣一來,下一次共識所對應的共識參數應為:視圖編號v:17、上一個區塊的頭Hash:679xx9a9a8dfa23389xx34。   由於區塊鏈節點能夠根據本次共識所對應的共識參數,得到下一次共識所對應的共識參數,這樣一來,該區塊鏈節點可以根據得到的下一次共識所對應的共識參數,啟動對相鄰下一次待共識的預處理塊進行共識。其中,這裏提到的共識參數可以被儲存在記憶體中,也可以被儲存在區塊鏈節點所對應的資料庫中,當然還可以總體變數的方式存在。   需要說明的是,在本發明實施例中,該共識參數也可以與處理參數對應儲存在上述預設的佇列中。這樣一來,用於共識處理的處理器可以從該預設的佇列中獲取到共識參數,並根據共識參數,啟動一次新的共識處理;用於資料處理的處理器從該預設的佇列中獲取到處理參數,進而根據獲取到的處理參數,啟動對該處理參數對應的預處理塊中包含的業務資料進行資料處理。   例如,假設處理器從FIFO佇列中獲取到一個處理參數以及與之對應的共識參數,該共識參數中包含有視圖編號v,這樣一來,該處理器可以從區塊鏈節點自身的儲存空間中,確定出與該視圖編號v相對應的待處理的預處理塊,進而根據獲取到處理參數,對該待處理的預處理塊進行處理。   當然,在本發明實施例中,處理參數也可不被儲存在上述提到的預設的佇列中,如,可將處理參數儲存在區塊鏈節點的自身記憶體中,也可將該處理參數儲存在區塊鏈節點所對應的資料庫中,抑或是儲存在區塊鏈節點的其他位置中,在此就不一一舉例說明了。   從上述方法中可以看出,由於區塊鏈節點在確定獲取到的預處理塊通過共識後,採用並行處理方式,啟動對相鄰下一次待共識的預處理塊進行共識,並且對已通過共識的預處理塊中包含的業務資料進行處理。換句話說,區塊鏈節點實現了業務資料在業務共識階段以及業務提交階段的並行處理,既能夠對一部分業務資料執行業務提交階段的資料處理,同時又可執行另一部分業務資料的業務共識階段的共識處理,這樣能夠縮短相鄰兩次業務共識階段的共識處理的時間間隔,從而有效提升了系統的業務資料處理效率。   為了進一步的說明本發明所提到的資料處理方法,下面將詳細簡明的說明該資料處理方法所涉及的各過程,如圖2所示。   圖2為本發明實施例所提供的區塊鏈節點進行資料處理的示意圖。   在業務受理階段中,用戶可透過終端中安裝的用戶端向區塊鏈節點發送業務資料,而區塊鏈節點可將接收到的業務資料進行驗證,並將驗證通過的業務資料儲存在自身對應的儲存空間中來進行保存。   在業務共識階段中,區塊鏈節點可獲取到在本次共識中待共識的預處理塊,其中,若該區塊鏈節點作為發起此次共識的主節點時,可從自身的儲存空間中撈取一部分業務資料,並將這部分業務資料打包成預處理塊,此時該區塊鏈節點將獲取到需要在本次共識中進行共識的預處理塊。與此同時,該區塊鏈節點需要將該預處理塊透過廣播的方式發送至共識網路中的其他區塊鏈節點中,以使其他的區塊鏈節點對該預處理塊進行共識驗證。   若該區塊鏈節點並非發起此次共識的主節點,則可從發起此次共識的主節點獲取到需要在本次業務共識中進行共識的預處理塊,繼而對該預處理塊進行共識驗證。   區塊鏈節點在確定該預處理塊通過共識驗證後,可根據本次共識所對應的共識參數(亦即,該預處理塊所對應的共識參數),更新得到下一次共識所對應的共識參數(亦即,相鄰下一次待共識的預處理塊對應的共識參數),以備下一次共識所使用。不僅如此,區塊鏈節點還可根據該預處理塊以及本次共識所對應的處理參數(亦即,該已通過本次共識的預處理塊對應的處理參數),得到下一次共識所對應的處理參數(亦即,相鄰下一次待共識的預處理塊所對應的處理參數),並將得到的下一次共識所對應的處理參數儲存在FIFO佇列中。   區塊鏈節點在得到相鄰下一次共識對應的共識參數以及處理參數的過程中,可啟動執行相鄰下一次共識的業務共識階段,亦即,啟動對相鄰下一次待共識的預處理塊進行共識。而區塊鏈節點在啟動執行相鄰下一次共識的業務共識階段中,可以透過處理器,實現對本次共識中的業務提交階段執行平行作業。   換句話說,區塊鏈節點將業務提交階段所涉及的操作交給了處理器來完成,而自身則可進行相鄰的下一次共識,從而實現了一次共識中,業務共識階段和業務提交階段的並行處理,縮短了兩次相鄰共識之間的時間間隔,進而提高了共識效率。   處理器可從FIFO佇列中獲取到本次共識所對應的處理參數,進而根據該處理參數中包含的上鏈參數,將通過本次共識的預處理塊以區塊的形式儲存在區塊鏈中;處理器可根據該處理參數中包含的是否參數以及儲存參數,將該預處理塊中包含的業務資料從區塊鏈節點自身的儲存空間中進行釋放,並將釋放出的業務資料按照該儲存參數中的規定,儲存在相應的儲存位置中;處理器可根據該處理屬性中包含的刪除參數,將業務共識階段所產生的諸如PBFT共識的預準備訊息、準備訊息、確認訊息等進行刪除,以節省區塊鏈節點的儲存空間。   以上為本發明實施例提供的資料處理方法,基於同樣的思路,本發明實施例還提供資料處理的裝置,如圖3所示。   圖3為本發明實施例提供的一種資料處理的裝置示意圖,具體包括:   獲取模組301,獲取待共識的預處理塊,並對所述預處理塊進行共識;   處理模組302,若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   所述處理模組302,透過預設的處理器並行對所述已通過共識的預處理塊中包含的業務資料進行資料處理。   所述處理模組302,針對所述已通過共識的預處理塊,執行以下操作:調用處理器獲取儲存參數,所述儲存參數中包含儲存位置;根據所述儲存參數,確定與所述儲存參數對應的待處理的預處理塊,並將確定的所述待處理的預處理塊中包含的業務資料儲存在所述儲存位置中。   所述獲取模組301,在確定所述預處理塊通過共識後,根據所述預處理塊以及所述預處理塊的儲存參數,確定相鄰下一次共識的預處理塊的儲存參數,並儲存。   所述獲取模組301,將相鄰下一次共識的預處理塊的儲存參數儲存在先進先出FIFO佇列中。   所述處理模組302,調用所述處理器從所述FIFO佇列中獲取儲存參數。   所述獲取模組301,若確定所述預處理塊通過共識,則確定所述預處理塊對應的共識參數,並根據確定的所述預處理塊對應的共識參數,得到相鄰下一次待共識的預處理塊對應的共識參數,所述共識參數用以指示所述區塊鏈節點對待共識的預處理塊進行共識。   所述處理模組302,在得到相鄰下一次待共識的預處理塊對應的共識參數時,基於得到的所述共識參數,啟動對相鄰下一次待共識的預處理塊進行共識。   基於同樣的思路,本發明實施例還提供另一種資料處理的裝置,具體包括:   記憶體和至少一個處理器,其中:所述記憶體儲存有程式,並被配置成由所述至少一個處理器執行以下步驟:   獲取待共識的預處理塊,並對所述預處理塊進行共識;   若確定所述預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。   其中,處理器透過記憶體儲存的程式所執行的具體操作可以參照上述實施例中所記載的內容,在此則不再贅述。   在本發明實施例中,區塊鏈節點在確定獲取到的預處理塊通過共識後,可啟動對下一次待共識的預處理塊進行共識,以透過並行的方式對已通過共識的預處理塊中包含的業務資料進行資料處理。由於區塊鏈節點在確定獲取到的預處理塊通過共識後,採用並行處理方式,啟動對下一次待共識的預處理塊進行共識,並且對已通過共識的預處理塊中包含的業務資料進行處理。換句話說,區塊鏈節點實現了業務資料在業務共識階段以及業務提交階段的並行處理,既能夠對一部分業務資料執行業務提交階段的資料處理,同時又可執行另一部分業務資料的業務共識階段的共識處理,這樣能夠縮短兩次業務共識階段的共識處理的時間間隔,從而有效提升了系統的業務資料處理效率。   在20世紀90年代,對於一個技術的改進可以很明顯地區分是硬體上的改進(例如,對二極體、電晶體、開關等電路結構的改進)還是軟體上的改進(對於方法流程的改進)。然而,隨著技術的發展,當今的很多方法流程的改進已經可以視為硬體電路結構的直接改進。設計人員幾乎都透過將改進的方法流程編程到硬體電路中來得到相應的硬體電路結構。因此,不能說一個方法流程的改進就不能用硬體實體模組來實現。例如,可編程邏輯裝置(Programmable Logic Device, PLD)(例如,現場可編程閘陣列(Field Programmable Gate Array,FPGA))就是這樣的一種積體電路,其邏輯功能由用戶對裝置編程來確定。由設計人員自行編程來把一個數位系統“集成”在一片PLD上,而不需要請晶片製造廠商來設計和製作專用的積體電路晶片。而且,如今,取代手工地製作積體電路晶片,這種編程也多半改用“邏輯編譯器(logic compiler)”軟體來實現,它與程式開發撰寫時所用的軟體編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語言來撰寫,此稱之為硬體描述語言(Hardware Description Language,HDL),而HDL也並非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL (Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL (Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領域技術人員也應該清楚,只需要將方法流程用上述幾種硬體描述語言稍作邏輯編程並編程到積體電路中,就可以很容易得到實現該邏輯方法流程的硬體電路。   控制器可以按任何適當的方式來實現,例如,控制器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式碼(例如,軟體或韌體)的電腦可讀媒體、邏輯閘、開關、特殊應用積體電路(Application Specific Integrated Circuit,ASIC)、可編程邏輯控制器和嵌入式微控制器的形式,控制器的例子包括但不限於以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式碼方式來實現控制器以外,完全可以透過將方法步驟進行邏輯編程來使得控制器以邏輯閘、開關、特殊應用積體電路、可編程邏輯控制器和嵌入式微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用來實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用來實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦。具體的,電腦例如可以為個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放器、導航設備、電子郵件設備、遊戲控制臺、平板電腦、可穿戴式設備或者這些設備中的任何設備的組合。   為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本發明時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。   本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體態樣的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來予以描述的。應理解可由電腦程式指令來實現流程圖和/或方塊圖中的每一個流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可編程資料處理設備的處理器以產生一個機器,使得透過電腦或其他可編程資料處理設備的處理器執行的指令而產生用以實現在流程圖中的一個流程或多個流程和/或方塊圖中的一個方塊或多個方塊中指定的功能的裝置。   這些電腦程式指令也可被儲存在能引導電腦或其他可編程資料處理設備以特定方式操作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖中的一個流程或多個流程和/或方塊圖中的一個方塊或多個方塊中指定的功能。   這些電腦程式指令也可被裝載到電腦或其他可編程資料處理設備上,使得在電腦或其他可編程設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可編程設備上執行的指令提供用以實現在流程圖中的一個流程或多個流程和/或方塊圖中的一個方塊或多個方塊中指定的功能的步驟。   在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。   記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。   電腦可讀媒體包括永久性和非永久性、可移動式和非可移動式媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁碟片儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用來儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀媒體不包括暫態性電腦可讀媒體(transitory media),如調變的資料信號和載波。   還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在有另外的相同要素。   本領域技術人員應明白,本發明的實施例可提供為方法、系統或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體態樣的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式計算環境中實踐本發明,在這些分散式計算環境中,由透過通信網路而被連接的遠端處理設備來執行任務。在分散式計算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。   本說明書中的各個實施例均採用漸進的方式來予以描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   以上所述僅為本發明的實施例而已,並不用來限制本發明。對於本領域技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的申請專利範圍的範疇之內。
301‧‧‧獲取模組
302‧‧‧處理模組
此處所說明的附圖用來提供對本發明的進一步理解,構成本發明的一部分,本發明的示意性實施例及其說明用來解釋本發明,並不構成對本發明的不當限定。在附圖中:   圖1為本發明實施例提供的資料處理過程的示意圖;   圖2為本發明實施例所提供的區塊鏈節點進行資料處理的示意圖;   圖3為本發明實施例提供的一種資料處理的裝置示意圖。

Claims (17)

  1. 一種資料處理的方法,包括:   區塊鏈節點獲取待共識的預處理塊,並對該預處理塊進行共識;以及   若確定該預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。
  2. 如申請專利範圍第1項所述的方法,並行對已通過共識的預處理塊中包含的業務資料進行處理,具體包括:   透過預設的處理器並行對該已通過共識的預處理塊中包含的業務資料進行資料處理。
  3. 如申請專利範圍第2項所述的方法,透過預設的處理器並行對該已通過共識的預處理塊中包含的業務資料進行資料處理,具體包括:   針對該已通過共識的預處理塊,執行以下操作:   調用處理器獲取儲存參數,該儲存參數中包含儲存位置;以及   根據該儲存參數,確定與該儲存參數對應的待處理的預處理塊,並將確定的該待處理的預處理塊中包含的業務資料儲存在該儲存位置中。
  4. 如申請專利範圍第1至3項中任一項所述的方法,該方法還包括:   在確定該預處理塊通過共識後,根據該預處理塊以及該預處理塊的儲存參數,確定相鄰下一次共識的預處理塊的儲存參數,並儲存。
  5. 如申請專利範圍第4項所述的方法,儲存相鄰下一次共識的預處理塊的儲存參數,具體包括:   將相鄰下一次共識的預處理塊的儲存參數儲存在先進先出FIFO佇列中。
  6. 如申請專利範圍第5項所述的方法,調用處理器獲取儲存參數,具體包括:   調用該處理器從該FIFO佇列中獲取儲存參數。
  7. 如申請專利範圍第1項所述的方法,該方法還包括:   若確定該預處理塊通過共識,則確定該預處理塊對應的共識參數,並根據確定的該預處理塊對應的共識參數,得到相鄰下一次待共識的預處理塊對應的共識參數,該共識參數用來指示該區塊鏈節點對待共識的預處理塊進行共識。
  8. 如申請專利範圍第7項所述的方法,啟動對下一次待共識的預處理塊進行共識,包括:   在得到相鄰下一次待共識的預處理塊對應的共識參數時,基於得到的該共識參數,啟動對相鄰下一次待共識的預處理塊進行共識。
  9. 一種資料處理的裝置,包括:   獲取模組,獲取待共識的預處理塊,並對該預處理塊進行共識;以及   處理模組,若確定該預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。
  10. 如申請專利範圍第9項所述的裝置,該處理模組,透過預設的處理器並行對該已通過共識的預處理塊中包含的業務資料進行資料處理。
  11. 如申請專利範圍第10項所述的裝置,該處理模組,針對該已通過共識的預處理塊,執行以下操作:調用處理器獲取儲存參數,該儲存參數中包含儲存位置;根據該儲存參數,確定與該儲存參數對應的待處理的預處理塊,並將確定的該待處理的預處理塊中包含的業務資料儲存在儲存位置中。
  12. 如申請專利範圍第9至11項中任一項所述的裝置,該獲取模組,在確定該預處理塊通過共識後,根據該預處理塊以及該預處理塊的儲存參數,確定相鄰下一次共識的預處理塊的儲存參數,並儲存。
  13. 如申請專利範圍第12項所述的裝置,該獲取模組,將相鄰下一次共識的預處理塊的儲存參數儲存在先進先出佇列FIFO佇列中。
  14. 如申請專利範圍第13項所述的裝置,該處理模組,調用該處理器從該FIFO佇列中獲取儲存參數。
  15. 如申請專利範圍第9項所述的裝置,該獲取模組,若確定該預處理塊通過共識,則確定該預處理塊對應的共識參數,並根據確定的該預處理塊對應的共識參數,得到相鄰下一次待共識的預處理塊對應的共識參數,該共識參數用來指示該區塊鏈節點對待共識的預處理塊進行共識。
  16. 如申請專利範圍第15項所述的裝置,該處理模組,在得到相鄰下一次待共識的預處理塊對應的共識參數時,基於得到的該共識參數,啟動對相鄰下一次待共識的預處理塊進行共識。
  17. 一種資料處理的裝置,包括:記憶體和至少一個處理器,其中:該記憶體儲存有程式,並被配置成由該至少一個處理器執行以下步驟:   獲取待共識的預處理塊,並對該預處理塊進行共識;以及   若確定該預處理塊通過共識,則啟動對下一次待共識的預處理塊進行共識,以及並行對已通過共識的預處理塊中包含的業務資料進行資料處理。
TW107107225A 2017-05-31 2018-03-05 資料處理的方法及裝置 TWI697227B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710397591.4A CN107402824B (zh) 2017-05-31 2017-05-31 一种数据处理的方法及装置
CN201710397591.4 2017-05-31

Publications (2)

Publication Number Publication Date
TW201904229A true TW201904229A (zh) 2019-01-16
TWI697227B TWI697227B (zh) 2020-06-21

Family

ID=60405063

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107107225A TWI697227B (zh) 2017-05-31 2018-03-05 資料處理的方法及裝置

Country Status (17)

Country Link
US (2) US10686803B2 (zh)
EP (2) EP3745642B1 (zh)
JP (1) JP6859509B2 (zh)
KR (1) KR102239589B1 (zh)
CN (1) CN107402824B (zh)
AU (2) AU2018278316B2 (zh)
BR (1) BR112019008775B1 (zh)
CA (1) CA3042470C (zh)
ES (1) ES2809204T3 (zh)
MX (1) MX2019005085A (zh)
MY (1) MY190598A (zh)
PH (1) PH12019500979A1 (zh)
RU (1) RU2721402C1 (zh)
SG (2) SG11201903895XA (zh)
TW (1) TWI697227B (zh)
WO (1) WO2018222927A1 (zh)
ZA (1) ZA201902729B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532228A (zh) * 2019-09-02 2019-12-03 深圳市网心科技有限公司 一种区块链数据读取的方法、系统、设备及可读存储介质

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107402824B (zh) 2017-05-31 2020-06-02 创新先进技术有限公司 一种数据处理的方法及装置
CN107579951B (zh) 2017-07-14 2020-06-19 创新先进技术有限公司 一种业务数据处理方法、业务处理方法及设备
CN108182635A (zh) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 区块链共识方法、系统和计算机可读存储介质
CN110083437A (zh) * 2018-01-25 2019-08-02 北京欧链科技有限公司 处理区块链事务的方法及装置
CN108600839B (zh) * 2018-05-02 2020-06-02 中广热点云科技有限公司 一种基于cbc-pbft共识机制的版权视频全网收视记录系统
CN110472971A (zh) * 2018-05-09 2019-11-19 厦门本能管家科技有限公司 一种双进程打块方法及系统
CN108776897B (zh) * 2018-06-05 2020-04-21 腾讯科技(深圳)有限公司 数据处理方法、装置、服务器及计算机可读存储介质
US11323530B2 (en) * 2018-06-06 2022-05-03 International Business Machines Corporation Proxy agents and proxy ledgers on a blockchain
CN108846659B (zh) * 2018-06-13 2021-09-14 深圳前海微众银行股份有限公司 基于区块链的转账方法、装置及存储介质
CN109002297B (zh) * 2018-07-16 2020-08-11 百度在线网络技术(北京)有限公司 共识机制的部署方法、装置、设备和存储介质
CN110795227B (zh) * 2018-08-03 2022-07-19 北京天能博信息科技有限公司 一种区块链的数据处理方法及相关设备
CN109376020B (zh) * 2018-09-18 2021-02-12 中国银行股份有限公司 多区块链交互并发下的数据处理方法、装置及存储介质
CN109523260A (zh) * 2018-11-28 2019-03-26 段红 一种动态节点选举的高并发共识机制
CN109714398B (zh) * 2018-12-11 2021-09-21 新华三技术有限公司 数据存储方法和装置
US20200202337A1 (en) * 2018-12-20 2020-06-25 Lukka, Inc. Gain and loss computation for cryptocurrency transactions
CN109714412B (zh) * 2018-12-25 2021-08-10 深圳前海微众银行股份有限公司 区块同步方法、装置、设备及计算机可读存储介质
KR102170345B1 (ko) * 2019-03-18 2020-10-28 알리바바 그룹 홀딩 리미티드 뷰 변경 프로토콜을 종료하기 위한 시스템 및 방법
US11398895B2 (en) 2019-03-26 2022-07-26 International Business Machines Corporation Information management in a decentralized database including a fast path service
US11418322B2 (en) * 2019-03-26 2022-08-16 International Business Machines Corporation Information management in a decentralized database including a fast path service
US11269858B2 (en) 2019-03-26 2022-03-08 International Business Machines Corporation Information management in a decentralized database including a fast path service
CN110020859B (zh) * 2019-03-28 2022-03-11 杭州秘猿科技有限公司 一种并行执行的区块链共识方法、装置及电子设备
CN109948799B (zh) * 2019-04-03 2023-12-08 陕西医链区块链集团有限公司 一种区块链的动态随机森林共识机制
WO2019120333A2 (en) 2019-04-12 2019-06-27 Alibaba Group Holding Limited Performing parallel execution of transactions in a distributed ledger system
JP6827564B2 (ja) 2019-04-12 2021-02-10 アドバンスド ニュー テクノロジーズ カンパニー リミテッド 分散型台帳システムにおけるトランザクションのパラレル実行の実施
CN110046896B (zh) * 2019-04-26 2022-03-01 腾讯科技(深圳)有限公司 一种区块处理方法和节点以及系统
US10970858B2 (en) * 2019-05-15 2021-04-06 International Business Machines Corporation Augmented reality for monitoring objects to decrease cross contamination between different regions
US11423016B2 (en) * 2019-06-26 2022-08-23 Indian Institute Of Technology Bombay Method for scaling computation in blockchain by delaying transaction execution
CN110471981A (zh) * 2019-07-05 2019-11-19 深圳壹账通智能科技有限公司 基于区块链的线上数据同步方法、装置、终端及存储介质
CN113139873A (zh) * 2019-08-30 2021-07-20 创新先进技术有限公司 在区块链中并发执行交易的方法和装置
CN110648136B (zh) * 2019-09-10 2022-06-03 杭州秘猿科技有限公司 共识与交易同步的并行处理方法、装置和电子设备
CN110597920B (zh) * 2019-09-26 2024-02-23 腾讯云计算(北京)有限责任公司 一种信息处理的方法及装置
CN110728578A (zh) * 2019-09-29 2020-01-24 南京金宁汇科技有限公司 区块链交易的并行执行方法、系统及存储介质
CN110855475B (zh) * 2019-10-25 2022-03-11 昆明理工大学 一种基于区块链的共识资源切片方法
KR102367570B1 (ko) * 2019-11-19 2022-02-28 한양대학교 산학협력단 블록체인에서의 병렬적 블록 처리 방법, 이를 이용하는 블록체인 노드 및 프로그램
CN111083221B (zh) * 2019-12-13 2023-08-04 北京菲林方德科技有限公司 一种交易验证方法及装置
CN111275437B (zh) * 2020-01-12 2023-05-30 杭州复杂美科技有限公司 平行链共识方法、设备和存储介质
KR102406242B1 (ko) * 2020-03-31 2022-06-10 주식회사 현신특허컨설팅 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치
CN111368343B (zh) * 2020-03-31 2022-11-01 北京俩撇科技有限公司 一种区块链系统、数据存储方法及装置
CN111522648B (zh) 2020-07-03 2020-10-09 支付宝(杭州)信息技术有限公司 一种区块链的交易处理方法、装置及电子设备
CN112035891A (zh) * 2020-07-20 2020-12-04 江苏傲为控股有限公司 一种去中心化电子合同证明平台
WO2022093256A1 (en) * 2020-10-30 2022-05-05 Hewlett-Packard Development Company, L.P. Provisioning of computational resources
CN112487448B (zh) * 2020-11-27 2024-05-03 珠海零边界集成电路有限公司 一种加密信息处理装置、方法及计算机设备
CN112291372B (zh) * 2020-12-28 2021-04-13 腾讯科技(深圳)有限公司 区块链的异步落账方法、装置、介质及电子设备
CN112734586A (zh) * 2021-01-27 2021-04-30 国网信息通信产业集团有限公司 基于区块链的数据处理方法及系统
CN113204432A (zh) * 2021-02-03 2021-08-03 支付宝(杭州)信息技术有限公司 区块链中的交易处理方法、装置及电子设备
CN114047961A (zh) * 2021-11-15 2022-02-15 合众新能源汽车有限公司 安卓系统开机优化方法、智能终端和计算机可读介质
CN114362969B (zh) 2022-03-17 2022-06-10 北京百度网讯科技有限公司 一种基于区块链的数据验证方法、装置、设备及存储介质
CN114785803A (zh) * 2022-04-20 2022-07-22 浙江工业大学 一种适用于充电桩管理的区块链pbft共识优化方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6937599B1 (en) * 1999-10-21 2005-08-30 Matsushita Electric Industrial Co., Ltd. Data source, data conversion device, inverse data conversion device, auxiliary data file generation device, reception method, medium and information aggregate
JP4578442B2 (ja) * 2006-06-19 2010-11-10 株式会社ニコンシステム 検証装置、および検証プログラム
JP4991223B2 (ja) * 2006-09-08 2012-08-01 ルネサスエレクトロニクス株式会社 データ処理装置
US7979626B2 (en) * 2008-05-13 2011-07-12 Microsoft Corporation Flash recovery employing transaction log
JP5164154B2 (ja) * 2008-05-19 2013-03-13 独立行政法人産業技術総合研究所 誤り検出機能を備える、符号化又は復号処理のための回路構成
RS61234B1 (sr) * 2013-11-19 2021-01-29 Top Galore Ltd Postupak i uređaj za rudarenje blokova
JP2016052697A (ja) * 2014-09-03 2016-04-14 インターマン株式会社 人型ロボット
EP3198539A4 (en) * 2014-09-23 2018-05-16 Spondoolies Tech Ltd. System and method for providing shared hash engines architecture for a bitcoin block chain
US10409827B2 (en) * 2014-10-31 2019-09-10 21, Inc. Digital currency mining circuitry having shared processing logic
US9436923B1 (en) * 2015-02-26 2016-09-06 Skuchain, Inc. Tracking unitization occurring in a supply chain
JP6304076B2 (ja) * 2015-03-05 2018-04-04 ブラザー工業株式会社 情報処理装置、コンテンツ配信システム、情報処理方法、及びプログラム
JP6358658B2 (ja) * 2015-11-09 2018-07-18 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
US10230756B2 (en) * 2015-11-25 2019-03-12 International Business Machines Corporation Resisting replay attacks efficiently in a permissioned and privacy-preserving blockchain network
US10805393B2 (en) 2015-12-02 2020-10-13 Olea Networks, Inc. System and method for data management structure using auditable delta records in a distributed environment
US10521780B1 (en) * 2015-12-16 2019-12-31 United Services Automobile Association (Usaa) Blockchain based transaction management
US10255108B2 (en) * 2016-01-26 2019-04-09 International Business Machines Corporation Parallel execution of blockchain transactions
US10362058B2 (en) 2016-05-13 2019-07-23 Vmware, Inc Secure and scalable data transfer using a hybrid blockchain-based approach
CN106445711B (zh) * 2016-08-28 2019-04-30 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
US10719771B2 (en) 2016-11-09 2020-07-21 Cognitive Scale, Inc. Method for cognitive information processing using a cognitive blockchain architecture
US20180158034A1 (en) * 2016-12-07 2018-06-07 International Business Machines Corporation Dynamic reordering of blockchain transactions to optimize performance and scalability
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
US11887115B2 (en) * 2017-04-17 2024-01-30 Jeff STOLLMAN Systems and methods to validate transactions for inclusion in electronic blockchains
CN107395353B (zh) 2017-04-24 2020-01-31 阿里巴巴集团控股有限公司 一种区块链共识方法及装置
US10896169B2 (en) * 2017-05-12 2021-01-19 International Business Machines Corporation Distributed system, computer program product and method
US11924322B2 (en) * 2017-05-16 2024-03-05 Arm Ltd. Blockchain for securing and/or managing IoT network-type infrastructure
CN107402824B (zh) 2017-05-31 2020-06-02 创新先进技术有限公司 一种数据处理的方法及装置
CN107396180A (zh) 2017-08-29 2017-11-24 北京小米移动软件有限公司 基于移动终端的视频制作方法及装置
US11139979B2 (en) * 2017-12-18 2021-10-05 Koninklijke Kpn N.V. Primary and secondary blockchain device
US10250381B1 (en) * 2018-02-22 2019-04-02 Capital One Services, Llc Content validation using blockchain
RU181439U1 (ru) 2018-04-06 2018-07-13 Оксана Валерьевна Кириченко Децентрализованная технологическая платформа хранения и обмена данными транзакций в распределенной вычислительной сети

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532228A (zh) * 2019-09-02 2019-12-03 深圳市网心科技有限公司 一种区块链数据读取的方法、系统、设备及可读存储介质

Also Published As

Publication number Publication date
EP3520052A1 (en) 2019-08-07
BR112019008775A2 (pt) 2020-02-04
BR112019008775B1 (pt) 2021-08-17
CN107402824B (zh) 2020-06-02
EP3745642C0 (en) 2023-07-05
EP3520052B1 (en) 2020-07-22
TWI697227B (zh) 2020-06-21
AU2018278316A1 (en) 2019-05-23
KR102239589B1 (ko) 2021-04-15
AU2020289748A1 (en) 2021-01-21
PH12019500979A1 (en) 2020-01-20
KR20190067195A (ko) 2019-06-14
US20180351732A1 (en) 2018-12-06
CN107402824A (zh) 2017-11-28
AU2018278316B2 (en) 2020-10-08
JP2020503728A (ja) 2020-01-30
US20190215151A1 (en) 2019-07-11
SG10202105569SA (en) 2021-07-29
US10785231B2 (en) 2020-09-22
RU2721402C1 (ru) 2020-05-19
ES2809204T3 (es) 2021-03-03
WO2018222927A1 (en) 2018-12-06
CA3042470C (en) 2021-05-04
JP6859509B2 (ja) 2021-04-14
CA3042470A1 (en) 2018-12-06
US10686803B2 (en) 2020-06-16
MX2019005085A (es) 2019-08-12
MY190598A (en) 2022-04-27
SG11201903895XA (en) 2019-05-30
ZA201902729B (en) 2020-05-27
EP3745642B1 (en) 2023-07-05
EP3745642A1 (en) 2020-12-02

Similar Documents

Publication Publication Date Title
TW201904229A (zh) 資料處理的方法及裝置
TWI679547B (zh) 區塊鏈業務受理及業務共識方法及裝置
TWI680656B (zh) 基於區塊鏈的資料處理方法及設備
TWI696083B (zh) 一種基於區塊鏈的共識方法及裝置
TWI696927B (zh) 基於區塊鏈的資料處理方法及設備
TWI752118B (zh) 一種區塊鏈共識方法及裝置
TWI718375B (zh) 基於區塊鏈的資料處理方法及設備
KR102125177B1 (ko) 블록체인 기반 데이터 처리 방법 및 장치
TWI685764B (zh) 共識校驗的方法及裝置
WO2018177250A1 (zh) 一种基于区块链的数据处理方法及设备
TW201905737A (zh) 多重區塊鏈網路資料處理方法、裝置及伺服器
EP3561674A1 (en) Block data check method and apparatus
TW201904251A (zh) 區塊鏈共識方法及設備
TWI679581B (zh) 任務執行的方法及裝置
TW201833855A (zh) 一種共識方法及裝置
CN108345977A (zh) 一种业务处理方法及装置
TW201915867A (zh) 虛擬卡的開卡方法、系統和支付系統、發卡系統
WO2021143397A1 (zh) 一种基于gpu虚拟化的资源复用方法、装置及设备
WO2020199709A1 (zh) 一种刷新级联缓存的方法、系统及设备
WO2023207079A1 (zh) 一种区块链中的区块状态同步方法及第一节点
TWI698137B (zh) 無線設備的掃描啟停方法及無線設備
TWI680467B (zh) 隨機遊走、基於集群的隨機遊走方法、裝置以及設備
CN107645541B (zh) 数据存储方法、装置及服务器