1.本技術(shù)屬于通信技術(shù)領(lǐng)域,尤其涉及一種分布式數(shù)據(jù)搜索方法和索引文件的共享方法。
背景技術(shù):2.隨著數(shù)字化信息技術(shù)和終端技術(shù)的日漸成熟,電子設(shè)備中信息的全文檢索,得到了廣泛的應(yīng)用。
3.此外,由于消費(fèi)者的電子設(shè)備類型和數(shù)量逐漸增加,各電子設(shè)備可存儲(chǔ)的數(shù)據(jù)量逐漸增加,且各電子設(shè)備上存儲(chǔ)的數(shù)據(jù)量分布不均等,通過(guò)搜索功能找到不同電子設(shè)備上存儲(chǔ)的數(shù)據(jù),如文件、照片、視頻、音樂(lè)、或各種應(yīng)用數(shù)據(jù)等的需求越來(lái)越迫切。
4.目前,在不同電子設(shè)備的原始數(shù)據(jù)同步后,或者不同電子設(shè)備保持網(wǎng)絡(luò)連接時(shí),可以進(jìn)行不同電子設(shè)備的共享數(shù)據(jù)的搜索。
5.可見(jiàn),當(dāng)前技術(shù)需要依賴復(fù)雜的數(shù)據(jù)同步或者網(wǎng)絡(luò)訪問(wèn)等邏輯。
技術(shù)實(shí)現(xiàn)要素:6.本技術(shù)實(shí)施例提供了一種分布式數(shù)據(jù)搜索方法和索引文件的共享方法,可以解決相關(guān)技術(shù)的至少部分技術(shù)問(wèn)題。
7.第一方面,本技術(shù)實(shí)施例提供了一種分布式數(shù)據(jù)搜索的方法,該方法包括:
8.響應(yīng)于監(jiān)聽(tīng)到的搜索事件,搜索本地的同步索引庫(kù)得到搜索結(jié)果,所述同步索引庫(kù)包括本機(jī)的索引文件和其他電子設(shè)備的索引文件;所述其他電子設(shè)備為除本機(jī)外的電子設(shè)備;
9.顯示所述搜索結(jié)果。
10.第一方面的實(shí)施例提供的分布式數(shù)據(jù)搜索方法,分布式搜索在本機(jī)完成,不涉及跨設(shè)備和跨網(wǎng)絡(luò),無(wú)需復(fù)雜的網(wǎng)絡(luò)訪問(wèn)等邏輯,過(guò)程簡(jiǎn)單,提升了效率,從而提高了用戶體驗(yàn)。
11.在第一方面的一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
12.響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,建立元數(shù)據(jù)的索引文件;所述建立索引事件為針對(duì)所述元數(shù)據(jù)建立索引的事件;
13.在創(chuàng)建同步管道的不同電子設(shè)備間同步所述索引文件。
14.在第一方面的一種可能的實(shí)現(xiàn)方式中,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)所述搜索接口對(duì)應(yīng)的搜索組件搜索本地的同步索引庫(kù)得到搜索結(jié)果。
15.在第一方面的一種可能的實(shí)現(xiàn)方式中,搜索事件根據(jù)搜索界面中輸入的搜索條件來(lái)觸發(fā)。所述搜索條件包括但不限于句子、關(guān)鍵字和圖片等中的一種或多種的組合。搜索界面可以是系統(tǒng)或應(yīng)用程序中的搜索界面。系統(tǒng)包括但不限于ios或安卓系統(tǒng)等手機(jī)類終端的操作系統(tǒng),還包括非手機(jī)類終端的操作系統(tǒng),如windows、或linux等,應(yīng)用程序包括但不限于短信息,日歷,備忘錄,文件管理,或聯(lián)系人等。
16.在第一方面的可能的實(shí)現(xiàn)方式中,分布式數(shù)據(jù)搜索服務(wù)可在電子設(shè)備上開放分布式搜索接口給系統(tǒng)和/或應(yīng)用,實(shí)現(xiàn)分布式搜索功能,方便用戶操作,同時(shí),方案易于實(shí)施。
17.第二方面,本技術(shù)實(shí)施例提供了一種索引文件的共享方法,該方法包括:
18.響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,建立元數(shù)據(jù)的索引文件;所述建立索引事件為針對(duì)所述元數(shù)據(jù)建立索引的事件;
19.在創(chuàng)建同步管道的不同電子設(shè)備間同步所述索引文件。
20.第二方面的實(shí)施例提供的索引文件的共享方法,無(wú)需將元數(shù)據(jù)或原文件同步至不同電子設(shè)備,只需要將索引文件同步到不同電子設(shè)備,一方面,大大提升了傳輸效率,也減輕了存儲(chǔ)負(fù)擔(dān);另一方面,在不同電子設(shè)備間同步索引文件后,就可以實(shí)現(xiàn)在一個(gè)電子設(shè)備上搜索其他電子設(shè)備共享的內(nèi)容,并且在其他電子設(shè)備離線的狀態(tài)下也能搜索,提高了搜索效率,也提升了用戶的搜索體驗(yàn)。
21.在第二方面的一種可能的實(shí)現(xiàn)方式中,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)所述索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),建立所述元數(shù)據(jù)的索引文件。
22.在第二方面的一種可能的實(shí)現(xiàn)方式中,調(diào)用同步接口,通過(guò)所述同步接口對(duì)應(yīng)的同步組件,在本機(jī)和與本機(jī)創(chuàng)建同步管道的其他電子設(shè)備間同步所述索引文件。
23.在第二方面的可能的實(shí)現(xiàn)方式中,分布式數(shù)據(jù)搜索服務(wù)可在電子設(shè)備上開放分布式索引接口和同步接口給系統(tǒng)和/或應(yīng)用,實(shí)現(xiàn)索引文件在不同電子設(shè)備間的同步,無(wú)需設(shè)計(jì)復(fù)雜的數(shù)據(jù)同步邏輯,方案易于實(shí)施。
24.第三方面,本技術(shù)實(shí)施例提供了一種分布式數(shù)據(jù)搜索的方法,該方法包括:
25.響應(yīng)于監(jiān)聽(tīng)到的搜索事件,搜索本地索引庫(kù)和/或分布式文件系統(tǒng)得到搜索結(jié)果;所述本地索引庫(kù)包括本機(jī)不需要同步的索引文件;所述分布式文件系統(tǒng)包括本機(jī)需要同步的索引文件;
26.顯示所述搜索結(jié)果。
27.第三方面的實(shí)施例提供的分布式數(shù)據(jù)搜索方法,相比于第一方面,索引文件的同步無(wú)需再單獨(dú)實(shí)現(xiàn),僅靠分布式文件系統(tǒng)就可實(shí)現(xiàn)索引文件的跨設(shè)備訪問(wèn),無(wú)需設(shè)計(jì)復(fù)雜的數(shù)據(jù)同步和網(wǎng)絡(luò)訪問(wèn)等邏輯。
28.在第三方面的一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
29.響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,建立元數(shù)據(jù)的索引文件;所述建立索引事件為針對(duì)所述元數(shù)據(jù)建立索引的事件;
30.若所述元數(shù)據(jù)屬于不需要同步的本地元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至本地索引庫(kù);若所述元數(shù)據(jù)屬于需要同步的分布式元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至分布式文件系統(tǒng)。
31.在第三方面的一種可能的實(shí)現(xiàn)方式中,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)所述搜索接口對(duì)應(yīng)的搜索組件,搜索本地索引庫(kù)和/或分布式文件系統(tǒng)得到搜索結(jié)果。
32.在第三方面的可能的實(shí)現(xiàn)方式中,業(yè)務(wù)應(yīng)用僅需要接入簡(jiǎn)單的接口,就可實(shí)現(xiàn)跨設(shè)備分布式搜索,本技術(shù)方案易于實(shí)施。
33.第四方面,本技術(shù)實(shí)施例提供了一種索引文件的共享方法,該方法包括:
34.響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,建立元數(shù)據(jù)的索引文件;所述建立索引事件為針對(duì)所述元數(shù)據(jù)建立索引的事件;
35.若所述元數(shù)據(jù)屬于不需要同步的本地元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至本地索引庫(kù);若所述元數(shù)據(jù)屬于需要同步的分布式元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至分布式文件系統(tǒng)。
36.第四方面的實(shí)施例提供的分布式數(shù)據(jù)搜索方法,相比于第二方面,索引文件的同步無(wú)需再單獨(dú)實(shí)現(xiàn),僅靠分布式文件系統(tǒng)就可實(shí)現(xiàn)索引文件的跨設(shè)備訪問(wèn),無(wú)需設(shè)計(jì)復(fù)雜的數(shù)據(jù)同步和網(wǎng)絡(luò)訪問(wèn)等邏輯。
37.在第四方面的一種可能的實(shí)現(xiàn)方式中,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)所述索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),建立所述元數(shù)據(jù)的索引文件。
38.在第四方面的可能的實(shí)現(xiàn)方式中,業(yè)務(wù)應(yīng)用僅需要接入簡(jiǎn)單的接口,就可實(shí)現(xiàn)跨設(shè)備分布式搜索,本技術(shù)方案易于實(shí)施。
39.第五方面,本技術(shù)實(shí)施例提供了一種分布式數(shù)據(jù)搜索服務(wù)系統(tǒng),包括四層,四層分別為:應(yīng)用程序?qū)?、分布式搜索接口、分布式搜索服?wù)和索引文件;
40.所述分布式搜索接口包括索引接口、搜索接口和同步接口;
41.對(duì)應(yīng)于所述分布式搜索接口,所述分布式搜索服務(wù)包括索引組件、搜索組件和同步組件;
42.所述索引文件包括同步索引庫(kù),所述同步索引庫(kù)包括本機(jī)的索引文件和其他電子設(shè)備同步的索引文件;其他電子設(shè)備為除本機(jī)外的電子設(shè)備;
43.所述索引組件用于解析本機(jī)的元數(shù)據(jù),建立本機(jī)的索引文件;
44.所述同步組件用于在與本機(jī)創(chuàng)建同步管道的其他電子設(shè)備間同步所述本機(jī)的索引文件和其他電子設(shè)備的索引文件;
45.所述搜索組件用于根據(jù)搜索條件搜索所述同步索引庫(kù),得到搜索結(jié)果。
46.第六方面,本技術(shù)實(shí)施例提供了一種分布式數(shù)據(jù)搜索服務(wù)系統(tǒng),包括四層,四層分別為:應(yīng)用程序?qū)?、分布式搜索接口、分布式搜索服?wù)和索引文件;
47.所述分布式搜索接口包括索引接口和搜索接口;
48.對(duì)應(yīng)于所述分布式搜索接口,所述分布式搜索服務(wù)包括索引組件和搜索組件;
49.所述索引文件包括本地索引庫(kù)和分布式文件系統(tǒng),所述本地索引庫(kù)包括本機(jī)不需要同步的索引文件,所述分布式文件系統(tǒng)包括本機(jī)需要同步的索引文件;
50.所述索引組件用于解析本機(jī)的元數(shù)據(jù),建立本機(jī)的索引文件;若所述元數(shù)據(jù)屬于不需要同步的本地元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至所述本地索引庫(kù);若所述元數(shù)據(jù)屬于需要同步的分布式元數(shù)據(jù),則將所述元數(shù)據(jù)的索引文件存儲(chǔ)至所述分布式文件系統(tǒng);
51.所述搜索組件用于根據(jù)搜索條件搜索所述本地索引庫(kù)和/或分布式文件系統(tǒng),得到搜索結(jié)果。
52.在第五方面和第六方面中任一方面的一種可能的實(shí)現(xiàn)方式中,所述分布式搜索接口還包括配置接口,對(duì)應(yīng)的,所述分布式搜索服務(wù)還包括配置組件。
53.配置組件用于供用戶設(shè)置同步參數(shù)、搜索參數(shù)、同步策略、搜索策略和存儲(chǔ)位置等中的一種或多種。
54.第五方面和第六方面中任一方面的一種可能的實(shí)現(xiàn)方式,用戶可以自定義設(shè)置多種參數(shù),使得本技術(shù)可適用于不同的應(yīng)用場(chǎng)景,滿足不同用戶需求,從而進(jìn)一步提升用戶體
驗(yàn)。
55.第七方面,本技術(shù)實(shí)施例提供了一種電子設(shè)備,包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器中并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí),使得所述電子設(shè)備實(shí)現(xiàn)如第一方面和第一方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第二方面和第二方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第三方面和第三方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第四方面和第四方面可能的實(shí)現(xiàn)方式中任一所述的方法。
56.第八方面,本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面和第一方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第二方面和第二方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第三方面和第三方面可能的實(shí)現(xiàn)方式中任一所述的方法,或?qū)崿F(xiàn)如第四方面和第四方面可能的實(shí)現(xiàn)方式中任一所述的方法。
57.第九方面,本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)程序產(chǎn)品,當(dāng)計(jì)算機(jī)程序產(chǎn)品在電子設(shè)備上運(yùn)行時(shí),使得電子設(shè)備執(zhí)行上述第一方面和第一方面可能的實(shí)現(xiàn)方式中任一所述的方法,或執(zhí)行如上述第二方面和第二方面可能的實(shí)現(xiàn)方式中任一所述的方法,或執(zhí)行上述第三方面和第三方面可能的實(shí)現(xiàn)方式中任一所述的方法,或執(zhí)行上述第四方面和第四方面可能的實(shí)現(xiàn)方式中任一所述的方法。
58.可以理解的是,上述第五方面至第九方面的有益效果可以參見(jiàn)上述第一方面至第四方面中的相關(guān)描述。
附圖說(shuō)明
59.為了更清楚地說(shuō)明本技術(shù)實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本技術(shù)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
60.圖1是本技術(shù)一實(shí)施例提供的電子設(shè)備的硬件結(jié)構(gòu)示意圖;
61.圖2a是本技術(shù)一實(shí)施例提供的軟件架構(gòu)的示意圖;
62.圖2b是本技術(shù)一實(shí)施例提供的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu)的示意圖;
63.圖2c是本技術(shù)另一實(shí)施例提供的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu)的示意圖;
64.圖3a是本技術(shù)一實(shí)施例提供的分布式數(shù)據(jù)搜索方法的流程示意圖;
65.圖3b是本技術(shù)一實(shí)施例提供的分布式數(shù)據(jù)搜索方法的流程示意圖;
66.圖4a是本技術(shù)另一實(shí)施例提供的分布式數(shù)據(jù)搜索方法的流程示意圖;
67.圖4b是本技術(shù)另一實(shí)施例提供的分布式數(shù)據(jù)搜索方法的流程示意圖。
具體實(shí)施方式
68.以下描述中,為了說(shuō)明而不是為了限定,提出了諸如特定系統(tǒng)結(jié)構(gòu)、技術(shù)之類的具體細(xì)節(jié),以便透徹理解本技術(shù)實(shí)施例。然而,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)清楚,在沒(méi)有這些具體細(xì)節(jié)的其它實(shí)施例中也可以實(shí)現(xiàn)本技術(shù)。在其它情況中,省略對(duì)眾所周知的系統(tǒng)、裝置、電路以及方法的詳細(xì)說(shuō)明,以免不必要的細(xì)節(jié)妨礙本技術(shù)的描述。
69.需要說(shuō)明的是,在不沖突的情況下,本技術(shù)中的實(shí)施例及實(shí)施例中的特征可以相互組合,
70.以下實(shí)施例中所使用的術(shù)語(yǔ)只是為了描述特定實(shí)施例的目的,而并非旨在作為對(duì)本技術(shù)的限制。如在本技術(shù)的說(shuō)明書和所附權(quán)利要求書中所使用的那樣,單數(shù)表達(dá)形式“一個(gè)”、“一種”、“所述”、“上述”、“該”和“這一”旨在也包括例如“一個(gè)或多個(gè)”這種表達(dá)形式,除非其上下文中明確地有相反指示。
71.還應(yīng)當(dāng)理解,在本技術(shù)實(shí)施例中,“若干個(gè)”和“一個(gè)或多個(gè)”是指一個(gè)、兩個(gè)或兩個(gè)以上;“和/或”,描述關(guān)聯(lián)對(duì)象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系;例如,a和/或b,可以表示:?jiǎn)为?dú)存在a,同時(shí)存在a和b,單獨(dú)存在b的情況,其中a、b可以是單數(shù)或者復(fù)數(shù)。字符“/”一般表示前后關(guān)聯(lián)對(duì)象是一種“或”的關(guān)系。
72.當(dāng)在本技術(shù)說(shuō)明書和所附權(quán)利要求書中使用時(shí),術(shù)語(yǔ)“包括”指示所描述特征、整體、步驟、操作、元素和/或組件的存在,但并不排除一個(gè)或多個(gè)其它特征、整體、步驟、操作、元素、組件和/或其集合的存在或添加。
73.如在本技術(shù)說(shuō)明書和所附權(quán)利要求書中所使用的那樣,術(shù)語(yǔ)“若”可以依據(jù)上下文被解釋為“當(dāng)...時(shí)”或“一旦”或“響應(yīng)于確定”或“響應(yīng)于檢測(cè)到”。
74.另外,在本技術(shù)說(shuō)明書和所附權(quán)利要求書的描述中,術(shù)語(yǔ)“第一”、“第二”、“第三”等僅用于區(qū)分描述,而不能理解為指示或暗示相對(duì)重要性。
75.在本技術(shù)說(shuō)明書中描述的參考“一個(gè)實(shí)施例”或“一些實(shí)施例”等意味著在本技術(shù)的一個(gè)或多個(gè)實(shí)施例中包括結(jié)合該實(shí)施例描述的特定特征、結(jié)構(gòu)或特點(diǎn)。由此,在本說(shuō)明書中的不同之處出現(xiàn)的語(yǔ)句“在一個(gè)實(shí)施例中”、“在一些實(shí)施例中”、“在其他一些實(shí)施例中”、“在另外一些實(shí)施例中”等不是必然都參考相同的實(shí)施例,而是意味著“一個(gè)或多個(gè)但不是所有的實(shí)施例”,除非是以其他方式另外特別強(qiáng)調(diào)。術(shù)語(yǔ)“包括”、“包含”、“具有”及它們的變形都意味著“包括但不限于”,除非是以其他方式另外特別強(qiáng)調(diào)。
76.為了說(shuō)明本技術(shù)的技術(shù)方案,下面通過(guò)具體實(shí)施例來(lái)進(jìn)行說(shuō)明。
77.目前,在不同電子設(shè)備的原始數(shù)據(jù)同步后,或者不同電子設(shè)備保持網(wǎng)絡(luò)連接時(shí),可以進(jìn)行不同電子設(shè)備的共享數(shù)據(jù)的搜索。
78.例如,不同電子設(shè)備可以通過(guò)互聯(lián)網(wǎng)將各自的數(shù)據(jù)備份至云端服務(wù)器,再將備份至云端服務(wù)器來(lái)自其他電子設(shè)備的數(shù)據(jù)同步到本機(jī),以此來(lái)實(shí)現(xiàn)不同電子設(shè)備的數(shù)據(jù)共享,從而在本機(jī)實(shí)現(xiàn)來(lái)自其他電子設(shè)備的數(shù)據(jù)搜索。
79.這種方案依賴互聯(lián)網(wǎng)云端同步,一方面,不同電子設(shè)備需要使用相同賬戶進(jìn)行登錄,不同賬號(hào)無(wú)法直接搜索其他電子設(shè)備的共享數(shù)據(jù);另一方面,需要把其他電子設(shè)備的所有數(shù)據(jù)文件同步到本機(jī)后,才可以搜索全部?jī)?nèi)容,浪費(fèi)了本機(jī)的存儲(chǔ)空間。
80.又如,不同的電子設(shè)備間可以通過(guò)短距離通信技術(shù),例如藍(lán)牙(bluetooth,bt)或無(wú)線保真(wireless fidelity,wi-fi)技術(shù),進(jìn)行直接組網(wǎng),依賴臨時(shí)組網(wǎng)完成點(diǎn)對(duì)點(diǎn)的文件傳輸以實(shí)現(xiàn)數(shù)據(jù)共享,從而在本機(jī)可以搜索來(lái)自其他電子設(shè)備的數(shù)據(jù)。
81.這種方案需要本機(jī)點(diǎn)對(duì)點(diǎn)同步對(duì)端設(shè)備的數(shù)據(jù)文件,傳輸完成后本機(jī)才能實(shí)現(xiàn)對(duì)對(duì)端數(shù)據(jù)的搜索。這種方案仍然需要依賴元數(shù)據(jù)或原文件的同步,本機(jī)不具備直接搜索對(duì)端設(shè)備的數(shù)據(jù)的能力。
82.再如,不同電子設(shè)備通過(guò)wi-fi技術(shù)組成局域網(wǎng)后,本機(jī)可以通過(guò)文件傳輸協(xié)議
(file transfer protocol,ftp)協(xié)議相關(guān)的方法瀏覽對(duì)端設(shè)備的文件夾。
83.這種方案需要保持網(wǎng)絡(luò)連接,且只支持文件逐層瀏覽,搜索速度慢,且只能搜索文件名,不能進(jìn)行全文檢索。
84.可見(jiàn),現(xiàn)有技術(shù)需要復(fù)雜的數(shù)據(jù)同步和網(wǎng)絡(luò)訪問(wèn)等邏輯,才能實(shí)現(xiàn)不同電子設(shè)備的數(shù)據(jù)搜索。
85.本技術(shù)考慮到現(xiàn)有技術(shù)方案的不足,提供了一種索引文件的同步方法和分布式數(shù)據(jù)搜索方法,業(yè)務(wù)應(yīng)用僅需要接入簡(jiǎn)單的接口,即可實(shí)現(xiàn)跨設(shè)備的分布式數(shù)據(jù)搜索,無(wú)需依賴復(fù)雜的數(shù)據(jù)同步和網(wǎng)絡(luò)訪問(wèn)等邏輯。
86.本技術(shù)實(shí)施例提供的索引文件的同步(或稱共享)方法和分布式數(shù)據(jù)搜索的方法,適用于跨設(shè)備索引文件同步和數(shù)據(jù)搜索的情形。所述索引文件的同步方法和分布式數(shù)據(jù)搜索的方法均可應(yīng)用于電子設(shè)備,所述索引文件的同步方法可由配置于電子設(shè)備的索引文件的同步裝置執(zhí)行,所述分布式數(shù)據(jù)搜索的方法可由配置于電子設(shè)備的分布式數(shù)據(jù)搜索的裝置執(zhí)行。所述索引文件的同步裝置和所述分布式數(shù)據(jù)搜索的裝置均可由電子設(shè)備的軟件和/或硬件實(shí)現(xiàn)。
87.本技術(shù)實(shí)施例所適用的電子設(shè)備可以包括但不限于:手機(jī)、平板電腦、可穿戴設(shè)備、車載設(shè)備(或稱車機(jī))、增強(qiáng)現(xiàn)實(shí)(augmented reality,ar)/虛擬現(xiàn)實(shí)(virtual reality,vr)設(shè)備、筆記本電腦、超級(jí)移動(dòng)個(gè)人計(jì)算機(jī)(ultra-mobile personal computer,umpc)、上網(wǎng)本、個(gè)人數(shù)字助理(personal digital assistant,pda)、智慧屏、電視機(jī)頂盒、電視機(jī)、智能音響、耳機(jī)等。本技術(shù)實(shí)施例對(duì)電子設(shè)備的具體類型不作任何限制。
88.圖1示出了電子設(shè)備100的結(jié)構(gòu)示意圖。
89.電子設(shè)備100可以包括處理器110,外部存儲(chǔ)器接口120,內(nèi)部存儲(chǔ)器121,通用串行總線(universal serial bus,usb)接口130,充電管理模塊140,電源管理模塊141,電池142,天線1,天線2,移動(dòng)通信模塊150,無(wú)線通信模塊160,音頻模塊170,揚(yáng)聲器170a,受話器170b,麥克風(fēng)170c,耳機(jī)接口170d,傳感器模塊180,按鍵190,馬達(dá)191,指示器192,攝像頭193,顯示屏194,以及用戶標(biāo)識(shí)模塊(subscriber identification module,sim)卡接口195等。其中傳感器模塊180可以包括壓力傳感器180a,陀螺儀傳感器180b,氣壓傳感器180c,磁傳感器180d,加速度傳感器180e,距離傳感器180f,接近光傳感器180g,指紋傳感器180h,溫度傳感器180j,觸摸傳感器180k,環(huán)境光傳感器180l,骨傳導(dǎo)傳感器180m等。
90.可以理解的是,本技術(shù)實(shí)施例示意的結(jié)構(gòu)并不構(gòu)成對(duì)電子設(shè)備100的具體限定。在本技術(shù)另一些實(shí)施例中,電子設(shè)備100可以包括比圖示更多或更少的部件,或者組合某些部件,或者拆分某些部件,或者不同的部件布置。圖示的部件可以以硬件,軟件或軟件和硬件的組合實(shí)現(xiàn)。
91.處理器110可以包括一個(gè)或多個(gè)處理單元,例如:處理器110可以包括應(yīng)用處理器(application processor,ap),調(diào)制解調(diào)處理器,圖形處理器(graphics processing unit,gpu),圖像信號(hào)處理器(image signal processor,isp),控制器,視頻編解碼器,數(shù)字信號(hào)處理器(digital signal processor,dsp),基帶處理器,和/或神經(jīng)網(wǎng)絡(luò)處理器(neural-network processing unit,npu)等。其中,不同的處理單元可以是獨(dú)立的器件,也可以集成在一個(gè)或多個(gè)處理器中。
92.控制器可以根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生操作控制信號(hào),完成取指令和執(zhí)行
指令的控制。
93.處理器110中還可以設(shè)置存儲(chǔ)器,用于存儲(chǔ)指令和數(shù)據(jù)。在一些實(shí)施例中,處理器110中的存儲(chǔ)器為高速緩沖存儲(chǔ)器。該存儲(chǔ)器可以保存處理器110剛用過(guò)或循環(huán)使用的指令或數(shù)據(jù)。如果處理器110需要再次使用該指令或數(shù)據(jù),可從所述存儲(chǔ)器中直接調(diào)用。避免了重復(fù)存取,減少了處理器110的等待時(shí)間,因而提高了系統(tǒng)的效率。
94.在一些實(shí)施例中,處理器110可以包括一個(gè)或多個(gè)接口。接口可以包括集成電路(inter-integrated circuit,i2c)接口,集成電路內(nèi)置音頻(inter-integrated circuit sound,i2s)接口,脈沖編碼調(diào)制(pulse code modulation,pcm)接口,通用異步收發(fā)傳輸器(universal asynchronous receiver/transmitter,uart)接口,移動(dòng)產(chǎn)業(yè)處理器接口(mobile industry processor interface,mipi),通用輸入輸出(general-purpose input/output,gpio)接口,用戶標(biāo)識(shí)模塊(subscriber identity module,sim)接口,和/或通用串行總線(universal serial bus,usb)接口等。
95.i2c接口是一種雙向同步串行總線,包括一根串行數(shù)據(jù)線(serial data line,sda)和一根串行時(shí)鐘線(derail clock line,scl)。在一些實(shí)施例中,處理器110可以包含多組i2c總線。處理器110可以通過(guò)不同的i2c總線接口分別耦合觸摸傳感器180k,充電器,閃光燈,攝像頭193等。例如:處理器110可以通過(guò)i2c接口耦合觸摸傳感器180k,使處理器110與觸摸傳感器180k通過(guò)i2c總線接口通信,實(shí)現(xiàn)電子設(shè)備100的觸摸功能。
96.i2s接口可以用于音頻通信。在一些實(shí)施例中,處理器110可以包含多組i2s總線。處理器110可以通過(guò)i2s總線與音頻模塊170耦合,實(shí)現(xiàn)處理器110與音頻模塊170之間的通信。在一些實(shí)施例中,音頻模塊170可以通過(guò)i2s接口向無(wú)線通信模塊160傳遞音頻信號(hào),實(shí)現(xiàn)通過(guò)藍(lán)牙耳機(jī)接聽(tīng)電話的功能。
97.pcm接口也可以用于音頻通信,將模擬信號(hào)抽樣,量化和編碼。在一些實(shí)施例中,音頻模塊170與無(wú)線通信模塊160可以通過(guò)pcm總線接口耦合。在一些實(shí)施例中,音頻模塊170也可以通過(guò)pcm接口向無(wú)線通信模塊160傳遞音頻信號(hào),實(shí)現(xiàn)通過(guò)藍(lán)牙耳機(jī)接聽(tīng)電話的功能。所述i2s接口和所述pcm接口都可以用于音頻通信。
98.uart接口是一種通用串行數(shù)據(jù)總線,用于異步通信。該總線可以為雙向通信總線。它將要傳輸?shù)臄?shù)據(jù)在串行通信與并行通信之間轉(zhuǎn)換。在一些實(shí)施例中,uart接口通常被用于連接處理器110與無(wú)線通信模塊160。例如:處理器110通過(guò)uart接口與無(wú)線通信模塊160中的藍(lán)牙模塊通信,實(shí)現(xiàn)藍(lán)牙功能。在一些實(shí)施例中,音頻模塊170可以通過(guò)uart接口向無(wú)線通信模塊160傳遞音頻信號(hào),實(shí)現(xiàn)通過(guò)藍(lán)牙耳機(jī)播放音樂(lè)的功能。
99.mipi接口可以被用于連接處理器110與顯示屏194,攝像頭193等外圍器件。mipi接口包括攝像頭串行接口(camera serial interface,csi),顯示屏串行接口(display serial interface,dsi)等。在一些實(shí)施例中,處理器110和攝像頭193通過(guò)csi接口通信,實(shí)現(xiàn)電子設(shè)備100的拍攝功能。處理器110和顯示屏194通過(guò)dsi接口通信,實(shí)現(xiàn)電子設(shè)備100的顯示功能。
100.gpio接口可以通過(guò)軟件配置。gpio接口可以被配置為控制信號(hào),也可被配置為數(shù)據(jù)信號(hào)。在一些實(shí)施例中,gpio接口可以用于連接處理器110與攝像頭193,顯示屏194,無(wú)線通信模塊160,音頻模塊170,傳感器模塊180等。gpio接口還可以被配置為i2c接口,i2s接口,uart接口,mipi接口等。
satellite system,gnss),調(diào)頻(frequency modulation,fm),近距離無(wú)線通信技術(shù)(near field communication,nfc),紅外技術(shù)(infrared,ir)等無(wú)線通信的解決方案。無(wú)線通信模塊160可以是集成至少一個(gè)通信處理模塊的一個(gè)或多個(gè)器件。無(wú)線通信模塊160經(jīng)由天線2接收電磁波,將電磁波信號(hào)調(diào)頻以及濾波處理,將處理后的信號(hào)發(fā)送到處理器110。無(wú)線通信模塊160還可以從處理器110接收待發(fā)送的信號(hào),對(duì)其進(jìn)行調(diào)頻,放大,經(jīng)天線2轉(zhuǎn)為電磁波輻射出去。
110.在一些實(shí)施例中,電子設(shè)備100的天線1和移動(dòng)通信模塊150耦合,天線2和無(wú)線通信模塊160耦合,使得電子設(shè)備100可以通過(guò)無(wú)線通信技術(shù)與網(wǎng)絡(luò)以及其他設(shè)備通信。所述無(wú)線通信技術(shù)可以包括全球移動(dòng)通訊系統(tǒng)(global system for mobile communications,gsm),通用分組無(wú)線服務(wù)(general packet radio service,gprs),碼分多址接入(code division multiple access,cdma),寬帶碼分多址(wideband code division multiple access,wcdma),時(shí)分碼分多址(time-division code division multiple access,td-scdma),長(zhǎng)期演進(jìn)(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技術(shù)等。所述gnss可以包括全球衛(wèi)星定位系統(tǒng)(global positioning system,gps),全球?qū)Ш叫l(wèi)星系統(tǒng)(global navigation satellite system,glonass),北斗衛(wèi)星導(dǎo)航系統(tǒng)(beidou navigation satellite system,bds),準(zhǔn)天頂衛(wèi)星系統(tǒng)(quasi-zenith satellite system,qzss)和/或星基增強(qiáng)系統(tǒng)(satellite based augmentation systems,sbas)。
111.電子設(shè)備100通過(guò)gpu,顯示屏194,以及應(yīng)用處理器等實(shí)現(xiàn)顯示功能。gpu為圖像處理的微處理器,連接顯示屏194和應(yīng)用處理器。gpu用于執(zhí)行數(shù)學(xué)和幾何計(jì)算,用于圖形渲染。處理器110可包括一個(gè)或多個(gè)gpu,其執(zhí)行程序指令以生成或改變顯示信息。
112.顯示屏194用于顯示圖像,視頻等。顯示屏194包括顯示面板。顯示面板可以采用液晶顯示屏(liquid crystal display,lcd),有機(jī)發(fā)光二極管(organic light-emitting diode,oled),有源矩陣有機(jī)發(fā)光二極體或主動(dòng)矩陣有機(jī)發(fā)光二極體(active-matrix organic light emitting diode的,amoled),柔性發(fā)光二極管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子點(diǎn)發(fā)光二極管(quantum dot light emitting diodes,qled)等。在一些實(shí)施例中,電子設(shè)備100可以包括1個(gè)或n個(gè)顯示屏194,n為大于1的正整數(shù)。
113.電子設(shè)備100可以通過(guò)isp,攝像頭193,視頻編解碼器,gpu,顯示屏194以及應(yīng)用處理器等實(shí)現(xiàn)拍攝功能。
114.isp用于處理攝像頭193反饋的數(shù)據(jù)。例如,拍照時(shí),打開快門,光線通過(guò)鏡頭被傳遞到攝像頭感光元件上,光信號(hào)轉(zhuǎn)換為電信號(hào),攝像頭感光元件將所述電信號(hào)傳遞給isp處理,轉(zhuǎn)化為肉眼可見(jiàn)的圖像。isp還可以對(duì)圖像的噪點(diǎn),亮度,膚色進(jìn)行算法優(yōu)化。isp還可以對(duì)拍攝場(chǎng)景的曝光,色溫等參數(shù)優(yōu)化。在一些實(shí)施例中,isp可以設(shè)置在攝像頭193中。
115.攝像頭193用于捕獲靜態(tài)圖像或視頻。物體通過(guò)鏡頭生成光學(xué)圖像投射到感光元件。感光元件可以是電荷耦合器件(charge coupled device,ccd)或互補(bǔ)金屬氧化物半導(dǎo)體(complementary metal-oxide-semiconductor,cmos)光電晶體管。感光元件把光信號(hào)轉(zhuǎn)換成電信號(hào),之后將電信號(hào)傳遞給isp轉(zhuǎn)換成數(shù)字圖像信號(hào)。isp將數(shù)字圖像信號(hào)輸出到dsp加工處理。dsp將數(shù)字圖像信號(hào)轉(zhuǎn)換成標(biāo)準(zhǔn)的rgb,yuv等格式的圖像信號(hào)。在一些實(shí)施例中,電子設(shè)備100可以包括1個(gè)或n個(gè)攝像頭193,n為大于1的正整數(shù)。
116.數(shù)字信號(hào)處理器用于處理數(shù)字信號(hào),除了可以處理數(shù)字圖像信號(hào),還可以處理其他數(shù)字信號(hào)。例如,當(dāng)電子設(shè)備100在頻點(diǎn)選擇時(shí),數(shù)字信號(hào)處理器用于對(duì)頻點(diǎn)能量進(jìn)行傅里葉變換等。
117.視頻編解碼器用于對(duì)數(shù)字視頻壓縮或解壓縮。電子設(shè)備100可以支持一種或多種視頻編解碼器。這樣,電子設(shè)備100可以播放或錄制多種編碼格式的視頻,例如:動(dòng)態(tài)圖像專家組(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
118.npu為神經(jīng)網(wǎng)絡(luò)(neural-network,nn)計(jì)算處理器,通過(guò)借鑒生物神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),例如借鑒人腦神經(jīng)元之間傳遞模式,對(duì)輸入信息快速處理,還可以不斷的自學(xué)習(xí)。通過(guò)npu可以實(shí)現(xiàn)電子設(shè)備100的智能認(rèn)知等應(yīng)用,例如:圖像識(shí)別,人臉識(shí)別,語(yǔ)音識(shí)別,文本理解等。
119.外部存儲(chǔ)器接口120可以用于連接外部存儲(chǔ)卡,例如micro sd卡,實(shí)現(xiàn)擴(kuò)展電子設(shè)備100的存儲(chǔ)能力。外部存儲(chǔ)卡通過(guò)外部存儲(chǔ)器接口120與處理器110通信,實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)功能。例如將音樂(lè),視頻等文件保存在外部存儲(chǔ)卡中。
120.內(nèi)部存儲(chǔ)器121可以用于存儲(chǔ)計(jì)算機(jī)可執(zhí)行程序代碼,所述可執(zhí)行程序代碼包括指令。內(nèi)部存儲(chǔ)器121可以包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū)。其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng),至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能,圖像播放功能等)等。存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)電子設(shè)備100使用過(guò)程中所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù),電話本等)等。此外,內(nèi)部存儲(chǔ)器121可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件,閃存器件,通用閃存存儲(chǔ)器(universal flash storage,ufs)等。處理器110通過(guò)運(yùn)行存儲(chǔ)在內(nèi)部存儲(chǔ)器121的指令,和/或存儲(chǔ)在設(shè)置于處理器中的存儲(chǔ)器的指令,執(zhí)行電子設(shè)備100的各種功能應(yīng)用以及數(shù)據(jù)處理。
121.電子設(shè)備100可以通過(guò)音頻模塊170,揚(yáng)聲器170a,受話器170b,麥克風(fēng)170c,耳機(jī)接口170d,以及應(yīng)用處理器等實(shí)現(xiàn)音頻功能。例如音樂(lè)播放,錄音等。
122.音頻模塊170用于將數(shù)字音頻信息轉(zhuǎn)換成模擬音頻信號(hào)輸出,也用于將模擬音頻輸入轉(zhuǎn)換為數(shù)字音頻信號(hào)。音頻模塊170還可以用于對(duì)音頻信號(hào)編碼和解碼。在一些實(shí)施例中,音頻模塊170可以設(shè)置于處理器110中,或?qū)⒁纛l模塊170的部分功能模塊設(shè)置于處理器110中。
123.揚(yáng)聲器170a,也稱“喇叭”,用于將音頻電信號(hào)轉(zhuǎn)換為聲音信號(hào)。電子設(shè)備100可以通過(guò)揚(yáng)聲器170a收聽(tīng)音樂(lè),或收聽(tīng)免提通話。
124.受話器170b,也稱“聽(tīng)筒”,用于將音頻電信號(hào)轉(zhuǎn)換成聲音信號(hào)。當(dāng)電子設(shè)備100接聽(tīng)電話或語(yǔ)音信息時(shí),可以通過(guò)將受話器170b靠近人耳接聽(tīng)語(yǔ)音。
125.麥克風(fēng)170c,也稱“話筒”,“傳聲器”,用于將聲音信號(hào)轉(zhuǎn)換為電信號(hào)。當(dāng)撥打電話或發(fā)送語(yǔ)音信息時(shí),用戶可以通過(guò)人嘴靠近麥克風(fēng)170c發(fā)聲,將聲音信號(hào)輸入到麥克風(fēng)170c。電子設(shè)備100可以設(shè)置至少一個(gè)麥克風(fēng)170c。在另一些實(shí)施例中,電子設(shè)備100可以設(shè)置兩個(gè)麥克風(fēng)170c,除了采集聲音信號(hào),還可以實(shí)現(xiàn)降噪功能。在另一些實(shí)施例中,電子設(shè)備100還可以設(shè)置三個(gè),四個(gè)或更多麥克風(fēng)170c,實(shí)現(xiàn)采集聲音信號(hào),降噪,還可以識(shí)別聲音來(lái)源,實(shí)現(xiàn)定向錄音功能等。
126.耳機(jī)接口170d用于連接有線耳機(jī)。耳機(jī)接口170d可以是usb接口130,也可以是3.5mm的開放移動(dòng)電子設(shè)備平臺(tái)(open mobile terminal platform,omtp)標(biāo)準(zhǔn)接口,美國(guó)
蜂窩電信工業(yè)協(xié)會(huì)(cellular telecommunications industry association of the usa,ctia)標(biāo)準(zhǔn)接口。
127.壓力傳感器180a用于感受壓力信號(hào),可以將壓力信號(hào)轉(zhuǎn)換成電信號(hào)。在一些實(shí)施例中,壓力傳感器180a可以設(shè)置于顯示屏194。壓力傳感器180a的種類很多,如電阻式壓力傳感器,電感式壓力傳感器,電容式壓力傳感器等。電容式壓力傳感器可以是包括至少兩個(gè)具有導(dǎo)電材料的平行板。當(dāng)有力作用于壓力傳感器180a,電極之間的電容改變。電子設(shè)備100根據(jù)電容的變化確定壓力的強(qiáng)度。當(dāng)有觸摸操作作用于顯示屏194,電子設(shè)備100根據(jù)壓力傳感器180a檢測(cè)所述觸摸操作強(qiáng)度。電子設(shè)備100也可以根據(jù)壓力傳感器180a的檢測(cè)信號(hào)計(jì)算觸摸的位置。在一些實(shí)施例中,作用于相同觸摸位置,但不同觸摸操作強(qiáng)度的觸摸操作,可以對(duì)應(yīng)不同的操作指令。例如:當(dāng)有觸摸操作強(qiáng)度小于第一壓力閾值的觸摸操作作用于短消息應(yīng)用圖標(biāo)時(shí),執(zhí)行查看短消息的指令。當(dāng)有觸摸操作強(qiáng)度大于或等于第一壓力閾值的觸摸操作作用于短消息應(yīng)用圖標(biāo)時(shí),執(zhí)行新建短消息的指令。
128.陀螺儀傳感器180b可以用于確定電子設(shè)備100的運(yùn)動(dòng)姿態(tài)。在一些實(shí)施例中,可以通過(guò)陀螺儀傳感器180b確定電子設(shè)備100圍繞三個(gè)軸(即,x,y和z軸)的角速度。陀螺儀傳感器180b可以用于拍攝防抖。示例性的,當(dāng)按下快門,陀螺儀傳感器180b檢測(cè)電子設(shè)備100抖動(dòng)的角度,根據(jù)角度計(jì)算出鏡頭模組需要補(bǔ)償?shù)木嚯x,讓鏡頭通過(guò)反向運(yùn)動(dòng)抵消電子設(shè)備100的抖動(dòng),實(shí)現(xiàn)防抖。陀螺儀傳感器180b還可以用于導(dǎo)航,體感游戲場(chǎng)景。
129.氣壓傳感器180c用于測(cè)量氣壓。在一些實(shí)施例中,電子設(shè)備100通過(guò)氣壓傳感器180c測(cè)得的氣壓值計(jì)算海拔高度,輔助定位和導(dǎo)航。
130.磁傳感器180d包括霍爾傳感器。電子設(shè)備100可以利用磁傳感器180d檢測(cè)翻蓋皮套的開合。在一些實(shí)施例中,當(dāng)電子設(shè)備100是翻蓋機(jī)時(shí),電子設(shè)備100可以根據(jù)磁傳感器180d檢測(cè)翻蓋的開合。進(jìn)而根據(jù)檢測(cè)到的皮套的開合狀態(tài)或翻蓋的開合狀態(tài),設(shè)置翻蓋自動(dòng)解鎖等特性。
131.加速度傳感器180e可檢測(cè)電子設(shè)備100在各個(gè)方向上(一般為三軸)加速度的大小。當(dāng)電子設(shè)備100靜止時(shí)可檢測(cè)出重力的大小及方向。還可以用于識(shí)別電子設(shè)備姿態(tài),應(yīng)用于橫豎屏切換,計(jì)步器等應(yīng)用。
132.距離傳感器180f,用于測(cè)量距離。電子設(shè)備100可以通過(guò)紅外或激光測(cè)量距離。在一些實(shí)施例中,拍攝場(chǎng)景,電子設(shè)備100可以利用距離傳感器180f測(cè)距以實(shí)現(xiàn)快速對(duì)焦。
133.接近光傳感器180g可以包括例如發(fā)光二極管(led)和光檢測(cè)器,例如光電二極管。發(fā)光二極管可以是紅外發(fā)光二極管。電子設(shè)備100通過(guò)發(fā)光二極管向外發(fā)射紅外光。電子設(shè)備100使用光電二極管檢測(cè)來(lái)自附近物體的紅外反射光。當(dāng)檢測(cè)到充分的反射光時(shí),可以確定電子設(shè)備100附近有物體。當(dāng)檢測(cè)到不充分的反射光時(shí),電子設(shè)備100可以確定電子設(shè)備100附近沒(méi)有物體。電子設(shè)備100可以利用接近光傳感器180g檢測(cè)用戶手持電子設(shè)備100貼近耳朵通話,以便自動(dòng)熄滅屏幕達(dá)到省電的目的。接近光傳感器180g也可用于皮套模式,口袋模式自動(dòng)解鎖與鎖屏。
134.環(huán)境光傳感器180l用于感知環(huán)境光亮度。電子設(shè)備100可以根據(jù)感知的環(huán)境光亮度自適應(yīng)調(diào)節(jié)顯示屏194亮度。環(huán)境光傳感器180l也可用于拍照時(shí)自動(dòng)調(diào)節(jié)白平衡。環(huán)境光傳感器180l還可以與接近光傳感器180g配合,檢測(cè)電子設(shè)備100是否在口袋里,以防誤觸。
135.指紋傳感器180h用于采集指紋。電子設(shè)備100可以利用采集的指紋特性實(shí)現(xiàn)指紋
解鎖,訪問(wèn)應(yīng)用鎖,指紋拍照,指紋接聽(tīng)來(lái)電等。
136.溫度傳感器180j用于檢測(cè)溫度。在一些實(shí)施例中,電子設(shè)備100利用溫度傳感器180j檢測(cè)的溫度,執(zhí)行溫度處理策略。例如,當(dāng)溫度傳感器180j上報(bào)的溫度超過(guò)閾值,電子設(shè)備100執(zhí)行降低位于溫度傳感器180j附近的處理器的性能,以便降低功耗實(shí)施熱保護(hù)。在另一些實(shí)施例中,當(dāng)溫度低于另一閾值時(shí),電子設(shè)備100對(duì)電池142加熱,以避免低溫導(dǎo)致電子設(shè)備100異常關(guān)機(jī)。在其他一些實(shí)施例中,當(dāng)溫度低于又一閾值時(shí),電子設(shè)備100對(duì)電池142的輸出電壓執(zhí)行升壓,以避免低溫導(dǎo)致的異常關(guān)機(jī)。
137.觸摸傳感器180k,也稱“觸控器件”。觸摸傳感器180k可以設(shè)置于顯示屏194,由觸摸傳感器180k與顯示屏194組成觸摸屏,也稱“觸控屏”。觸摸傳感器180k用于檢測(cè)作用于其上或附近的觸摸操作。觸摸傳感器可以將檢測(cè)到的觸摸操作傳遞給應(yīng)用處理器,以確定觸摸事件類型??梢酝ㄟ^(guò)顯示屏194提供與觸摸操作相關(guān)的視覺(jué)輸出。在另一些實(shí)施例中,觸摸傳感器180k也可以設(shè)置于電子設(shè)備100的表面,與顯示屏194所處的位置不同。
138.骨傳導(dǎo)傳感器180m可以獲取振動(dòng)信號(hào)。在一些實(shí)施例中,骨傳導(dǎo)傳感器180m可以獲取人體聲部振動(dòng)骨塊的振動(dòng)信號(hào)。骨傳導(dǎo)傳感器180m也可以接觸人體脈搏,接收血壓跳動(dòng)信號(hào)。在一些實(shí)施例中,骨傳導(dǎo)傳感器180m也可以設(shè)置于耳機(jī)中,結(jié)合成骨傳導(dǎo)耳機(jī)。音頻模塊170可以基于所述骨傳導(dǎo)傳感器180m獲取的聲部振動(dòng)骨塊的振動(dòng)信號(hào),解析出語(yǔ)音信號(hào),實(shí)現(xiàn)語(yǔ)音功能。應(yīng)用處理器可以基于所述骨傳導(dǎo)傳感器180m獲取的血壓跳動(dòng)信號(hào)解析心率信息,實(shí)現(xiàn)心率檢測(cè)功能。
139.按鍵190包括開機(jī)鍵,音量鍵等。按鍵190可以是機(jī)械按鍵。也可以是觸摸式按鍵。電子設(shè)備100可以接收按鍵輸入,產(chǎn)生與電子設(shè)備100的用戶設(shè)置以及功能控制有關(guān)的鍵信號(hào)輸入。
140.馬達(dá)191可以產(chǎn)生振動(dòng)提示。馬達(dá)191可以用于來(lái)電振動(dòng)提示,也可以用于觸摸振動(dòng)反饋。例如,作用于不同應(yīng)用(例如拍照,音頻播放等)的觸摸操作,可以對(duì)應(yīng)不同的振動(dòng)反饋效果。作用于顯示屏194不同區(qū)域的觸摸操作,馬達(dá)191也可對(duì)應(yīng)不同的振動(dòng)反饋效果。不同的應(yīng)用場(chǎng)景(例如:時(shí)間提醒,接收信息,鬧鐘,游戲等)也可以對(duì)應(yīng)不同的振動(dòng)反饋效果。觸摸振動(dòng)反饋效果還可以支持自定義。
141.指示器192可以是指示燈,可以用于指示充電狀態(tài),電量變化,也可以用于指示消息,未接來(lái)電,通知等。
142.sim卡接口195用于連接sim卡。sim卡可以通過(guò)插入sim卡接口195,或從sim卡接口195拔出,實(shí)現(xiàn)和電子設(shè)備100的接觸和分離。電子設(shè)備100可以支持1個(gè)或n個(gè)sim卡接口,n為大于1的正整數(shù)。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一個(gè)sim卡接口195可以同時(shí)插入多張卡。所述多張卡的類型可以相同,也可以不同。sim卡接口195也可以兼容不同類型的sim卡。sim卡接口195也可以兼容外部存儲(chǔ)卡。電子設(shè)備100通過(guò)sim卡和網(wǎng)絡(luò)交互,實(shí)現(xiàn)通話以及數(shù)據(jù)通信等功能。在一些實(shí)施例中,電子設(shè)備100采用esim,即:嵌入式sim卡。esim卡可以嵌在電子設(shè)備100中,不能和電子設(shè)備100分離。
143.電子設(shè)備100的軟件架構(gòu)模式有多種,可以包括如下幾種:分層架構(gòu),事件驅(qū)動(dòng)架構(gòu),微核架構(gòu)(又稱插件架構(gòu)),微服務(wù)架構(gòu),或云架構(gòu)等。
144.本技術(shù)實(shí)施例以分層架構(gòu)為例,示例性說(shuō)明電子設(shè)備100的軟件架構(gòu)。
145.分層架構(gòu)將軟件分成若干個(gè)水平層,每一層都有清晰的角色和分工。層與層之間
通過(guò)軟件接口通信。
146.圖2a所示,是本技術(shù)一實(shí)施例提供的電子設(shè)備100的軟件架構(gòu)圖。如圖2a所示的軟件架構(gòu)中,軟件分為五層,從上至下分別為:表現(xiàn)層(presentation)、業(yè)務(wù)邏輯層(business)、服務(wù)層(service)、持久層(persistence)和數(shù)據(jù)庫(kù)(database)。
147.其中,表現(xiàn)層(presentation)可以包括一系列的應(yīng)用程序包,通過(guò)用戶界面負(fù)責(zé)視覺(jué)和與用戶的互動(dòng)。
148.業(yè)務(wù)層(business),用于實(shí)現(xiàn)業(yè)務(wù)邏輯。
149.服務(wù)層(service),用于提供不同業(yè)務(wù)邏輯需要的一些通用接口。
150.持久層(persistence),用于提供數(shù)據(jù)。例如sql語(yǔ)句可以放在持久層。
151.數(shù)據(jù)庫(kù)(database),用于保存數(shù)據(jù)。
152.分層架構(gòu)的一個(gè)特性是關(guān)注分離(separation of concerns)。在層中的組件只負(fù)責(zé)本層的邏輯。組件的劃分很容易讓它們實(shí)現(xiàn)自己的角色和職責(zé),也比較容易地開發(fā),測(cè)試管理和維護(hù)。
153.即使業(yè)務(wù)層沒(méi)有處理業(yè)務(wù)規(guī)則,也要通過(guò)業(yè)務(wù)層來(lái)調(diào)用數(shù)據(jù)庫(kù),這叫分層隔離,分層架構(gòu)需要這樣的冗余。對(duì)于某些功能,如果可以從表現(xiàn)層直接訪問(wèn)數(shù)據(jù)庫(kù),那么數(shù)據(jù)庫(kù)后續(xù)的任何變動(dòng)都將影響到業(yè)務(wù)層和表現(xiàn)層。
154.分層架構(gòu)中使用了分層的開閉原則。如果某層是關(guān)閉(closed)的,那么每個(gè)請(qǐng)求都要經(jīng)過(guò)這一層。相反,如果該層是開放(open)的,那么請(qǐng)求可以繞過(guò)這一層,直接到下一層。
155.分層隔離有利于降低整個(gè)應(yīng)用程序的復(fù)雜度。某些功能并不需要經(jīng)過(guò)每一層,這時(shí)可以根據(jù)分層的開閉原則來(lái)簡(jiǎn)化實(shí)現(xiàn)。
156.需要說(shuō)明的是,每一個(gè)水平層中又可以詳細(xì)的分成更細(xì)的層。
157.還需要說(shuō)明的是,此處圖2a僅為示例性描述,根據(jù)不同的實(shí)際需求,軟件架構(gòu)可以為更復(fù)雜或更簡(jiǎn)單的分層架構(gòu)。
158.例如,在其他一些實(shí)施例中,圖2a所示的數(shù)據(jù)庫(kù)可以用索引庫(kù)或文件替代。也就是說(shuō),數(shù)據(jù)的持久化的方式不僅有數(shù)據(jù)庫(kù),也有文件的形式;如索引的存儲(chǔ)方式,不一定是數(shù)據(jù)庫(kù),可以是一些符合全文索引(或稱為倒排索引)技術(shù)格式的索引文件。
159.又如,在其他一些實(shí)施例中,圖2a所示的業(yè)務(wù)層和服務(wù)層可以整合成一個(gè)服務(wù)層,整合后的服務(wù)層是對(duì)外提供功能接口的內(nèi)部實(shí)現(xiàn)邏輯的載體,既提供接口,也實(shí)現(xiàn)業(yè)務(wù)邏輯。
160.圖2b所示,是本技術(shù)一實(shí)施例提供的一種在電子設(shè)備100上實(shí)現(xiàn)的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu)圖。分布式數(shù)據(jù)搜索服務(wù)可開放分布式搜索接口給系統(tǒng)和/或應(yīng)用。
161.圖2b所示的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu),分為四層,從上至下分別為:應(yīng)用程序(app)層、分布式搜索接口、分布式搜索服務(wù)和索引文件。
162.應(yīng)用程序?qū)?,即圖2a所述的表現(xiàn)層,可以包括一系列應(yīng)用程序包。
163.如圖2b所示,應(yīng)用程序包可以包括短信息,日歷,備忘錄,文件管理,聯(lián)系人等應(yīng)用程序。
164.分布式搜索接口和分布式搜索服務(wù)可以放在圖2a所示的服務(wù)層。
165.如圖2b所示,分布式搜索接口包括索引、搜索、同步和配置。對(duì)應(yīng)的,分布式搜索服
務(wù)包括索引組件、搜索組件、同步組件和配置組件。
166.其中,索引組件可以用于解析數(shù)據(jù),建立本機(jī)數(shù)據(jù)的全文索引。
167.同步組件可以用于在不同電子設(shè)備間同步數(shù)據(jù)的全文索引。
168.搜索組件可以用于搜索不同電子設(shè)備的共享數(shù)據(jù)。
169.配置組件可以用于供用戶設(shè)置同步參數(shù)、搜索參數(shù)、同步策略、搜索策略和存儲(chǔ)位置等中的一種或多種。
170.同步參數(shù)包括但不限于:同步對(duì)象和同步方式等中的至少一種。同步對(duì)象是指是否需要同步,包括但不限于:可以由用戶指定某些業(yè)務(wù)(例如短信息、聯(lián)系人、備忘錄等)可以同步,而其他業(yè)務(wù)(例如即時(shí)聊天工具等)則無(wú)法同步;還可以由用戶指定某些類型的數(shù)據(jù)(例如照片和視頻)可以同步,而其余類型的數(shù)據(jù)(例如網(wǎng)絡(luò)鏈接或應(yīng)用程序安裝包等)則無(wú)法同步等。同步方式包括但不限于:自動(dòng)同步,由用戶確認(rèn)后同步,主動(dòng)同步到對(duì)端設(shè)備或者被動(dòng)同步到對(duì)端設(shè)備等。例如,主動(dòng)同步到對(duì)端設(shè)備包括主動(dòng)發(fā)送同步數(shù)據(jù)的全文索引至對(duì)端設(shè)備,被動(dòng)同步到對(duì)端設(shè)備包括響應(yīng)于對(duì)端設(shè)備的同步數(shù)據(jù)獲取請(qǐng)求,發(fā)送同步數(shù)據(jù)的全文索引至對(duì)端設(shè)備。
171.搜索參數(shù)包括觸發(fā)搜索事件的條件,搜索對(duì)象等中的一種或多種。搜索對(duì)象是指搜索范圍,例如搜索某個(gè)索引庫(kù)等。
172.同步策略包括在發(fā)送同步數(shù)據(jù)的全文索引至對(duì)端設(shè)備的過(guò)程中,是否需要加密和解密等。更一般地,可以由用戶指定某些業(yè)務(wù)自動(dòng)同步數(shù)據(jù),而其余業(yè)務(wù)需要用戶確認(rèn)才能同步數(shù)據(jù)。
173.搜索策略包括顯示多少條搜索結(jié)果等。
174.存儲(chǔ)位置包括本地索引文件的存儲(chǔ)位置,不需要同步的本地索引文件的存儲(chǔ)位置,需要同步的本地索引文件的存儲(chǔ)位置,來(lái)自其他電子設(shè)備的索引文件的存儲(chǔ)位置等中的一種或多種。
175.索引文件,可以放在圖2a所示的數(shù)據(jù)庫(kù)這一層。索引文件包括本機(jī)索引,和其他電子設(shè)備的索引文件。可以建立索引庫(kù)來(lái)存儲(chǔ)索引文件。
176.設(shè)備a和設(shè)備b連接相同網(wǎng)絡(luò),或者組建短距離共享網(wǎng)絡(luò),或采用相同賬號(hào)登錄,兩個(gè)設(shè)備共享各自的數(shù)據(jù)。如圖2b所示,設(shè)備a中存儲(chǔ)的索引文件包括本機(jī)索引和設(shè)備b的索引。設(shè)備b中存儲(chǔ)的索引文件包括本機(jī)索引和設(shè)備a的索引。
177.應(yīng)理解,此處圖2b僅為示例性描述,根據(jù)不同的實(shí)際需求,軟件架構(gòu)可以為更復(fù)雜或更簡(jiǎn)單的分層架構(gòu)。
178.本技術(shù)實(shí)施例中,設(shè)備a和設(shè)備b建立共享組或采用相同賬號(hào)登錄,若設(shè)備a共享文件1,b設(shè)備共享文件2,通過(guò)分布式數(shù)據(jù)搜索服務(wù)建立索引文件并同步后,設(shè)備a可以在本機(jī)搜索到設(shè)備b的文件2,設(shè)備b可以在本機(jī)搜索到設(shè)備a的文件1??梢?jiàn),本技術(shù)實(shí)施例提供的方案,無(wú)需將元數(shù)據(jù)或原文件同步至對(duì)端設(shè)備,大大減輕了數(shù)據(jù)傳輸和數(shù)據(jù)存儲(chǔ)的負(fù)擔(dān)。
179.圖2c所示,是本技術(shù)一實(shí)施例提供的一種在電子設(shè)備100上實(shí)現(xiàn)的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu)圖。分布式數(shù)據(jù)搜索服務(wù)可開放分布式搜索接口給系統(tǒng)和/或應(yīng)用。
180.圖2c所示的分布式數(shù)據(jù)搜索服務(wù)的軟件架構(gòu),分為四層,從上至下分別為:應(yīng)用程序(app)層、分布式搜索接口、分布式搜索服務(wù)和索引文件。
181.應(yīng)用程序?qū)樱磮D2a所述的表現(xiàn)層,可以包括一系列應(yīng)用程序包。
182.如圖2c所示,應(yīng)用程序包可以包括短信息,日歷,備忘錄,文件管理,聯(lián)系人等應(yīng)用程序。
183.分布式搜索接口和分布式搜索服務(wù)可以放在圖2a所示的服務(wù)層。
184.如圖2c所示,分布式搜索接口包括索引、搜索和配置。對(duì)應(yīng)的,分布式搜索服務(wù)包括索引組件、搜索組件配置組件。
185.索引文件包括本地索引庫(kù)和分布式索引庫(kù),所述分布式索引庫(kù)建立在分布式文件系統(tǒng)上,所述本地索引庫(kù)包括本機(jī)不需要同步的索引文件,所述分布式索引庫(kù)包括本機(jī)需要同步的索引文件;
186.其中,索引組件可以用于解析數(shù)據(jù),建立本機(jī)數(shù)據(jù)的全文索引。將本機(jī)不需要同步的索引文件存儲(chǔ)至本地索引庫(kù),將本機(jī)需要同步的索引文件存儲(chǔ)至分布式索引庫(kù)。
187.搜索組件可以用于搜索本地索引庫(kù)和分布式索引庫(kù)中不同電子設(shè)備的共享數(shù)據(jù)。
188.配置組件可以用于供用戶設(shè)置同步參數(shù)、搜索參數(shù)、同步策略、搜索策略和存儲(chǔ)位置等中的一種或多種。
189.應(yīng)理解,此處圖2c僅為示例性描述,根據(jù)不同的實(shí)際需求,軟件架構(gòu)可以為更復(fù)雜或更簡(jiǎn)單的分層架構(gòu)。
190.本技術(shù)一些實(shí)施例中,不同電子設(shè)備組建分布式文件系統(tǒng),例如,設(shè)備a和設(shè)備b組建分布式文件系統(tǒng)。設(shè)備a在分布式文件系統(tǒng)的分布式索引庫(kù)中共享文件1,設(shè)備b在分布式文件系統(tǒng)的分布式索引庫(kù)中共享文件2,通過(guò)分布式數(shù)據(jù)搜索服務(wù)在分布式文件系統(tǒng)建立分布式索引文件后,設(shè)備a可以在本機(jī)通過(guò)分布式文件系統(tǒng)搜索到設(shè)備b的文件2,設(shè)備b可以在本機(jī)通過(guò)分布式文件系統(tǒng)搜索到設(shè)備a的文件1??梢?jiàn),本技術(shù)實(shí)施例提供的方案,無(wú)需將元數(shù)據(jù)或原文件同步至對(duì)端設(shè)備,大大減輕了數(shù)據(jù)傳輸和數(shù)據(jù)存儲(chǔ)的負(fù)擔(dān),業(yè)務(wù)應(yīng)用僅需接入簡(jiǎn)單的接口,即可通過(guò)分布式文件系統(tǒng)實(shí)現(xiàn)跨設(shè)備分布式搜索,無(wú)需再實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)同步和網(wǎng)絡(luò)訪問(wèn)等邏輯。
191.接下來(lái)通過(guò)兩個(gè)非限制示例對(duì)本技術(shù)實(shí)施例的實(shí)現(xiàn)流程進(jìn)行說(shuō)明。
192.圖3a和圖3b所示,為本技術(shù)一實(shí)施例提出的一種分布式數(shù)據(jù)搜索方法的實(shí)現(xiàn)流程圖。參見(jiàn)圖3a和圖3b所示,在進(jìn)行分布式數(shù)據(jù)搜索之前,需要完成索引文件在不同電子設(shè)備的共享,例如,設(shè)備a的索引文件共享給設(shè)備b,設(shè)備b的索引文件共享給設(shè)備a。下面結(jié)合圖3a和圖3b對(duì)對(duì)索引文件的共享流程、分布式搜索的流程和實(shí)現(xiàn)原理做詳細(xì)說(shuō)明。
193.先介紹索引文件的共享流程。索引文件的共享流程包括如下幾個(gè)步驟:
194.s310,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件。
195.本技術(shù)實(shí)施例中,提供索引接口給業(yè)務(wù)app調(diào)用,業(yè)務(wù)app包括但不限于:短信息,日歷,備忘錄,文件管理,聯(lián)系人等。需要說(shuō)明的是,更一般地,包括搜索功能的業(yè)務(wù)app都適用于本技術(shù)實(shí)施例提供的技術(shù)方案。
196.在本技術(shù)一實(shí)施例中,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件。
197.索引事件是指電子設(shè)備調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件的事件。索引事件通常由電子設(shè)備監(jiān)聽(tīng)到滿足觸發(fā)條件時(shí)自主觸發(fā),觸發(fā)條件包括但不限于電子設(shè)備增加新的元數(shù)據(jù)。新的元數(shù)據(jù)包括但不限于:電子
設(shè)備新拍攝的圖像或視頻,新接收的文件,包括短信息、音頻或音頻等。
198.當(dāng)電子設(shè)備監(jiān)聽(tīng)到建立索引事件,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析業(yè)務(wù)傳入的元數(shù)據(jù),建立元數(shù)據(jù)的索引文件。
199.s320,調(diào)用同步接口,通過(guò)同步接口對(duì)應(yīng)的同步組件,在不同電子設(shè)備間同步索引文件。
200.如前所述,在本技術(shù)實(shí)施例中,配置組件可以用于供用戶設(shè)置同步參數(shù)和/或同步策略等。
201.在本技術(shù)一實(shí)施例中,由用戶設(shè)置或系統(tǒng)默認(rèn)設(shè)置成自動(dòng)同步數(shù)據(jù)的情形。在這種情形下,不同電子設(shè)備建立了共享組或采用相同用戶賬號(hào)登錄,由于分布式搜索服務(wù)可以創(chuàng)建同步管道,因此,建立元數(shù)據(jù)的索引文件后,可以調(diào)用同步接口,通過(guò)同步接口對(duì)應(yīng)的同步組件,在不同電子設(shè)備間同步索引文件。
202.在本技術(shù)一實(shí)施例中,需要用戶確認(rèn)才可同步數(shù)據(jù)的情形。在這種情形下,不同電子設(shè)備建立了共享組或采用相同用戶賬號(hào)登錄,由于分布式搜索服務(wù)可以創(chuàng)建同步管道,因此,建立元數(shù)據(jù)的索引文件后,電子設(shè)備可以彈出用戶確認(rèn)界面,經(jīng)由用戶確認(rèn)可以共享數(shù)據(jù)后,可以調(diào)用同步接口,通過(guò)同步接口對(duì)應(yīng)的同步組件,在創(chuàng)建同步管道的不同電子設(shè)備間同步索引文件。
203.如圖3a所示,設(shè)備a和設(shè)備b建立了共享組或采用相同用戶賬號(hào)登錄,設(shè)備a的索引文件同步到設(shè)備b,設(shè)備b的索引文件同步到設(shè)備a,從而實(shí)現(xiàn)不同設(shè)備間的索引同步。
204.在本技術(shù)一實(shí)施例中,不同的電子設(shè)備接入網(wǎng)絡(luò)后,通過(guò)socket網(wǎng)絡(luò)通道傳輸索引文件,以實(shí)現(xiàn)索引文件在不同電子設(shè)備間的同步。
205.索引文件在不同電子設(shè)備間同步后,可以實(shí)現(xiàn)跨設(shè)備的分布式搜索。接著繼續(xù)結(jié)合圖3a和圖3b介紹分布式搜索的流程。
206.s330,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)搜索組件搜索同步索引庫(kù)得到搜索結(jié)果,所述同步索引庫(kù)包括本機(jī)的索引文件和其他電子設(shè)備的索引文件。
207.在本技術(shù)實(shí)施例中,搜索事件是指電子設(shè)備調(diào)用搜索接口,通過(guò)搜索接口對(duì)應(yīng)的搜索組件搜索同步索引庫(kù),得到搜索結(jié)果的事件。搜索事件通常由用戶在電子設(shè)備提供的搜索界面執(zhí)行預(yù)設(shè)操作而觸發(fā),預(yù)設(shè)操作包括輸入搜索條件的操作。搜索條件包括但不限于句子、關(guān)鍵字、和圖片等中的一種或多種的組合。搜索結(jié)果是指符合搜索條件的搜索結(jié)果。預(yù)設(shè)操作包括但不限于:觸屏操作、光標(biāo)控制操作、語(yǔ)音控制操作等中的一種或幾種的組合,其中,光標(biāo)控制操作包括通過(guò)鍵盤,和/或鼠標(biāo),和/或遙控桿,和/或軌跡球,和/或操作桿,和/或觸控面板等進(jìn)行的光標(biāo)控制操作。本技術(shù)實(shí)施例對(duì)觸發(fā)搜索事件的方式不予限定。
208.當(dāng)電子設(shè)備監(jiān)聽(tīng)到搜索事件,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)搜索組件搜索本地的同步索引庫(kù)。同步索引庫(kù)包括本機(jī)的索引文件和其他電子設(shè)備的索引文件。其他電子設(shè)備為除本機(jī)外的電子設(shè)備。由于本地的同步索引庫(kù)中包括本機(jī)的索引文件和其他電子設(shè)備的索引文件,因而可以在本機(jī)得到其他電子設(shè)備的搜索結(jié)果。
209.需要說(shuō)明的是,在本技術(shù)其他實(shí)施例中,如前所述,配置組件可以用于供用戶設(shè)置搜索參數(shù)和搜索策略等。用戶可以根據(jù)實(shí)際需求,通過(guò)配置組件設(shè)置搜索范圍,例如,搜索同步索引庫(kù)中的本機(jī)索引文件,或其他電子設(shè)備的索引文件,或既搜索本機(jī)索引文件又搜
索其他電子設(shè)備的索引文件等。本技術(shù)對(duì)此不予限制。
210.s340,顯示所述搜索結(jié)果。
211.搜索組件通過(guò)搜索同步索引庫(kù),得到符合搜索條件的搜索結(jié)果后,反饋搜索結(jié)果,通過(guò)顯示界面顯示該搜索結(jié)果。
212.本技術(shù)實(shí)施例提供的方案,一方面,無(wú)需將元數(shù)據(jù)或原文件同步至對(duì)端設(shè)備,只需要將索引文件同步到對(duì)端設(shè)備,且索引文件大小是原始數(shù)據(jù)的30%左右,大大提升了傳輸效率,也減輕了存儲(chǔ)負(fù)擔(dān)。另一方面,搜索時(shí)調(diào)用的是本機(jī)的接口,不涉及跨設(shè)備和跨網(wǎng)絡(luò),無(wú)需復(fù)雜的網(wǎng)絡(luò)訪問(wèn)等邏輯,過(guò)程簡(jiǎn)單,分布式搜索體驗(yàn)和本機(jī)完全一致,提升了效率,從而提升了用戶體驗(yàn)。再一方面,同步索引文件后,即使其他電子設(shè)備離線了,在本機(jī)也可以進(jìn)行分布式搜索離線設(shè)備的數(shù)據(jù)。
213.圖4a和圖4b所示,為本技術(shù)一實(shí)施例提出的另一種分布式數(shù)據(jù)搜索方法的實(shí)現(xiàn)流程圖。
214.圖4a和圖4b所示,為本技術(shù)一實(shí)施例提出的一種分布式數(shù)據(jù)搜索方法的實(shí)現(xiàn)流程圖。參見(jiàn)圖4a和圖4b所示,在進(jìn)行分布式數(shù)據(jù)搜索之前,需要完成索引文件在不同電子設(shè)備的共享,例如,設(shè)備a的索引文件共享給設(shè)備b,設(shè)備b的索引文件共享給設(shè)備a。下面結(jié)合圖4a和圖4b對(duì)索引文件的共享流程、分布式搜索的流程和實(shí)現(xiàn)原理做詳細(xì)說(shuō)明。
215.先介紹索引文件的共享流程。索引文件的共享流程包括如下幾個(gè)步驟:
216.s410,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件。
217.本技術(shù)實(shí)施例中,提供索引接口給業(yè)務(wù)app調(diào)用,業(yè)務(wù)app包括但不限于:短信息,日歷,備忘錄,文件管理,聯(lián)系人等。需要說(shuō)明的是,更一般地,包括搜索功能的業(yè)務(wù)app都適用于本技術(shù)實(shí)施例提供的技術(shù)方案。
218.在本技術(shù)一實(shí)施例中,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件。
219.索引事件是指電子設(shè)備調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析元數(shù)據(jù),并建立元數(shù)據(jù)的索引文件的事件。索引事件通常由電子設(shè)備監(jiān)聽(tīng)到滿足觸發(fā)條件時(shí)自主觸發(fā),觸發(fā)條件包括但不限于電子設(shè)備增加新的元數(shù)據(jù)。新的元數(shù)據(jù)是指歷史索引事件未覆蓋到的元數(shù)據(jù)。包括但不限于:電子設(shè)備新拍攝的圖像或視頻,新接收的文件,包括短信息、音頻或音頻等。
220.當(dāng)電子設(shè)備監(jiān)聽(tīng)到建立索引事件,響應(yīng)于監(jiān)聽(tīng)到的建立索引事件,調(diào)用索引接口,通過(guò)索引接口對(duì)應(yīng)的索引組件,解析業(yè)務(wù)傳入的元數(shù)據(jù),建立元數(shù)據(jù)的索引文件。
221.s420,若元數(shù)據(jù)屬于本地元數(shù)據(jù),則將元數(shù)據(jù)的索引文件存儲(chǔ)至本地索引庫(kù);若元數(shù)據(jù)屬于分布式元數(shù)據(jù),則將元數(shù)據(jù)的索引文件存儲(chǔ)至分布式文件系統(tǒng)。
222.本地元數(shù)據(jù)是指不需要同步索引文件的元數(shù)據(jù),分布式元數(shù)據(jù)是指需要同步索引文件的元數(shù)據(jù)。
223.如前所述,在本技術(shù)實(shí)施例中,配置組件可以用于供用戶設(shè)置同步對(duì)象和/或存儲(chǔ)位置等。因而,在本技術(shù)實(shí)施例中,通過(guò)用戶的設(shè)置或系統(tǒng)的默認(rèn)設(shè)置等確定同步對(duì)象,進(jìn)而可以確定元數(shù)據(jù)是屬于本地元數(shù)據(jù),還是屬于分布式元數(shù)據(jù),若元數(shù)據(jù)屬于本地元數(shù)據(jù),則將元數(shù)據(jù)的索引文件存儲(chǔ)至本地索引庫(kù);若元數(shù)據(jù)屬于分布式元數(shù)據(jù),則將元數(shù)據(jù)的索
引文件存儲(chǔ)至分布式文件系統(tǒng)。
224.分布式文件系統(tǒng)是指文件系統(tǒng)管理的物理存儲(chǔ)資源不一定直接連接在本地節(jié)點(diǎn)上,而是通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)與節(jié)點(diǎn)(可簡(jiǎn)單的理解為一臺(tái)計(jì)算機(jī))相連。分布式文件系統(tǒng)的設(shè)計(jì)基于客戶機(jī)和服務(wù)器模式。一個(gè)典型的網(wǎng)絡(luò)可能包括多個(gè)供多用戶訪問(wèn)的服務(wù)器。另外,對(duì)等特性允許一些系統(tǒng)扮演客戶機(jī)和服務(wù)器的雙重角色。例如,用戶可以發(fā)布(或稱為共享或同步)一個(gè)允許其他客戶機(jī)訪問(wèn)的目錄,一旦被訪問(wèn),這個(gè)目錄對(duì)客戶機(jī)來(lái)說(shuō)就像使用本地驅(qū)動(dòng)器一樣。
225.在本技術(shù)一實(shí)施例中,在分布式文件系統(tǒng)中建立分布式索引庫(kù),分布式索引庫(kù)包括本機(jī)的分布式索引文件。分布式索引文件即需要同步的元數(shù)據(jù)的索引文件。
226.圖4a和圖4b所示實(shí)施例,與圖3a和圖3b所示實(shí)施例不同之處在于,不再單獨(dú)實(shí)現(xiàn)索引文件的同步,也就是說(shuō),不需要通過(guò)同步組件來(lái)單獨(dú)同步索引文件,而是依賴分布式文件系統(tǒng)實(shí)現(xiàn)不同電子設(shè)備間索引文件的共享。
227.如前所述,配置組件還可以用于供用戶設(shè)置同步方式等。
228.在本技術(shù)一實(shí)施例中,由用戶設(shè)置或系統(tǒng)默認(rèn)設(shè)置成自動(dòng)同步分布式元數(shù)據(jù)的情形。在這種情形下,建立元數(shù)據(jù)的索引文件后,若元數(shù)據(jù)屬于分布式元數(shù)據(jù),則將元數(shù)據(jù)的索引文件存儲(chǔ)至分布式文件系統(tǒng)。
229.在本技術(shù)一實(shí)施例中,需要用戶確認(rèn)才可同步分布式元數(shù)據(jù)的情形。在這種情形下,建立元數(shù)據(jù)的索引文件后,若元數(shù)據(jù)屬于分布式元數(shù)據(jù),電子設(shè)備可以彈出用戶確認(rèn)界面,經(jīng)由用戶確認(rèn)可以共享分布式元數(shù)據(jù)后,則將元數(shù)據(jù)的索引文件存儲(chǔ)至分布式文件系統(tǒng)。
230.分布式索引文件存儲(chǔ)至分布式文件系統(tǒng)后,電子設(shè)備接入網(wǎng)絡(luò),可以通過(guò)分布式文件系統(tǒng)實(shí)現(xiàn)跨設(shè)備訪問(wèn)。接著繼續(xù)結(jié)合圖4a和圖4b介紹分布式搜索的流程。
231.s430,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)搜索組件搜索本地索引庫(kù)和/或分布式文件系統(tǒng)得到搜索結(jié)果。
232.在本技術(shù)實(shí)施例中,搜索事件是指電子設(shè)備調(diào)用搜索接口,通過(guò)搜索接口對(duì)應(yīng)的搜索組件搜索本地索引庫(kù)和/或分布式索引庫(kù),得到搜索結(jié)果的事件。
233.搜索事件通常由用戶在電子設(shè)備提供的搜索界面執(zhí)行預(yù)設(shè)操作而觸發(fā),預(yù)設(shè)操作包括輸入搜索條件的操作。搜索條件包括但不限于句子、關(guān)鍵字、和圖片等中的一種或多種的組合。搜索結(jié)果是指符合搜索條件的搜索結(jié)果。預(yù)設(shè)操作包括但不限于:觸屏操作、光標(biāo)控制操作、語(yǔ)音控制操作等中的一種或幾種的組合,其中,光標(biāo)控制操作包括通過(guò)鍵盤,和/或鼠標(biāo),和/或遙控桿,和/或軌跡球,和/或操作桿,和/或觸控面板等進(jìn)行的光標(biāo)控制操作。本技術(shù)實(shí)施例對(duì)觸發(fā)搜索事件的方式不予限定。
234.當(dāng)電子設(shè)備監(jiān)聽(tīng)到搜索事件,響應(yīng)于監(jiān)聽(tīng)到的搜索事件,調(diào)用搜索接口,通過(guò)搜索組件搜索本地索引庫(kù)和/或分布式文件系統(tǒng),得到搜索結(jié)果。
235.需要說(shuō)明的是,如前所述,可以通過(guò)配置組件供用戶設(shè)置搜索對(duì)象,搜索對(duì)象可以為本地索引庫(kù)和/或分布式文件系統(tǒng)。
236.分布式索引文件存儲(chǔ)至分布式文件系統(tǒng)后,若搜索對(duì)象包括分布式文件系統(tǒng),需要電子設(shè)備接入網(wǎng)絡(luò),才可以通過(guò)分布式文件系統(tǒng)實(shí)現(xiàn)跨設(shè)備訪問(wèn),不然只能在分布式文件系統(tǒng)訪問(wèn)本機(jī)的分布式索引文件,而無(wú)法訪問(wèn)其他電子設(shè)備的分布式索引文件。
237.s440,顯示所述搜索結(jié)果。
238.搜索組件得到符合搜索條件的搜索結(jié)果后,反饋搜索結(jié)果,通過(guò)顯示界面顯示該搜索結(jié)果。
239.本技術(shù)實(shí)施例提供的方案,一方面,無(wú)需將元數(shù)據(jù)或原文件同步至對(duì)端設(shè)備,也無(wú)需將索引文件同步到對(duì)端設(shè)備,大大減輕了數(shù)據(jù)傳輸和數(shù)據(jù)存儲(chǔ)的負(fù)擔(dān)。另一方面,搜索時(shí)調(diào)用本機(jī)的接口即可實(shí)現(xiàn)跨設(shè)備分布式搜索,無(wú)需實(shí)現(xiàn)復(fù)雜的網(wǎng)絡(luò)訪問(wèn)等邏輯,過(guò)程簡(jiǎn)單,分布式搜索體驗(yàn)和本機(jī)完全一致,提升了效率,從而提升了用戶體驗(yàn)。
240.本技術(shù)實(shí)施例還提供了一種電子設(shè)備,包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器中并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí),使得所述電子設(shè)備可實(shí)現(xiàn)上述各個(gè)方法實(shí)施例中的步驟。
241.本技術(shù)實(shí)施例還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)可實(shí)現(xiàn)上述各個(gè)方法實(shí)施例中的步驟。
242.本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)程序產(chǎn)品,當(dāng)計(jì)算機(jī)程序產(chǎn)品在電子設(shè)備上運(yùn)行時(shí),使得電子設(shè)備執(zhí)行上述各個(gè)方法實(shí)施例中的步驟。
243.基于這樣的理解,本技術(shù)實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的計(jì)算機(jī)程序可存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該計(jì)算機(jī)程序在被處理器執(zhí)行時(shí),可實(shí)現(xiàn)上述各個(gè)方法實(shí)施例的步驟。其中,所述計(jì)算機(jī)程序包括計(jì)算機(jī)程序代碼,所述計(jì)算機(jī)程序代碼可以為源代碼形式、對(duì)象代碼形式、可執(zhí)行文件或某些中間形式等。所述計(jì)算機(jī)可讀介質(zhì)至少可以包括:能夠?qū)⒂?jì)算機(jī)程序代碼攜帶到拍照裝置/電子設(shè)備的任何實(shí)體或裝置、記錄介質(zhì)、計(jì)算機(jī)存儲(chǔ)器、只讀存儲(chǔ)器(read-only memory,rom)、隨機(jī)存取存儲(chǔ)器(random access memory,ram)、電載波信號(hào)、電信信號(hào)以及軟件分發(fā)介質(zhì)。例如u盤、移動(dòng)硬盤、磁碟或者光盤等。在某些司法管轄區(qū),根據(jù)立法和專利實(shí)踐,計(jì)算機(jī)可讀介質(zhì)不可以是電載波信號(hào)和電信信號(hào)。
244.在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒(méi)有詳述或記載的部分,可以參見(jiàn)其它實(shí)施例的相關(guān)描述。
245.本領(lǐng)域普通技術(shù)人員可以意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來(lái)實(shí)現(xiàn)。這些功能究竟以硬件還是軟件方式來(lái)執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來(lái)使用不同方法來(lái)實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本技術(shù)的范圍。
246.在本技術(shù)所提供的實(shí)施例中,應(yīng)該理解到,所揭露的電子設(shè)備和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的電子設(shè)備實(shí)施例僅僅是示意性的。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通訊連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通訊連接,可以是電性,機(jī)械或其它的形式。
247.所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。
248.以上所述實(shí)施例僅用以說(shuō)明本技術(shù)的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)
施例對(duì)本技術(shù)進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本技術(shù)各實(shí)施例技術(shù)方案的精神和范圍,均應(yīng)包含在本技術(shù)的保護(hù)范圍之內(nèi)。