基于云的串流數(shù)據(jù)接收機(jī)和保存程序的制作方法
【專利說明】
【背景技術(shù)】
[0001 ] 企業(yè)必須處理大量的數(shù)據(jù)從而作出決策和取得成功。數(shù)據(jù)通常以諸如報告的形式提供。為了建立有意義的報告,企業(yè)依賴于多租戶SAAS分析公司。建立和提供有意義的分析通常需要大量的資源,以及具有很高的成本。
[0002]建立報告通常需要獲得數(shù)據(jù)、將數(shù)據(jù)轉(zhuǎn)換成有意義的格式,并對有意義的數(shù)據(jù)進(jìn)行分析來生成報告。數(shù)據(jù)存儲、轉(zhuǎn)換和處理需要數(shù)據(jù)模式以存儲數(shù)據(jù)、轉(zhuǎn)換數(shù)據(jù)和處理數(shù)據(jù)。這些任務(wù)通常通過管理員手動執(zhí)行。目前,沒有任何基于云的解決方案連接數(shù)據(jù)源并連續(xù)地為數(shù)據(jù)接收機(jī)供給原始數(shù)據(jù)以外的數(shù)據(jù)。
【發(fā)明內(nèi)容】
[0003]本系統(tǒng)接收串流原始數(shù)據(jù)并將上下文插入原始數(shù)據(jù)中。上下文原始數(shù)據(jù)可以被分成小批并被傳輸?shù)綌?shù)據(jù)接收機(jī)和保存程序。原始數(shù)據(jù)可以包括上下文信息以及父子信息以幫助保存數(shù)據(jù)。上下文可以用來在不分析數(shù)據(jù)的情況下將數(shù)據(jù)放置在存儲區(qū)中,由此在存儲數(shù)據(jù)批的同時節(jié)省時間和資源。
[0004]在一個實施例中,用于串流數(shù)據(jù)的方法可以是通過從多個應(yīng)用程序接收原始串流數(shù)據(jù)。上下文數(shù)據(jù)可以與一批原始數(shù)據(jù)關(guān)聯(lián)。該一批原始數(shù)據(jù)和對應(yīng)的上下文數(shù)據(jù)其后可以被傳輸?shù)竭h(yuǎn)程服務(wù)器。
[0005]在一個實施例中,用于通信導(dǎo)航數(shù)據(jù)的方法可以包括存儲器、處理器、和一個或多個存儲在存儲器中I可以被處理器執(zhí)行的模塊。模塊可以被執(zhí)行以從多個應(yīng)用程序接收原始串流數(shù)據(jù)、將上下文數(shù)據(jù)關(guān)聯(lián)到一批原始數(shù)據(jù)、且將一批原始數(shù)據(jù)和對應(yīng)的上下文數(shù)據(jù)傳輸?shù)竭h(yuǎn)程服務(wù)器。
【附圖說明】
[0006]圖1是示例性數(shù)據(jù)串流系統(tǒng)的框圖。
[0007]圖2是接收和保存數(shù)據(jù)的示例性方法。
[0008]圖3是用于將上下文與原始數(shù)據(jù)關(guān)聯(lián)的示例性方法。
[0009]圖4是用于保存數(shù)據(jù)的示例性方法。
[0010]圖5是用于執(zhí)行本技術(shù)的裝置的框圖。
【具體實施方式】
[0011]本系統(tǒng)接收串流原始數(shù)據(jù)并將上下文插入到原始數(shù)據(jù)中。上下文數(shù)據(jù)可以被分成小批并被傳輸?shù)綌?shù)據(jù)接收機(jī)和保存程序。原始數(shù)據(jù)可以包括上下文信息以及父子信息,以幫助保存數(shù)據(jù)。上下文可以用于在不分析數(shù)據(jù)的情況下將數(shù)據(jù)放置在存儲區(qū)中,由此節(jié)省存儲數(shù)據(jù)批的時間和資源。
[0012]批可以是租戶特定的、應(yīng)用程序特定的,并分組為上下文感知的子組,以用于并行處理。上下文存儲在記錄中,并用批來處理,從而處理數(shù)據(jù)的應(yīng)用程序不需要任何有關(guān)批數(shù)據(jù)的智能。上下文允許對多個應(yīng)用程序和多個租戶進(jìn)行快速的、無狀態(tài)的處理以及進(jìn)行完全的數(shù)據(jù)隔絕。
[0013]上下文還提供對記錄組的并行保存。本系統(tǒng)不需要處理數(shù)據(jù)來確定如何存儲數(shù)據(jù)(例如,如何在存儲區(qū)中存數(shù)據(jù))。而是,上下文以記錄格式存儲,例如用表格來存儲,并且包括具有上下文數(shù)據(jù)和批數(shù)據(jù)的父子數(shù)據(jù)的模式元數(shù)據(jù)。沒有記錄到模式的動態(tài)映射。目標(biāo)模式可以基于租戶信息和應(yīng)用程序信息而被決定,并且可以高速動態(tài)地被決定。因此,如果記錄A和記錄B同時從租戶A和租戶B達(dá)到,則系統(tǒng)會基于租戶和應(yīng)用程序信息動態(tài)地決定記錄的數(shù)據(jù)源。記錄A可以保存在Hadoop/HBase數(shù)據(jù)存儲單元中,而記錄B可以存儲在MySQL中。因此,本系統(tǒng)不僅是無模式的(schema-agnostic),而且通過動態(tài)數(shù)據(jù)資源解決方案支持多邊(polygot)保存。
[0014]一個或多個實施例可以使用全部或部分如下步驟。可以從數(shù)據(jù)提供程序/連接器(諸如,基于云的數(shù)據(jù)集成器)接收數(shù)據(jù)流初始消息。在接收到初始消息時,系統(tǒng)可以建立上下文(Tenantlnfo、Applnfo、Timinglnfo、Batchlnfo等)并將上下文信息發(fā)送回數(shù)據(jù)提供程序,然后將上下文插入原始數(shù)據(jù)中,從而讓數(shù)據(jù)變得智能。上下文感知的原始數(shù)據(jù)可以被分成小批及并行傳輸?shù)綌?shù)據(jù)接收機(jī)和保存程序。原始數(shù)據(jù)可以包括附加的上下文信息以及父子信息以協(xié)助保存數(shù)據(jù)。在一些實施例中,本系統(tǒng)可以基于串流數(shù)據(jù)自動發(fā)現(xiàn)并創(chuàng)建模式。可以使用上下文來將數(shù)據(jù)放置在存儲區(qū)中而不分析數(shù)據(jù),由此在存儲數(shù)據(jù)批的同時節(jié)省時間和資源。憑借上下文信息,數(shù)據(jù)可以自動地被諸如租戶信息、應(yīng)用程序信息、批信息和定時信息的參數(shù)共享,由此節(jié)省保存開銷。在一些實施例中,本系統(tǒng)可以完全無狀態(tài)的,并且可以不知道什么資源在發(fā)送什么數(shù)據(jù)以及什么時候和如何關(guān)聯(lián)數(shù)據(jù)組,以及數(shù)據(jù)存儲在哪里。
[0015]在實施例中,數(shù)據(jù)可以包括用于指示租戶、應(yīng)用程序、位置和與數(shù)據(jù)的關(guān)系的信息。在該上下文中,數(shù)據(jù)可以是租戶感知的、應(yīng)用程序感知的、位置感知的、和關(guān)系感知的。在一些實施例中,在數(shù)據(jù)流的一些階段或在失敗事件中(1>流起始,2>發(fā)送數(shù)據(jù),3>流終止)集成服務(wù)器可以發(fā)送流終止信號(成功/失敗),從而本系統(tǒng)可以對特定批、應(yīng)用程序和租戶更新上下文狀態(tài)。事實上,上下文信息的歷史可以被存儲到分開的元數(shù)據(jù)存儲單元中,可以在任何失敗的集成過程在重新啟動后將會再次使用最后的成功批的上下文信息和將會從正確的時間窗獲取數(shù)據(jù)。上下文信息還包括滑動時間窗,從而時間窗內(nèi)任何過去的批將來可以被重演,以用于從源或目標(biāo)保存存儲單元進(jìn)行數(shù)據(jù)恢復(fù)。獨(dú)立探測上下文元數(shù)據(jù)可以在不影響主串流數(shù)據(jù)收集和保存流的情況下實現(xiàn)主動的錯誤發(fā)現(xiàn)、數(shù)據(jù)使用發(fā)現(xiàn)、彈性存儲增加、自動升高處理帶寬。基于上下文信息的自動存儲提供和模式發(fā)現(xiàn)可以將進(jìn)來的數(shù)據(jù)串流自動路由或重新路由到數(shù)據(jù)存儲單元中。
[0016]可擴(kuò)展的、非侵入的基于協(xié)議的技術(shù)可以被實現(xiàn)為打理多種類型的業(yè)務(wù)場景。這些場景包括將不同的業(yè)務(wù)應(yīng)用程序、即時的業(yè)務(wù)分析和可視化、混搭來自不同資源的數(shù)據(jù)、實時業(yè)務(wù)提醒、業(yè)務(wù)決策制定和預(yù)測分析、基于云的業(yè)務(wù)數(shù)據(jù)備份和恢復(fù)集成起來,并通過利用本技術(shù)的特征來為不同的業(yè)務(wù)數(shù)據(jù)管理數(shù)據(jù)倉庫。利用的特征可以包括(插入數(shù)據(jù)中的)上下文智能、完整的數(shù)據(jù)隔離、數(shù)據(jù)分享、數(shù)據(jù)擴(kuò)展、上下文回滾、上下文備份、排序、自動重啟、數(shù)據(jù)重演(時間機(jī)器)、主動的錯誤恢復(fù)、上下文查看(應(yīng)用程序特定/租戶特定/批特征/時間范圍特定的)、上下文分析(租戶/應(yīng)用程序/對象的數(shù)據(jù)消耗模式)、和自動模式生成。
[0017]圖1是示例性數(shù)據(jù)串流系統(tǒng)的框圖。圖1的系統(tǒng)包括租戶服務(wù)器110和115、租戶地區(qū)(clime) 120、集成服務(wù)器125、數(shù)據(jù)收集服務(wù)器(DCS) 130、分級數(shù)據(jù)庫135、提取-變換-加載(ETL)服務(wù)器140、數(shù)據(jù)倉庫數(shù)據(jù)庫145、分析服務(wù)器150和客戶端裝置150。每個裝置110-155可以通過網(wǎng)絡(luò)(未示出)彼此通信。網(wǎng)絡(luò)可以實施為個人網(wǎng)絡(luò)、公共網(wǎng)絡(luò)、WiFi網(wǎng)絡(luò)、WAN、LAN、內(nèi)聯(lián)網(wǎng)、因特網(wǎng)、蜂窩網(wǎng)絡(luò)或這些網(wǎng)絡(luò)的組合。
[0018]服務(wù)器110和115及客戶端裝置120的每一者可以在多租戶中與租戶(客戶組織)關(guān)聯(lián)。多租戶中的每個租戶可以包括一個或多個服務(wù)器和客戶端裝置。每個服務(wù)器和客戶端可以包括要由數(shù)據(jù)收集服務(wù)器130經(jīng)由集成服務(wù)器125收集的數(shù)據(jù)??蛻?20可以實施為臺式、膝上、筆記本、平板電腦、智能手機(jī)或一些其他的計算裝置。
[0019]在一些實施例中,可以從單個接入點(diǎn)(諸如多租戶SaaS云網(wǎng)站)從“云”(例如,從通過網(wǎng)絡(luò)提供的資源)無縫提供本技術(shù),以及可以從任何類型的客戶端裝置體驗整個流。該獨(dú)特的方法為用于實現(xiàn)數(shù)據(jù)集成、數(shù)據(jù)收集和保存、數(shù)據(jù)分析和可視化的不同類型的軟件和硬件節(jié)省了多種類型的基建成本。
[0020]在實施例中,集成服務(wù)器125可以與不同的SAAS供應(yīng)商通信,不管該SAAS供應(yīng)商是從云還是從特定的機(jī)器提供,以及集成服務(wù)器125可以與數(shù)據(jù)收集服務(wù)器130通信。集成服務(wù)器可以包括一個或多個用于實施本技術(shù)的各方面的模塊。插入模塊126可以將與數(shù)據(jù)批相關(guān)的上下文數(shù)據(jù)和父子數(shù)據(jù)插入表格中。上下文數(shù)據(jù)可以包括諸如應(yīng)用程序ID、批ID、租戶ID的信息,并且可以包括用于獲取數(shù)據(jù)的時間滑動窗(諸如時間范圍)。包括上下文的批數(shù)據(jù)可以變成應(yīng)用程序感知、租戶感知、和上下文感知的。注入模塊也可以插入父子信息,諸如當(dāng)前的批、批子組或記錄是否是另一個批、子組或記錄的下一代或上一代