本申請(qǐng)涉及區(qū)塊鏈技術(shù)領(lǐng)域,具體涉及一種基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法及系統(tǒng)、數(shù)據(jù)庫系統(tǒng)。
背景技術(shù):
隨著區(qū)塊鏈技術(shù)的迅速發(fā)展,區(qū)塊鏈的各區(qū)塊不再僅僅作為分布式賬本,通過在區(qū)塊鏈上發(fā)布可編程代碼,例如智能合約,即可以在區(qū)塊鏈系統(tǒng)中的節(jié)點(diǎn)運(yùn)行各種類型的業(yè)務(wù)。而隨著業(yè)務(wù)復(fù)雜度的增加,從區(qū)塊鏈上查詢各種類型的業(yè)務(wù)數(shù)據(jù)(同時(shí)獲取多條,各種排序,各種組合)的效率在逐步降低,時(shí)間成本逐漸成長(zhǎng)到大幅影響用戶體驗(yàn)的程度。
技術(shù)實(shí)現(xiàn)要素:
鑒于現(xiàn)有技術(shù)中的上述缺陷或不足,期望提供一種實(shí)現(xiàn)高效查詢區(qū)塊鏈中的業(yè)務(wù)數(shù)據(jù)以保障用戶體驗(yàn)的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法及系統(tǒng)、數(shù)據(jù)庫系統(tǒng)。
第一方面,本發(fā)明提供一種基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法,該方法包括:
提供業(yè)務(wù)合約接口供調(diào)用以編輯業(yè)務(wù)數(shù)據(jù);
根據(jù)所述業(yè)務(wù)數(shù)據(jù)生成交易信息并提交交易;
將所述交易信息發(fā)送至當(dāng)前區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí);
接收返回的共識(shí)結(jié)果信息,若所述交易信息通過共識(shí),則將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫,以供所述外部數(shù)據(jù)庫同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù)。
第二方面,本發(fā)明提供一種基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步系統(tǒng),該系統(tǒng)包括:
合約單元,配置用于提供業(yè)務(wù)合約接口供調(diào)用以編輯業(yè)務(wù)數(shù)據(jù),根據(jù)所述業(yè)務(wù)數(shù)據(jù)生成交易信息并提交交易,在所述交易信息通過共識(shí)后將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫,以供所述外部數(shù)據(jù)庫同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù);
通信單元,配置用于將所述交易信息發(fā)送至當(dāng)前區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí),以及,接收返回的共識(shí)結(jié)果信息。
第三方面,本發(fā)明提供一種基于區(qū)塊鏈的數(shù)據(jù)庫系統(tǒng),該系統(tǒng)包括配置在所述區(qū)塊鏈網(wǎng)絡(luò)的至少一個(gè)節(jié)點(diǎn)中的上述業(yè)務(wù)數(shù)據(jù)同步系統(tǒng),以及,配置在區(qū)塊鏈網(wǎng)絡(luò)外部的至少一個(gè)外部數(shù)據(jù)庫。
所述外部數(shù)據(jù)庫包括:
同步單元,配置用于同步所述業(yè)務(wù)數(shù)據(jù);
檢索單元,配置用于接收業(yè)務(wù)數(shù)據(jù)查詢請(qǐng)求,檢索對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù),生成并返回檢索結(jié)果。
第四方面,本發(fā)明還提供一種設(shè)備,包括一個(gè)或多個(gè)處理器和存儲(chǔ)器,其中存儲(chǔ)器包含可由該一個(gè)或多個(gè)處理器執(zhí)行的指令以使得該一個(gè)或多個(gè)處理器執(zhí)行根據(jù)本發(fā)明各實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)同步方法。
第五方面,本發(fā)明還提供一種存儲(chǔ)有計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)程序使計(jì)算機(jī)執(zhí)行根據(jù)本發(fā)明各實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)同步方法。
本發(fā)明諸多實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法及系統(tǒng)、數(shù)據(jù)庫系統(tǒng)通過將業(yè)務(wù)數(shù)據(jù)同步至外部數(shù)據(jù)庫中,由外部數(shù)據(jù)庫提供查詢服務(wù),實(shí)現(xiàn)了對(duì)區(qū)塊鏈中的業(yè)務(wù)數(shù)據(jù)的高效查詢,從而保障了用戶體驗(yàn);
本發(fā)明一些實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法及系統(tǒng)、數(shù)據(jù)庫系統(tǒng)進(jìn)一步通過分別配置用于處理業(yè)務(wù)邏輯的業(yè)務(wù)合約,以及用于處理數(shù)據(jù)同步的同步合約,保障了各節(jié)點(diǎn)能快速響應(yīng)業(yè)務(wù)邏輯的處理,而不受數(shù)據(jù)同步的影響,進(jìn)一步保障了高效查詢和用戶體驗(yàn)。
附圖說明
通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
圖1為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法的流程圖。
圖2為圖1所示方法的一種優(yōu)選實(shí)施方式中步驟S80的流程圖。
圖3為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)的結(jié)構(gòu)示意圖。
圖4為圖3所示系統(tǒng)的一種優(yōu)選實(shí)施方式的結(jié)構(gòu)示意圖。
圖5為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)示意圖。
圖6為圖5所示系統(tǒng)的一種優(yōu)選實(shí)施方式的局部結(jié)構(gòu)示意圖。
圖7為本發(fā)明一實(shí)施例提供的一種設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本申請(qǐng)作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對(duì)該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與發(fā)明相關(guān)的部分。
需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請(qǐng)。
圖1為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步方法的流程圖。
如圖1所示,在本實(shí)施例中,本發(fā)明提供的業(yè)務(wù)數(shù)據(jù)同步方法包括:
S20:提供業(yè)務(wù)合約接口供調(diào)用以編輯業(yè)務(wù)數(shù)據(jù);
S40:根據(jù)所述業(yè)務(wù)數(shù)據(jù)生成交易信息并提交交易;
S60:將所述交易信息發(fā)送至當(dāng)前區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí);
S80:接收返回的共識(shí)結(jié)果信息,若所述交易信息通過共識(shí),則將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫,以供所述外部數(shù)據(jù)庫同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù)。
具體地,在本實(shí)施例中,業(yè)務(wù)合約接口指用于處理某一項(xiàng)業(yè)務(wù)的業(yè)務(wù)邏輯的智能合約的接口(API)。
例如,區(qū)塊鏈網(wǎng)絡(luò)中的一節(jié)點(diǎn)V1中配置有處理業(yè)務(wù)m1的業(yè)務(wù)邏輯的智能合約C1,在步驟S20中,節(jié)點(diǎn)V1提供智能合約C1的API以供調(diào)用,與節(jié)點(diǎn)V1通信連接的業(yè)務(wù)操作終端B通過調(diào)用智能合約C1的API,處理業(yè)務(wù)m1的業(yè)務(wù)邏輯,在處理m1的業(yè)務(wù)邏輯的過程中完成對(duì)業(yè)務(wù)數(shù)據(jù)D1的編輯。
在步驟S40中,節(jié)點(diǎn)V1根據(jù)步驟S20中編輯的業(yè)務(wù)數(shù)據(jù)D1生成交易信息并提交交易。
在步驟S60中,節(jié)點(diǎn)V1將交易信息發(fā)送至當(dāng)前區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí)。各節(jié)點(diǎn)對(duì)包括該交易信息的若干交易信息進(jìn)行投票,產(chǎn)生共識(shí)結(jié)果信息并返回。
在步驟S80中,節(jié)點(diǎn)V1接收返回的共識(shí)結(jié)果信息并判斷上述交易信息是否通過共識(shí):
若未通過,則不對(duì)該交易信息進(jìn)行同步;
若通過,則智能合約C1將該交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫DB1。外部數(shù)據(jù)庫DB1接收該交易信息后,通過交易ID過濾其中的重復(fù)數(shù)據(jù),完成業(yè)務(wù)數(shù)據(jù)的同步,并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù)。
上述實(shí)施例通過將業(yè)務(wù)數(shù)據(jù)同步至外部數(shù)據(jù)庫中,由外部數(shù)據(jù)庫提供查詢服務(wù),實(shí)現(xiàn)了對(duì)區(qū)塊鏈中的業(yè)務(wù)數(shù)據(jù)的高效查詢,從而保障了用戶體驗(yàn)。
圖2為圖1所示方法的一種優(yōu)選實(shí)施方式中步驟S80的流程圖。
如圖2所示,在一優(yōu)選實(shí)施例中,步驟S80包括:
S81:接收返回的共識(shí)結(jié)果信息;
S83:業(yè)務(wù)合約單元根據(jù)所述共識(shí)結(jié)果信息判斷所述交易信息是否通過共識(shí):若通過,則通知同步合約單元;若未通過,則停止同步;
S85:同步合約單元接收到所述通知后將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫,以供所述外部數(shù)據(jù)庫同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù)。
具體地,圖2所示優(yōu)選實(shí)施例相較于圖1所示實(shí)施例的區(qū)別在于,在節(jié)點(diǎn)V1中同時(shí)配置了兩項(xiàng)智能合約:業(yè)務(wù)合約子單元中配置有處理業(yè)務(wù)m1的業(yè)務(wù)邏輯的智能合約C2;同步合約子單元中配置有處理數(shù)據(jù)同步業(yè)務(wù)的智能合約C3。
上述實(shí)施例進(jìn)一步通過分別配置用于處理業(yè)務(wù)邏輯的業(yè)務(wù)合約,以及用于處理數(shù)據(jù)同步的同步合約,保障了各節(jié)點(diǎn)能快速響應(yīng)業(yè)務(wù)邏輯的處理,而不受數(shù)據(jù)同步的影響,進(jìn)一步保障了高效查詢和用戶體驗(yàn)。
圖3為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)的結(jié)構(gòu)示意圖。圖3所示的系統(tǒng)可對(duì)應(yīng)執(zhí)行圖1所示的方法。
如圖3所示,在本實(shí)施例中,本發(fā)明提供的業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)10包括:
合約單元11,配置用于提供業(yè)務(wù)合約接口供調(diào)用以編輯業(yè)務(wù)數(shù)據(jù),根據(jù)所述業(yè)務(wù)數(shù)據(jù)生成交易信息并提交交易,在所述交易信息通過共識(shí)后將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫20,以供外部數(shù)據(jù)庫20同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù);
通信單元13,配置用于將所述交易信息發(fā)送至當(dāng)前區(qū)塊鏈網(wǎng)絡(luò)中參與共識(shí),以及,接收返回的共識(shí)結(jié)果信息。
圖4為圖3所示系統(tǒng)的一種優(yōu)選實(shí)施方式的結(jié)構(gòu)示意圖。圖4所示的系統(tǒng)可對(duì)應(yīng)執(zhí)行圖2所示的方法。
如圖4所示,在一優(yōu)選實(shí)施例中,合約單元11具體包括:
業(yè)務(wù)合約子單元111,配置用于提供業(yè)務(wù)合約接口供調(diào)用以編輯業(yè)務(wù)數(shù)據(jù),根據(jù)所述業(yè)務(wù)數(shù)據(jù)生成交易信息并提交交易,以及,根據(jù)共識(shí)結(jié)果信息判斷所述交易信息是否通過共識(shí),若通過則通知同步合約單元113;
同步合約子單元113,配置用于在接收到所述通知后將所述交易信息實(shí)時(shí)同步至預(yù)配置的外部數(shù)據(jù)庫20,以供外部數(shù)據(jù)庫20同步所述業(yè)務(wù)數(shù)據(jù)并提供業(yè)務(wù)數(shù)據(jù)查詢服務(wù)。
圖5為本發(fā)明一實(shí)施例提供的基于區(qū)塊鏈的數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)示意圖。
如圖5所示,本發(fā)明還提供一種基于區(qū)塊鏈的數(shù)據(jù)庫系統(tǒng),該數(shù)據(jù)庫系統(tǒng)包括配置在所述區(qū)塊鏈網(wǎng)絡(luò)的至少一個(gè)節(jié)點(diǎn)中的上述任一實(shí)施例提供的業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)10,以及,配置在所述區(qū)塊鏈網(wǎng)絡(luò)外部的至少一個(gè)外部數(shù)據(jù)庫20。
外部數(shù)據(jù)庫20包括:
同步單元21,配置用于同步所述業(yè)務(wù)數(shù)據(jù);
檢索單元23,配置用于接收業(yè)務(wù)數(shù)據(jù)查詢請(qǐng)求,檢索對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù),生成并返回檢索結(jié)果。
具體地,各業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)10和外部數(shù)據(jù)庫20之間的對(duì)應(yīng)關(guān)系可根據(jù)實(shí)際需求采用不同的配置,例如,各業(yè)務(wù)數(shù)據(jù)同步系統(tǒng)10可以將關(guān)于業(yè)務(wù)m1的業(yè)務(wù)數(shù)據(jù)同步至外部數(shù)據(jù)庫DB1中,將關(guān)于業(yè)務(wù)m2的業(yè)務(wù)數(shù)據(jù)同步至外部數(shù)據(jù)庫DB2中;也可以將當(dāng)前節(jié)點(diǎn)中配置的業(yè)務(wù)合約所處理的所有業(yè)務(wù)的業(yè)務(wù)數(shù)據(jù)都同步至同一外部數(shù)據(jù)庫中。
在一優(yōu)選實(shí)施例中,同步單元23根據(jù)所述交易信息中的交易賬號(hào)(ID)過濾重復(fù)的數(shù)據(jù)以同步所述業(yè)務(wù)數(shù)據(jù)。在更多實(shí)施例中,還可以將同步單元23配置成根據(jù)不同的數(shù)據(jù)篩選標(biāo)識(shí)以從交易信息中篩選業(yè)務(wù)數(shù)據(jù),可實(shí)現(xiàn)相同的技術(shù)效果。
圖6為圖5所示系統(tǒng)的一種優(yōu)選實(shí)施方式的局部結(jié)構(gòu)示意圖。
如圖6所示,在一優(yōu)選實(shí)施例中,上述數(shù)據(jù)庫系統(tǒng)還包括若干業(yè)務(wù)操作終端30。
具體地,業(yè)務(wù)操作終端30包括以下至少一項(xiàng):
業(yè)務(wù)處理單元31,配置用于調(diào)用所述業(yè)務(wù)合約接口以處理業(yè)務(wù)邏輯、編輯業(yè)務(wù)數(shù)據(jù);
業(yè)務(wù)數(shù)據(jù)查詢單元33,配置用于向檢索單元23發(fā)送所述業(yè)務(wù)數(shù)據(jù)查詢請(qǐng)求,接收所述檢索結(jié)果。
具體地,在本實(shí)施例中,業(yè)務(wù)操作終端30為配置在手機(jī)中的APP程序,在更多實(shí)施例中,也可將業(yè)務(wù)操作終端30配置為專用于處理業(yè)務(wù)和/或查詢業(yè)務(wù)數(shù)據(jù)的硬件裝置。
圖7為本發(fā)明一實(shí)施例提供的一種設(shè)備的結(jié)構(gòu)示意圖。
如圖7所示,作為另一方面,本申請(qǐng)還提供了一種設(shè)備700,包括一個(gè)或多個(gè)中央處理單元(CPU)701,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(ROM)702中的程序或者從存儲(chǔ)部分708加載到隨機(jī)訪問存儲(chǔ)器(RAM)703中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM703中,還存儲(chǔ)有設(shè)備700操作所需的各種程序和數(shù)據(jù)。CPU701、ROM702以及RAM703通過總線704彼此相連。輸入/輸出(I/O)接口705也連接至總線704。
以下部件連接至I/O接口705:包括鍵盤、鼠標(biāo)等的輸入部分706;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分707;包括硬盤等的存儲(chǔ)部分708;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分709。通信部分709經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器710也根據(jù)需要連接至I/O接口705??刹鹦督橘|(zhì)711,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器710上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分708。
特別地,根據(jù)本公開的實(shí)施例,上述任一實(shí)施例描述的業(yè)務(wù)數(shù)據(jù)同步方法可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包含用于執(zhí)行上述任一實(shí)施例描述的業(yè)務(wù)數(shù)據(jù)同步方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過通信部分709從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)711被安裝。
附圖中的流程圖和框圖,圖示了按照本發(fā)明各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,該模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這根據(jù)所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以通過執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以通過專用硬件與計(jì)算機(jī)指令的組合來實(shí)現(xiàn)。
描述于本申請(qǐng)實(shí)施例中所涉及到的單元或模塊可以通過軟件的方式實(shí)現(xiàn),也可以通過硬件的方式來實(shí)現(xiàn)。所描述的單元或模塊也可以設(shè)置在處理器中,例如,各所述單元可以是設(shè)置在計(jì)算機(jī)或移動(dòng)智能設(shè)備中的軟件程序,也可以是單獨(dú)配置的硬件裝置。其中,這些單元或模塊的名稱在某種情況下并不構(gòu)成對(duì)該單元或模塊本身的限定。
作為又一方面,本申請(qǐng)還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是上述實(shí)施例的裝置中所包含的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);也可以是單獨(dú)存在,未裝配入設(shè)備中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者一個(gè)以上程序,該程序被一個(gè)或者一個(gè)以上的處理器用來執(zhí)行描述于本申請(qǐng)的業(yè)務(wù)數(shù)據(jù)同步方法。
以上描述僅為本申請(qǐng)的較佳實(shí)施例以及對(duì)所運(yùn)用技術(shù)原理的說明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本申請(qǐng)中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時(shí)也應(yīng)涵蓋在不脫離本申請(qǐng)構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進(jìn)行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請(qǐng)中公開的(但不限于)具有類似功能的技術(shù)特征進(jìn)行互相替換而形成的技術(shù)方案。