精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當(dāng)前位置:大數(shù)據(jù)數(shù)據(jù)分析 → 正文

基于Hadoop的平臺(tái)管理的大數(shù)據(jù)建立索引的方法和指南

責(zé)任編輯:editor007 |來源:企業(yè)網(wǎng)D1Net  2014-12-12 17:35:53 本文摘自:編程入門

探查大數(shù)據(jù)和傳統(tǒng)企業(yè)數(shù)據(jù)是許多組織的共同需求。在本文中,我們概述了為通過基于 Hadoop 的平臺(tái)管理的大數(shù)據(jù)建立索引的方法和指南,以便將這些數(shù)據(jù)用于數(shù)據(jù)發(fā)現(xiàn)解決方案。具體來講,我們將介紹如何將存儲(chǔ)在 IBM 的 InfoSphere BigInsights(一個(gè)基于 Hadoop 的平臺(tái))中的數(shù)據(jù)推送到 InfoSphere Data Explorer。InfoSphere Data Explorer 是一個(gè)復(fù)雜的工具,支持業(yè)務(wù)用戶探查并組合來自多個(gè)企業(yè)和外部數(shù)據(jù)源的數(shù)據(jù)。

簡介

如果您關(guān)注過許多圍繞大數(shù)據(jù)的早期案例分析,您可能相信 “您根本不知道您不知道什么” 的說法。確實(shí),大數(shù)據(jù)應(yīng)用程序常常專注于從平時(shí)可能出于多種原因而導(dǎo)致被丟棄或忽略的數(shù)據(jù)中收集業(yè)務(wù)洞察。公司越來越多地希望開發(fā)一個(gè)全面的信息管理戰(zhàn) 略,這個(gè)戰(zhàn)略涉及的不僅僅是簡單地探查或分析大數(shù)據(jù)。具體來講,他們希望將大數(shù)據(jù)與現(xiàn)有數(shù)據(jù)系統(tǒng)(包括關(guān)系 DBMS、企業(yè)內(nèi)容管理系統(tǒng)、數(shù)據(jù)倉庫等)一起整合到其總體信息管理戰(zhàn)略中。

本文分析該挑戰(zhàn)的一個(gè)方面,列出了為大數(shù)據(jù)和傳統(tǒng)數(shù)據(jù)源建立索引的一個(gè)架構(gòu)和方法,還提供了基于 Web 的接口,以發(fā)現(xiàn)這些不同數(shù)據(jù)源中的新洞察。具體來講,它描述了 Data Explorer(一個(gè)數(shù)據(jù)發(fā)現(xiàn)平臺(tái))如何為 InfoSphere BigInsights 管理的數(shù)據(jù)建立索引,支持將大數(shù)據(jù)的持久化格式與現(xiàn)有的企業(yè)數(shù)據(jù)相結(jié)合。Data Explorer 和 BigInsights 都是 IBM 的大數(shù)據(jù)平臺(tái)的重要組件,所以我們首先概述此平臺(tái)和這兩個(gè)重要產(chǎn)品。

IBM 的大數(shù)據(jù)平臺(tái)概述

IBM 的大數(shù)據(jù)平臺(tái)旨在幫助組織探查、分析和管理豐富的數(shù)據(jù),包括流數(shù)據(jù)、傳統(tǒng)業(yè)務(wù)數(shù)據(jù),以及以前很難合并到企業(yè)的商業(yè)智能和分析平臺(tái)中的 “非傳統(tǒng)” 數(shù)據(jù)或輔助數(shù)據(jù)。首先讓我們簡要了解一下這個(gè)平臺(tái),然后再重點(diǎn)介紹兩個(gè)重要組件:InfoSphere Data Explorer 和 InfoSphere BigInsights。

圖 1 描繪了 IBM 的大數(shù)據(jù)平臺(tái)的架構(gòu),它在功能的豐富性上不同于其他商用產(chǎn)品。從上到下,您會(huì)看到 IBM 的這個(gè)平臺(tái)包含豐富的功能和技術(shù),能夠可視化和發(fā)現(xiàn)各種數(shù)據(jù)源中的洞察,開發(fā)分析應(yīng)用程序,管理您的環(huán)境。Data Explorer 提供了 IBM 的大數(shù)據(jù)平臺(tái)的重要可視化和發(fā)現(xiàn)功能,所以稍后我們會(huì)更詳細(xì)地討論該組件。圖 1 中所示的加速器是 IBM 提供的工具包,包含數(shù)十個(gè)預(yù)先構(gòu)建的軟件工件,以幫助公司快速部署分析社交媒體和機(jī)器數(shù)據(jù)(比如日志記錄)的解決方案。3 個(gè)數(shù)據(jù)處理引擎使組織能夠有效地應(yīng)對大數(shù)據(jù)內(nèi)在的多樣性、大量性和高速性。這些引擎包含一個(gè)基于 Hadoop 的系統(tǒng)(BigInsights,我們稍后將詳細(xì)探討它)、一個(gè)流計(jì)算平臺(tái) (InfoSphere Streams) 和一個(gè)數(shù)據(jù)倉庫平臺(tái)(比如 PureData for Analytics 或 DB2)。最后,IBM 的大數(shù)據(jù)平臺(tái)還包含與其他流行企業(yè)軟件的連接,包括關(guān)系 DBMS、提取/轉(zhuǎn)換/加載平臺(tái)、商業(yè)智能工具、內(nèi)容管理系統(tǒng)等。

圖 1. IBM 的大數(shù)據(jù)平臺(tái)架構(gòu)

InfoSphere BigInsights 概述

InfoSphere BigInsights 是 IBM 持久化和分析眾多形式的大數(shù)據(jù)的平臺(tái)。基于開源 Apache Hadoop 項(xiàng)目,BigInsights 旨在幫助公司發(fā)現(xiàn)和分析隱藏在海量數(shù)據(jù)中的業(yè)務(wù)洞察,這些數(shù)據(jù)在平時(shí)可能被忽略或丟棄,因?yàn)槭褂脗鹘y(tǒng)方法來處理這些數(shù)據(jù)有些不切實(shí)際或太困難。這些數(shù)據(jù)的 示例包括日志記錄、單擊流、社交媒體數(shù)據(jù)、新聞源、電子郵件、電子傳感器輸出,甚至一些事務(wù)數(shù)據(jù)。

為了幫助企業(yè)高效地從這些類型的數(shù)據(jù)獲取價(jià)值,BigInsights Enterprise Edition 包含一些來自 Hadoop 生態(tài)系統(tǒng)的開源項(xiàng)目,以及 IBM 開發(fā)的一些增強(qiáng)和擴(kuò)展了這個(gè)開源軟件的價(jià)值的技術(shù)。如 圖 2 所示,這些技術(shù)涵蓋范圍從應(yīng)用程序加速器到分析工具、開發(fā)工具、平臺(tái)改進(jìn)和企業(yè)軟件集成。例如,BigInsights 客戶可使用復(fù)雜的文本分析功能從文檔、電子郵件和消息中提取內(nèi)容和上下文。應(yīng)用程序開發(fā)人員可采用基于 Eclipse 的向?qū)砑铀僮远x Java MapReduce、Jaql、Hive、Pig 和文本分析應(yīng)用程序的開發(fā)。管理員可通過一個(gè)集成的 Web 控制臺(tái)管理和監(jiān)視其 BigInsights 環(huán)境,業(yè)務(wù)用戶可通過基于 Web 的目錄來啟動(dòng) IBM 提供的或自行開發(fā)的應(yīng)用程序。

在本文中,我們將重點(diǎn)介紹 BigInsights 特性的一個(gè)子集,比如文本分析和應(yīng)用程序生命周期工具。

圖 2. InfoSphere BigInsights 架構(gòu)

InfoSphere Data Explorer 概述

InfoSphere Data Explorer 允許您為來自不同數(shù)據(jù)來源的大量結(jié)構(gòu)化、非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)建立索引。它還提供了構(gòu)建大數(shù)據(jù)探查應(yīng)用程序和 360 度信息應(yīng)用程序的能力。InfoSphere Data Explorer 允許用戶根據(jù)存儲(chǔ)在不同的內(nèi)部和外部數(shù)據(jù)存儲(chǔ)庫中的龐大數(shù)據(jù)集合,創(chuàng)建不同實(shí)體(比如客戶、產(chǎn)品、事件、合作伙伴等)的相關(guān)信息的視圖,而無需移動(dòng)數(shù)據(jù)。

當(dāng)今企業(yè)的一個(gè)重要挑戰(zhàn)是,用戶無法快速找到解決業(yè)務(wù)問題或完成一項(xiàng)任務(wù)所需的信息。通常,數(shù)據(jù)分散在不同的系統(tǒng)中,以便支持不同組織管理的具體應(yīng) 用程序。此外,新數(shù)據(jù)來源逐漸成為關(guān)鍵的資源,人們可能需要在日常工作和制定重要決策時(shí)考慮它們,比如社交媒體、來自移動(dòng)設(shè)備的源、Twitter 等。

這方面的一個(gè)示例是,聯(lián)系人信息、購買的產(chǎn)品、開具的服務(wù)票據(jù)和保修信息等客戶信息都存儲(chǔ)在不同的業(yè)務(wù)應(yīng)用程序中,比如 CRM、支持票據(jù)系統(tǒng)、市場門戶等。想象一位希望聯(lián)系客戶以進(jìn)行追加銷售的銷售人員。他必須先登錄 10 個(gè)應(yīng)用程序來匯總客戶的信息,或者與 5 個(gè)人溝通來理解所有這些信息。

Data Explorer 解決了這個(gè)重要難題。信息存儲(chǔ)在許多不同的系統(tǒng)和筒倉中,而用戶需要采用一致的方式來查看所有數(shù)據(jù),快速導(dǎo)航到與他們最相關(guān)的信息。這里的挑戰(zhàn)是:在員工最需要制定決策的信息地方提供該信息。

圖 3. InfoSphere Data Explorer 架構(gòu)

BigInsights 和 Data Explorer 的集成

BigInsights 和 Data Explorer 彼此互補(bǔ),使組織能夠拓寬他們能以一種一致、連貫的方式分析的信息范圍。例如,BigInsights 常常用于存儲(chǔ)非結(jié)構(gòu)化和半結(jié)構(gòu)化內(nèi)容。此外,探查和導(dǎo)航內(nèi)容的需求變得更為緊迫,這常常表現(xiàn)在搜索式界面中。這使得信息更容易讓業(yè)務(wù)線用戶使用。例如,如 果您存儲(chǔ)了機(jī)器數(shù)據(jù),最終用戶可能希望導(dǎo)航內(nèi)容日期,尋找特定的機(jī)器故障類型,等等。另一方面,如果存儲(chǔ)社交數(shù)據(jù),最終用戶可能希望搜索與產(chǎn)品相關(guān)的用戶 態(tài)度。所有這些都需要一種富索引功能。除了索引之外,Data Explorer 還可提供了一種富用戶體驗(yàn),合并來自 BigInsights 的內(nèi)容和其他企業(yè)內(nèi)容,以實(shí)現(xiàn)全面的大數(shù)據(jù)探查。

示例場景

要實(shí)現(xiàn)這一架構(gòu),我們需要執(zhí)行一些步驟。這里總結(jié)了這些步驟,稍后會(huì)更詳細(xì)地分析它們:

收集和準(zhǔn)備您的社交媒體數(shù)據(jù)以供分析

BigInsights 通過預(yù)先構(gòu)建的應(yīng)用程序提供各種不同的數(shù)據(jù)收集機(jī)制。當(dāng)基于文本的社交媒體帖子位于 BigInsights 中時(shí),您需要提取感興趣的信息,以便可在以后輕松地為它們建立索引和探查它們。BigInsights 提供了復(fù)雜的文本分析功能,幫助您提取感興趣的實(shí)體,包括產(chǎn)品、人員和對產(chǎn)品的態(tài)度。

建模感興趣的業(yè)務(wù)實(shí)體和關(guān)系

一個(gè)應(yīng)用程序可快速啟動(dòng)此過程,為 Data Explorer 指定一種實(shí)體模型來幫助設(shè)置我們稍后將展示的各種配置選項(xiàng)。此實(shí)體模型對您的應(yīng)用程序場景的總體成功至關(guān)重要。

該實(shí)體模型將捕獲一組重要的業(yè)務(wù)實(shí)體和關(guān)系,您的業(yè)務(wù)分析師將有興趣在 Data Explorer 中搜索、發(fā)現(xiàn)和探查它們。因此,一種有效的實(shí)體模型設(shè)計(jì)是理解業(yè)務(wù)分析師希望如何搜索和探查哪些信息的前提。

該實(shí)體模型將捕獲您的 Data Explorer 集群的一組重要配置,以反映您的容量和部署計(jì)劃。稍后,您將看到我們?nèi)绾尾东@產(chǎn)品和 tweet 作為感興趣的關(guān)鍵業(yè)務(wù)實(shí)體,進(jìn)一步指定這些實(shí)體之間的關(guān)系,并提供 Data Explorer 集群的拓?fù)浣Y(jié)構(gòu)部署信息。

開發(fā)您的第一個(gè)索引應(yīng)用程序,在 Data Explorer 中為提取的社交數(shù)據(jù)建立索引

您可以利用 BigInsights 應(yīng)用程序開發(fā)生命周期開發(fā)您的索引應(yīng)用程序,該生命周期使您能夠以極少的工作創(chuàng)建、發(fā)布和部署您的應(yīng)用程序。部署之后,從您的社交數(shù)據(jù)中提取的實(shí)體信息將 被推送到一個(gè) Data Explorer 搜索集合中,可使用 Data Explorer 分面搜索 (faceted search) 特性進(jìn)一步探查這些信息,使用它們構(gòu)建一個(gè) 360 度視圖應(yīng)用程序。

使用 Data Explorer 實(shí)現(xiàn)可視化

Data Explorer Application Builder 提供了一種途徑來構(gòu)建一個(gè)應(yīng)用程序,將分散在不同系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起。在我們的示例場景中,一位產(chǎn)品計(jì)劃主管可能關(guān)心一個(gè)產(chǎn)品或產(chǎn)品家族,所以一個(gè) 360 度視圖

在 BigInsights 中收集和準(zhǔn)備您的社交媒體數(shù)據(jù)以供分析

BigInsights 通過預(yù)先構(gòu)建的應(yīng)用程序(比如 Boardreader 應(yīng)用程序)提供了眾多數(shù)據(jù)收集機(jī)制。

圖 4. Boardreader 應(yīng)用程序

[page]

您看收集社交數(shù)據(jù),利用眾多存儲(chǔ)選項(xiàng)將其存儲(chǔ)在 BigInsights 中,包括分布式文件系統(tǒng)和存儲(chǔ)引擎,比如 HBase。

圖 5. BigInsights 分布式文件系統(tǒng)和存儲(chǔ)引擎

基于文本的社交媒體帖子存儲(chǔ)在 BigInsights 中后,您需要提取感興趣的信息,以便可在以后輕松地為其建立索引和探查。BigInsights 提供了復(fù)雜的文本分析功能,幫助您提取與產(chǎn)品相關(guān)的態(tài)度和提取社交媒體用戶概要信息。下圖顯示了從社交媒體提取實(shí)體和態(tài)度的輸出片段,突出顯示了這次實(shí)體 提取的一些重要字段,包括 Category、Brand、Product、Source、IsSentiment、IsCustomerOf、Polarity、Created Time、FullName、Screenname、UserID 和 Text。

圖 6. Tweet 上的產(chǎn)品態(tài)度

 

計(jì)和管理您的應(yīng)用程序?qū)嶓w模型

擁有從上一節(jié)的 BigInsights 文本分析中提取的實(shí)體信息后,您就可以設(shè)計(jì) Data Explorer 實(shí)體模型了。

這一節(jié)介紹將在解決方案中考慮并設(shè)計(jì)到您的實(shí)體模型中的一組元素。此過程將確保您的應(yīng)用程序解決方案能夠滿足您的業(yè)務(wù)分析師的需求,提供可擴(kuò)展的大數(shù)據(jù)搜索環(huán)境所需的訪問和探查模式。我們將簡要介紹一下這個(gè)設(shè)計(jì)過程中的步驟,稍后將更詳細(xì)地分析它們:

確定您感興趣的一組重要的業(yè)務(wù)實(shí)體和關(guān)系,以支持 Data Explorer 中的進(jìn)一步搜索和探查,并在這些業(yè)務(wù)實(shí)體分散在各處時(shí)識(shí)別各種來源。

在您場景的實(shí)體模型中捕獲這些實(shí)體和關(guān)系。

確定您的 Data Explorer 集群的可伸縮性,將這些規(guī)范設(shè)計(jì)到您的實(shí)體模型中。這些規(guī)范將確定您的 Data Explorer 部署的可伸縮性。

將您的實(shí)體模型部署到 Zookeeper 集群中,以實(shí)現(xiàn)配置設(shè)置的集中化管理。

確定一組重要的業(yè)務(wù)實(shí)體和關(guān)系,以構(gòu)建上下文信息

在我們的示例場景中,我們積累了關(guān)于現(xiàn)有客戶和我們的產(chǎn)品的內(nèi)部數(shù)據(jù)。這些數(shù)據(jù)存儲(chǔ)在一個(gè)關(guān)系 DBMS 中。此外,我們還收集了一些社交 tweet,使用 BigInsights 文本分析提取了用戶對我們的產(chǎn)品的態(tài)度。我們的業(yè)務(wù)分析師可能希望獲取一個(gè)更全面的視圖,以便了解客戶如何認(rèn)知我們的產(chǎn)品和我們的產(chǎn)品在整體市場中的知名 度。將企業(yè)和社交媒體數(shù)據(jù)相結(jié)合,可為我們的業(yè)務(wù)分析提供更有用的洞察。我們發(fā)現(xiàn),業(yè)務(wù)分析師將對以下實(shí)體很感興趣:

從 BigInsights 中的社交數(shù)據(jù)提取的用戶對產(chǎn)品的態(tài)度

存儲(chǔ)在一個(gè)關(guān)系數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)

存儲(chǔ)在一個(gè)關(guān)系數(shù)據(jù)庫中的在線客戶

同樣重要的是,需要為業(yè)務(wù)分析師提供正確的上下文信息。為實(shí)現(xiàn)此目標(biāo),您需要定義實(shí)體之間的一組關(guān)系。關(guān)系是一個(gè)重要元素,Data Explorer Application Builder 使用它鏈接實(shí)體之間的交互,提供了構(gòu)建上下文信息的重要好處。例如,在我們的場景中,我們需要捕獲 tweet 與特定用戶(客戶)有關(guān)聯(lián)以及一些 tweet 可能與產(chǎn)品相關(guān)的事實(shí)。

在實(shí)體模型中捕獲這些實(shí)體和任何重要關(guān)系

Data Explorer 實(shí)體模型為 XML 格式。可使用您選擇的 XML 編輯器來為該實(shí)體模型創(chuàng)建一個(gè)新文件:

添加實(shí)體 sentiment:

將 sentiment 實(shí)體添加到實(shí)體模型中的代碼段類似于下面的清單。它包含一些字段的附加信息,我們希望捕獲這些信息,讓它們可用在 Data Explorer Application Builder 可構(gòu)建的搜索應(yīng)用程序中。

清單 1. 實(shí)體 sentiment 的定義

添加實(shí)體 products:

將 product 實(shí)體和相關(guān)字段添加到實(shí)體模型中的代碼段類似于下面的清單:

清單 2. 實(shí)體 product 的定義

添加我們的實(shí)體之間的必要關(guān)系:

關(guān)系是一個(gè)重要的元素,Data Explorer Application Builder 使用它鏈接實(shí)體之間的交互,并提供構(gòu)建上下文信息的重要好處。以我們的場景為例,我們可能希望捕獲一些 tweet 與產(chǎn)品相關(guān)的事實(shí)。關(guān)系定義可能類似于下面的清單:

清單 3. 關(guān)系的定義

...

提供您的 Data Explorer 集群的拓?fù)浣Y(jié)構(gòu)規(guī)范

指定 Data Explorer 的集群集合存儲(chǔ):

識(shí)別感興趣的實(shí)體和關(guān)系后,需要構(gòu)建一個(gè)索引來支持搜索、發(fā)現(xiàn)和分析。為此,您需要為此索引指定一種存儲(chǔ)機(jī)制,即一個(gè)集合存儲(chǔ)。對于涉及 BigInsights 的用例,比如我們的場景,我們希望使用一個(gè)集群集合存儲(chǔ)。它是 Data Explorer 支持的集中集合存儲(chǔ)類型之一。選擇該集群集合存儲(chǔ)類型,將使 Data Explorer 引擎能夠利用一個(gè)機(jī)器集群來水平擴(kuò)展,從而處理 BigInsights 數(shù)據(jù)的更大規(guī)模索引。

下面的代碼段展示了如何指定集群集合存儲(chǔ),以便為來自 BigInsights 的社交數(shù)據(jù)建立索引。另一個(gè)表示來自關(guān)系 DBMS 的數(shù)據(jù)的實(shí)體將使用更加典型的單一集合。

清單 4. BigInsights 數(shù)據(jù)的集群集合存儲(chǔ)

指定您的 Data Explorer 集群的可伸縮性:

向搜索應(yīng)用程序添加分片 (shard),允許對數(shù)據(jù)進(jìn)行水平分區(qū),尤其是在這些分片分散在多個(gè)物理 Data Explorer 實(shí)例上時(shí)。在處理大量數(shù)據(jù)時(shí),總體性能將會(huì)提升,因?yàn)樗饕退阉鞑僮鞣植荚谝粋€(gè)集群環(huán)境中。我們重用了上面的實(shí)體模型示例,在集群集合存儲(chǔ)中指定一些分 片,將它們分散在兩個(gè)不同的物理 Data Explorer 實(shí)例上。

清單 5. 指定 BigInsights 數(shù)據(jù)的可伸縮性

使用 ZooKeeper 管理您的 Data Explorer 實(shí)體模型

Data Explorer 使用 ZooKeeper 管理您應(yīng)用程序的實(shí)體模型。Zookeeper 是一個(gè)集中化的服務(wù),用于維護(hù)配置信息,提供分布式同步功能,以及提供分組服務(wù)。現(xiàn)在我們已經(jīng)定義了我們的應(yīng)用程序?qū)嶓w模型,我們需要通過上傳到 ZooKeeper 集群將它提供給應(yīng)用程序。應(yīng)用程序?qū)⑹褂眠@個(gè)集群配置來發(fā)現(xiàn)所使用的部署拓?fù)浣Y(jié)構(gòu):

將您的實(shí)體模型上傳到 ZooKeeper 集群:

設(shè)置您的 ZooKeeper 集群后,您可以將您的 Data Explorer 應(yīng)用程序?qū)嶓w模型 上傳到這個(gè) ZooKeeper 集群并使用它進(jìn)行管理。Data Explorer BigIndex API ZIP 文件的 lib 文件夾中包含的 bigindex JAR 是一個(gè)可執(zhí)行文件,可用作一個(gè)基本的命令行工具,在 ZooKeeper 中上傳和管理實(shí)體模型。該命令行的用法如下所示。

清單 6. 將實(shí)體模型上傳到 ZooKeeper 集群

java -jar bigindex-2.0.0.jar --properties-file zookeeper.properties --import-file scenario_entity_model.xml --export-to-screen --legacy-model

請注意,如果使用 Data Explorer Application Builder 管理 UI 來管理應(yīng)用程序?qū)嶓w模型,可以跳過上面的步驟,將您的應(yīng)用程序指向 Data Explorer Application Builder 所使用的相同的 ZooKeeper 服務(wù)器實(shí)例和命名空間。您可以在 IBM/IDE/AppBuilder/wlp/usr/servers/AppBuilder/apps/AppBuilder/WEB-INF/config 的 zookeeper.yml 中找到所使用的 ZooKeeper 配置的更多細(xì)節(jié)。

使用 Data Explorer 開發(fā)您的第一個(gè) BigInsights 索引應(yīng)用程序

完成 Data Explorer 實(shí)體模型的設(shè)計(jì)后,您就可以利用 BigInsights 應(yīng)用程序開發(fā)生命周期來開發(fā)您的第一個(gè)索引應(yīng)用程序,以便將社交數(shù)據(jù)推送到 Data Explorer 的一個(gè)搜索集合中。BigInsights 應(yīng)用程序框架使您能夠以極少的工作創(chuàng)建、發(fā)布和部署您的第一個(gè)索引應(yīng)用程序。
創(chuàng)建一個(gè) BigInsights 項(xiàng)目并創(chuàng)建一個(gè)新 Java 類

您需要為應(yīng)用程序創(chuàng)建一個(gè)適當(dāng)?shù)捻?xiàng)目,就像您期望在任何基于 Eclipse 的應(yīng)用程序開發(fā)工作中看到的一樣,請查閱文章 “使用 InfoSphere BigInsights 開發(fā)、發(fā)布并部署您的第一個(gè)大數(shù)據(jù)應(yīng)用程序”,了解創(chuàng)建一個(gè) BigInsight 項(xiàng)目的快捷步驟(請參閱 參考資料)。創(chuàng)建 BigInsights 項(xiàng)目后,您需要向項(xiàng)目添加一個(gè)新 Java 類。為此,從 Eclipse 環(huán)境中選擇 File > New > Java > Class。填入您的類的信息(包名稱等),完成后單擊 Finish。
使用新 BigIndex API 在 Data Explorer 中對 BigInsight 數(shù)據(jù)建立索引

您的應(yīng)用程序?qū)⒄{(diào)用 Data Explorer 所提供的一組索引 Java API (BigIndex API) 來推送來自 BigInsights 的數(shù)據(jù)。后續(xù)步驟將給出完成此目標(biāo)所需的各種重要的 API 部分:

檢索 Data Explorer 部署拓?fù)浣Y(jié)構(gòu)以建立索引:

回想一下前面介紹實(shí)體模型的一節(jié),Data Explorer 集群拓?fù)浣Y(jié)構(gòu)捕獲在上傳到 ZooKeeper 的實(shí)體模型中。您的索引應(yīng)用程序?qū)⑿枰⑴c此 ZooKeeper 集群的一個(gè)連接,以檢索該拓?fù)浣Y(jié)構(gòu)并找到 Data Explorer 集群來建立索引。下面的清單是實(shí)現(xiàn)此任務(wù)的代碼段。

清單 7. 建立與 ZooKeeper 集群的連接

ZookeeperConfiguration zookeeperConfiguration = new ZookeeperConfiguration("namespace_sample_big_data_app", new ZookeeperEndpoint("zkhost1.domain.com", 2181));

使用一個(gè)字段解析器來處理您的輸入數(shù)據(jù)格式:

建立了我們將用于建立索引的 Data Explorer 實(shí)例后,我們就可以處理用于索引的輸入數(shù)據(jù)了。對于我們的示例場景,社交數(shù)據(jù)以 CSV 格式捕獲。我們可能需要使用開源 OpenCSV 解析器來解析每個(gè) CSV 文件,將每一行處理為一個(gè)鍵值列表。這要求以正確的格式準(zhǔn)備數(shù)據(jù),以便 Data Explorer 索引引擎可以使用它們。下面的代碼段提供了分析 CSV 數(shù)據(jù)的應(yīng)用程序邏輯的一個(gè)示例。備注:您需要使用合適的字段解析器來處理您的索引的輸入數(shù)據(jù)的數(shù)據(jù)格式。

清單 8. 解析 CSV 數(shù)據(jù)的示例代碼

// Read each CSV input file stored on BigInsights HDFSfor (FileStatus fStatus : listFilesFromHDFS(inputDirectory)) { // For each CSV file, parse each row into a list of key values CSVReader reader = new CSVReader(new InputStreamReader(fs.open(fStatus.getPath()))); // For each key, we will show later how to index it into // the Data Explorer index record while((listOfFields = reader.readNext())!= null){ ...

定義示例社交數(shù)據(jù)的記錄模式:

Data Explorer 索引器還要求應(yīng)用程序定義一個(gè)索引記錄的模式。下面清單中的 Java 代碼段使用 Data Explorer BigIndex API 定義我們的 Tweet 數(shù)據(jù)的各種關(guān)鍵字段的記錄模式。備注:在下面對 addRecordType() 的調(diào)用中,輸入值必須與您的實(shí)體模型中定義的實(shí)體的名稱匹配。在我們的場景中,實(shí)體名為 “tweet”。

清單 9. 定義記錄模式

RecordSchema recordSchema = new RecordSchemaBuilder() .addRecordType("tweet") .addTextField("Category").retrievable(true).sortable(true) .addTextField("Brand").retrievable(true).sortable(true) .addTextField("Product").retrievable(true).sortable(true) .addTextField("isSentiment").retrievable(true).sortable(true) .addDateField("CreatedTime").retrievable(true).sortable(true) .addTextField("Screenname").retrievable(true).sortable(true) .build();

將記錄的索引建立到 Data Explorer 引擎中:

現(xiàn)在您已經(jīng)完成一個(gè)記錄的模式的定義,可以將記錄的每個(gè)字段添加到索引中,并繼續(xù)處理下一個(gè)字段,直到為您的社交 tweet 數(shù)據(jù)中的所有記錄都建立了索引。以下代碼段給出了將記錄的索引建立到 Data Explorer 引擎中的過程。備注:在 newRecordBuilder() 調(diào)用中,所用的值必須與您的實(shí)體模型中定義的實(shí)體的名稱相匹配。例如,在我們的示例場景中,實(shí)體名稱為 “tweet”。

清單 10. 為記錄建立索引

RecordBuilderFactory recordBuilderFactory = new RecordBuilderFactory(recordSchema); // In the following call, provide the name of // the entity as defined in the entity modelRecordBuilder recordBuilder = recordBuilderFactory.newRecordBuilder("tweet"); // For each CSV row that's been parsed into a list of fieldswhile((listOfFields = csvreader.readNext())!= null){ recordBuilder.id(String.valueOf(recordId++)); // For each field, set field name and field value while (i != listOfFields.length){ String fieldName = listOfFieldNames[i]; String fieldValue = listOFields[i]; // Add the field to the indexing record recordBuilder = recordBuilder.addField(fieldName, fieldValue); ... }} // Finally, call to generate the record with the // current data and add it to the indexerRequestStatus status = indexer.addOrUpdateRecord(recordBuilder.build());發(fā)布和部署您的索引應(yīng)用程序

開發(fā)索引應(yīng)用程序后,就可以將其發(fā)布到 BigInsights 應(yīng)用程序目錄中。通過打包和發(fā)布索引應(yīng)用程序,您能夠定義應(yīng)用程序的工作流,指定輸入數(shù)據(jù)(您的社交媒體數(shù)據(jù))等參數(shù),并指定您的 Data Explorer ZooKeeper 端點(diǎn)。請查閱文章 “使用 InfoSphere BigInsights 開發(fā)、發(fā)布并部署您的第一個(gè)大數(shù)據(jù)應(yīng)用程序”,了解創(chuàng)建一個(gè) BigInsight 項(xiàng)目的快捷步驟,大體了解發(fā)布 BigInsights 應(yīng)用程序的步驟。在這個(gè)發(fā)布過程中,您將為索引應(yīng)用程序指定以下信息:

應(yīng)用程序類型:

選擇應(yīng)用程序類型 workflow,如下圖所示。

圖 7. 應(yīng)用程序類型

  Oozie 工作流定義:

BigInsights Web 控制臺(tái)生成一個(gè) Oozie 工作流來幫助管理 MapReduce 作業(yè)。 在Workflow 選項(xiàng)卡中,接受允許向?qū)?chuàng)建一個(gè)新操作 workflow.xml 文件的默認(rèn)設(shè)置。在下拉菜單中,將工作流類型更改為 Java,如下所示。

圖 8. Oozie 工作流操作類型

[page]

索引應(yīng)用程序參數(shù):

在 Parameters 頁面上,指定您的索引應(yīng)用程序的參數(shù),包括輸入目錄。此外,您也可提供 ZooKeeper 端點(diǎn)信息作為索引應(yīng)用程序的輸入?yún)?shù),而不是將它硬編碼到應(yīng)用程序中。最終的工作流可能類似于下圖。

圖 9. Oozie 工作流示例

在 BigInsights 集群中設(shè)置 Data Explorer 客戶端庫

運(yùn)行您的索引應(yīng)用程序之前,您需要在 BigInsights 集群中設(shè)置一些 Data Explorer 客戶端庫。

將 install-dir/AppBuilder/bigindex.zip 文件夾從您的 Data Explorer 集群的安裝中復(fù)制到 BigInsights 集群的本地文件系統(tǒng)中。

解壓 bigindex.zip 文件。您會(huì)看到一組 Data Explorer 依賴性 JAR 文件。

創(chuàng)建一個(gè) HDFS 目錄,比如 /biginsights/oozie/sharedLibraries/DataExplorer。

使用 Hadoop copy 命令將 Data Explorer 依賴性 JAR 文件復(fù)制到目錄 /biginsights/oozie/sharedLibraries/DataExplorer(比如 hadoop fs -copyFromLocal *jar /biginsights/oozie/sharedLibraries/DataExplorer/),或者使用 BigInsights Console 將這些文件上傳到 HDFS 目錄。

監(jiān)視您的索引應(yīng)用程序

部署應(yīng)用程序后,該程序?qū)⒊霈F(xiàn)在 BigInsights Web 控制臺(tái)中,如下圖所示。您可以使用此 Web 控制臺(tái)檢查應(yīng)用程序的詳細(xì)信息并運(yùn)行它。要了解監(jiān)視您的工作流的 BigInsights Web 控制臺(tái)的更多信息,請查閱文章 “探索 InfoSphere BigInsights 集群和樣例應(yīng)用程序”。

圖 10. BigInsights 索引應(yīng)用程序

使用 Data Explorer 進(jìn)行可視化在 Data Explorer 索引中驗(yàn)證您的社交數(shù)據(jù)

您的社交數(shù)據(jù)從 BigInsights 推送到 Data Explorer 中的一個(gè)搜索集合中后,您應(yīng)能夠使用 Data Explorer Engine 管理 UI 檢查建立了索引的數(shù)據(jù)。例如,您可以直觀地驗(yàn)證您關(guān)注的各個(gè)字段是否已相應(yīng)地建立了索引。要訪問管理員 UI,請執(zhí)行以下步驟:

登錄到 Data Explorer Engine 管理 UI。

從左側(cè)菜單選擇 Search Collection

查找您的實(shí)體模型中指定的社交數(shù)據(jù)的集合存儲(chǔ)。

打開搜索集合,單擊左側(cè)面板上的 Search 按鈕。

圖 11. Data Explorer Engine 管理 UI

  搜索關(guān)于產(chǎn)品的用戶 tweet:

在搜索框中,用戶可以鍵入關(guān)鍵詞(比如 golf),使用現(xiàn)有的界面執(zhí)行文本搜索,如下圖所示。

圖 12. 對與高爾夫相關(guān)的用戶 tweet 的文本搜索

利用 Data Explorer Application Builder

Data Explorer 中新增了 Application Builder,它為構(gòu)建富有吸引力的數(shù)據(jù)探查應(yīng)用程序提供了框架,比如分面搜索以及 360 度信息應(yīng)用程序,這些應(yīng)用程序可將分散在各個(gè)系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起。

分面搜索:

下圖給出了一個(gè)可使用 Application Builder 構(gòu)建的搜索小部件,它為用戶提供一個(gè)直觀的分面搜索應(yīng)用程序來探查其社交數(shù)據(jù)。分面搜索使您能夠使用一組細(xì)化操作輕松地導(dǎo)航某個(gè)特定主題上的結(jié)果集。在此 示例中,我們探查了關(guān)于產(chǎn)品(比如高爾夫球)的用戶 tweet,如下所示。

圖 13. 與高爾夫球相關(guān)的用戶 tweet 的分面搜索

  360 度信息應(yīng)用程序:

探查社交數(shù)據(jù)的各個(gè)方面后,您還可以將它與更多可從其他系統(tǒng)提取的數(shù)據(jù)類型相關(guān)聯(lián),比如客戶或產(chǎn)品數(shù)據(jù)。Data Explorer 提供了對各種關(guān)系數(shù)據(jù)庫、企業(yè) CRM 系統(tǒng)、文件共享等的連接和爬網(wǎng)功能。Data Explorer Application Builder 提供了一種方式來構(gòu)建一個(gè) 360 度視圖應(yīng)用程序,將分散在這些不同系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起,同時(shí)將數(shù)據(jù)保留在原始位置。

圖 14. 360 度視圖應(yīng)用程序

在我們的示例場景中,一位市場分析師關(guān)心某個(gè)產(chǎn)品或產(chǎn)品家族,所以一個(gè) 360 度視圖應(yīng)用程序可能包含用戶反饋和產(chǎn)品細(xì)節(jié)。下圖演示了一個(gè)產(chǎn)品頁面,其中多個(gè)小部件被集中在一起,顯示產(chǎn)品信息和相關(guān)用戶評(píng)論。

圖 15. 360 度視圖應(yīng)用程序 — 實(shí)體頁面

請注意,圖 14 和圖 15 給出了一個(gè) 360 度應(yīng)用程序,涉及到來自本文未提及的不同系統(tǒng)的數(shù)據(jù)。

結(jié)束語

本文分析了一種軟件架構(gòu),它支持業(yè)務(wù)分析師輕松而又高效地探查來自各種不同來源的數(shù)據(jù)。具體來講,我們解釋了 InfoSphere Data Explorer 如何對 InfoSphere BigInsights 管理的社交媒體大數(shù)據(jù),以及更多傳統(tǒng)企業(yè)數(shù)據(jù)來源所管理的結(jié)構(gòu)化數(shù)據(jù)建立索引。對數(shù)據(jù)建立索引能夠?qū)崿F(xiàn)高效訪問,而 Data Explorer 的封面搜索功能為非編程人員提供了一種直觀的途徑來探查此數(shù)據(jù),分析關(guān)系和獲取洞察。

關(guān)鍵字:DataExplorer應(yīng)用程序

本文摘自:編程入門

x 基于Hadoop的平臺(tái)管理的大數(shù)據(jù)建立索引的方法和指南 掃一掃
分享本文到朋友圈
當(dāng)前位置:大數(shù)據(jù)數(shù)據(jù)分析 → 正文

基于Hadoop的平臺(tái)管理的大數(shù)據(jù)建立索引的方法和指南

責(zé)任編輯:editor007 |來源:企業(yè)網(wǎng)D1Net  2014-12-12 17:35:53 本文摘自:編程入門

探查大數(shù)據(jù)和傳統(tǒng)企業(yè)數(shù)據(jù)是許多組織的共同需求。在本文中,我們概述了為通過基于 Hadoop 的平臺(tái)管理的大數(shù)據(jù)建立索引的方法和指南,以便將這些數(shù)據(jù)用于數(shù)據(jù)發(fā)現(xiàn)解決方案。具體來講,我們將介紹如何將存儲(chǔ)在 IBM 的 InfoSphere BigInsights(一個(gè)基于 Hadoop 的平臺(tái))中的數(shù)據(jù)推送到 InfoSphere Data Explorer。InfoSphere Data Explorer 是一個(gè)復(fù)雜的工具,支持業(yè)務(wù)用戶探查并組合來自多個(gè)企業(yè)和外部數(shù)據(jù)源的數(shù)據(jù)。

簡介

如果您關(guān)注過許多圍繞大數(shù)據(jù)的早期案例分析,您可能相信 “您根本不知道您不知道什么” 的說法。確實(shí),大數(shù)據(jù)應(yīng)用程序常常專注于從平時(shí)可能出于多種原因而導(dǎo)致被丟棄或忽略的數(shù)據(jù)中收集業(yè)務(wù)洞察。公司越來越多地希望開發(fā)一個(gè)全面的信息管理戰(zhàn) 略,這個(gè)戰(zhàn)略涉及的不僅僅是簡單地探查或分析大數(shù)據(jù)。具體來講,他們希望將大數(shù)據(jù)與現(xiàn)有數(shù)據(jù)系統(tǒng)(包括關(guān)系 DBMS、企業(yè)內(nèi)容管理系統(tǒng)、數(shù)據(jù)倉庫等)一起整合到其總體信息管理戰(zhàn)略中。

本文分析該挑戰(zhàn)的一個(gè)方面,列出了為大數(shù)據(jù)和傳統(tǒng)數(shù)據(jù)源建立索引的一個(gè)架構(gòu)和方法,還提供了基于 Web 的接口,以發(fā)現(xiàn)這些不同數(shù)據(jù)源中的新洞察。具體來講,它描述了 Data Explorer(一個(gè)數(shù)據(jù)發(fā)現(xiàn)平臺(tái))如何為 InfoSphere BigInsights 管理的數(shù)據(jù)建立索引,支持將大數(shù)據(jù)的持久化格式與現(xiàn)有的企業(yè)數(shù)據(jù)相結(jié)合。Data Explorer 和 BigInsights 都是 IBM 的大數(shù)據(jù)平臺(tái)的重要組件,所以我們首先概述此平臺(tái)和這兩個(gè)重要產(chǎn)品。

IBM 的大數(shù)據(jù)平臺(tái)概述

IBM 的大數(shù)據(jù)平臺(tái)旨在幫助組織探查、分析和管理豐富的數(shù)據(jù),包括流數(shù)據(jù)、傳統(tǒng)業(yè)務(wù)數(shù)據(jù),以及以前很難合并到企業(yè)的商業(yè)智能和分析平臺(tái)中的 “非傳統(tǒng)” 數(shù)據(jù)或輔助數(shù)據(jù)。首先讓我們簡要了解一下這個(gè)平臺(tái),然后再重點(diǎn)介紹兩個(gè)重要組件:InfoSphere Data Explorer 和 InfoSphere BigInsights。

圖 1 描繪了 IBM 的大數(shù)據(jù)平臺(tái)的架構(gòu),它在功能的豐富性上不同于其他商用產(chǎn)品。從上到下,您會(huì)看到 IBM 的這個(gè)平臺(tái)包含豐富的功能和技術(shù),能夠可視化和發(fā)現(xiàn)各種數(shù)據(jù)源中的洞察,開發(fā)分析應(yīng)用程序,管理您的環(huán)境。Data Explorer 提供了 IBM 的大數(shù)據(jù)平臺(tái)的重要可視化和發(fā)現(xiàn)功能,所以稍后我們會(huì)更詳細(xì)地討論該組件。圖 1 中所示的加速器是 IBM 提供的工具包,包含數(shù)十個(gè)預(yù)先構(gòu)建的軟件工件,以幫助公司快速部署分析社交媒體和機(jī)器數(shù)據(jù)(比如日志記錄)的解決方案。3 個(gè)數(shù)據(jù)處理引擎使組織能夠有效地應(yīng)對大數(shù)據(jù)內(nèi)在的多樣性、大量性和高速性。這些引擎包含一個(gè)基于 Hadoop 的系統(tǒng)(BigInsights,我們稍后將詳細(xì)探討它)、一個(gè)流計(jì)算平臺(tái) (InfoSphere Streams) 和一個(gè)數(shù)據(jù)倉庫平臺(tái)(比如 PureData for Analytics 或 DB2)。最后,IBM 的大數(shù)據(jù)平臺(tái)還包含與其他流行企業(yè)軟件的連接,包括關(guān)系 DBMS、提取/轉(zhuǎn)換/加載平臺(tái)、商業(yè)智能工具、內(nèi)容管理系統(tǒng)等。

圖 1. IBM 的大數(shù)據(jù)平臺(tái)架構(gòu)

InfoSphere BigInsights 概述

InfoSphere BigInsights 是 IBM 持久化和分析眾多形式的大數(shù)據(jù)的平臺(tái)。基于開源 Apache Hadoop 項(xiàng)目,BigInsights 旨在幫助公司發(fā)現(xiàn)和分析隱藏在海量數(shù)據(jù)中的業(yè)務(wù)洞察,這些數(shù)據(jù)在平時(shí)可能被忽略或丟棄,因?yàn)槭褂脗鹘y(tǒng)方法來處理這些數(shù)據(jù)有些不切實(shí)際或太困難。這些數(shù)據(jù)的 示例包括日志記錄、單擊流、社交媒體數(shù)據(jù)、新聞源、電子郵件、電子傳感器輸出,甚至一些事務(wù)數(shù)據(jù)。

為了幫助企業(yè)高效地從這些類型的數(shù)據(jù)獲取價(jià)值,BigInsights Enterprise Edition 包含一些來自 Hadoop 生態(tài)系統(tǒng)的開源項(xiàng)目,以及 IBM 開發(fā)的一些增強(qiáng)和擴(kuò)展了這個(gè)開源軟件的價(jià)值的技術(shù)。如 圖 2 所示,這些技術(shù)涵蓋范圍從應(yīng)用程序加速器到分析工具、開發(fā)工具、平臺(tái)改進(jìn)和企業(yè)軟件集成。例如,BigInsights 客戶可使用復(fù)雜的文本分析功能從文檔、電子郵件和消息中提取內(nèi)容和上下文。應(yīng)用程序開發(fā)人員可采用基于 Eclipse 的向?qū)砑铀僮远x Java MapReduce、Jaql、Hive、Pig 和文本分析應(yīng)用程序的開發(fā)。管理員可通過一個(gè)集成的 Web 控制臺(tái)管理和監(jiān)視其 BigInsights 環(huán)境,業(yè)務(wù)用戶可通過基于 Web 的目錄來啟動(dòng) IBM 提供的或自行開發(fā)的應(yīng)用程序。

在本文中,我們將重點(diǎn)介紹 BigInsights 特性的一個(gè)子集,比如文本分析和應(yīng)用程序生命周期工具。

圖 2. InfoSphere BigInsights 架構(gòu)

InfoSphere Data Explorer 概述

InfoSphere Data Explorer 允許您為來自不同數(shù)據(jù)來源的大量結(jié)構(gòu)化、非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)建立索引。它還提供了構(gòu)建大數(shù)據(jù)探查應(yīng)用程序和 360 度信息應(yīng)用程序的能力。InfoSphere Data Explorer 允許用戶根據(jù)存儲(chǔ)在不同的內(nèi)部和外部數(shù)據(jù)存儲(chǔ)庫中的龐大數(shù)據(jù)集合,創(chuàng)建不同實(shí)體(比如客戶、產(chǎn)品、事件、合作伙伴等)的相關(guān)信息的視圖,而無需移動(dòng)數(shù)據(jù)。

當(dāng)今企業(yè)的一個(gè)重要挑戰(zhàn)是,用戶無法快速找到解決業(yè)務(wù)問題或完成一項(xiàng)任務(wù)所需的信息。通常,數(shù)據(jù)分散在不同的系統(tǒng)中,以便支持不同組織管理的具體應(yīng) 用程序。此外,新數(shù)據(jù)來源逐漸成為關(guān)鍵的資源,人們可能需要在日常工作和制定重要決策時(shí)考慮它們,比如社交媒體、來自移動(dòng)設(shè)備的源、Twitter 等。

這方面的一個(gè)示例是,聯(lián)系人信息、購買的產(chǎn)品、開具的服務(wù)票據(jù)和保修信息等客戶信息都存儲(chǔ)在不同的業(yè)務(wù)應(yīng)用程序中,比如 CRM、支持票據(jù)系統(tǒng)、市場門戶等。想象一位希望聯(lián)系客戶以進(jìn)行追加銷售的銷售人員。他必須先登錄 10 個(gè)應(yīng)用程序來匯總客戶的信息,或者與 5 個(gè)人溝通來理解所有這些信息。

Data Explorer 解決了這個(gè)重要難題。信息存儲(chǔ)在許多不同的系統(tǒng)和筒倉中,而用戶需要采用一致的方式來查看所有數(shù)據(jù),快速導(dǎo)航到與他們最相關(guān)的信息。這里的挑戰(zhàn)是:在員工最需要制定決策的信息地方提供該信息。

圖 3. InfoSphere Data Explorer 架構(gòu)

BigInsights 和 Data Explorer 的集成

BigInsights 和 Data Explorer 彼此互補(bǔ),使組織能夠拓寬他們能以一種一致、連貫的方式分析的信息范圍。例如,BigInsights 常常用于存儲(chǔ)非結(jié)構(gòu)化和半結(jié)構(gòu)化內(nèi)容。此外,探查和導(dǎo)航內(nèi)容的需求變得更為緊迫,這常常表現(xiàn)在搜索式界面中。這使得信息更容易讓業(yè)務(wù)線用戶使用。例如,如 果您存儲(chǔ)了機(jī)器數(shù)據(jù),最終用戶可能希望導(dǎo)航內(nèi)容日期,尋找特定的機(jī)器故障類型,等等。另一方面,如果存儲(chǔ)社交數(shù)據(jù),最終用戶可能希望搜索與產(chǎn)品相關(guān)的用戶 態(tài)度。所有這些都需要一種富索引功能。除了索引之外,Data Explorer 還可提供了一種富用戶體驗(yàn),合并來自 BigInsights 的內(nèi)容和其他企業(yè)內(nèi)容,以實(shí)現(xiàn)全面的大數(shù)據(jù)探查。

示例場景

要實(shí)現(xiàn)這一架構(gòu),我們需要執(zhí)行一些步驟。這里總結(jié)了這些步驟,稍后會(huì)更詳細(xì)地分析它們:

收集和準(zhǔn)備您的社交媒體數(shù)據(jù)以供分析

BigInsights 通過預(yù)先構(gòu)建的應(yīng)用程序提供各種不同的數(shù)據(jù)收集機(jī)制。當(dāng)基于文本的社交媒體帖子位于 BigInsights 中時(shí),您需要提取感興趣的信息,以便可在以后輕松地為它們建立索引和探查它們。BigInsights 提供了復(fù)雜的文本分析功能,幫助您提取感興趣的實(shí)體,包括產(chǎn)品、人員和對產(chǎn)品的態(tài)度。

建模感興趣的業(yè)務(wù)實(shí)體和關(guān)系

一個(gè)應(yīng)用程序可快速啟動(dòng)此過程,為 Data Explorer 指定一種實(shí)體模型來幫助設(shè)置我們稍后將展示的各種配置選項(xiàng)。此實(shí)體模型對您的應(yīng)用程序場景的總體成功至關(guān)重要。

該實(shí)體模型將捕獲一組重要的業(yè)務(wù)實(shí)體和關(guān)系,您的業(yè)務(wù)分析師將有興趣在 Data Explorer 中搜索、發(fā)現(xiàn)和探查它們。因此,一種有效的實(shí)體模型設(shè)計(jì)是理解業(yè)務(wù)分析師希望如何搜索和探查哪些信息的前提。

該實(shí)體模型將捕獲您的 Data Explorer 集群的一組重要配置,以反映您的容量和部署計(jì)劃。稍后,您將看到我們?nèi)绾尾东@產(chǎn)品和 tweet 作為感興趣的關(guān)鍵業(yè)務(wù)實(shí)體,進(jìn)一步指定這些實(shí)體之間的關(guān)系,并提供 Data Explorer 集群的拓?fù)浣Y(jié)構(gòu)部署信息。

開發(fā)您的第一個(gè)索引應(yīng)用程序,在 Data Explorer 中為提取的社交數(shù)據(jù)建立索引

您可以利用 BigInsights 應(yīng)用程序開發(fā)生命周期開發(fā)您的索引應(yīng)用程序,該生命周期使您能夠以極少的工作創(chuàng)建、發(fā)布和部署您的應(yīng)用程序。部署之后,從您的社交數(shù)據(jù)中提取的實(shí)體信息將 被推送到一個(gè) Data Explorer 搜索集合中,可使用 Data Explorer 分面搜索 (faceted search) 特性進(jìn)一步探查這些信息,使用它們構(gòu)建一個(gè) 360 度視圖應(yīng)用程序。

使用 Data Explorer 實(shí)現(xiàn)可視化

Data Explorer Application Builder 提供了一種途徑來構(gòu)建一個(gè)應(yīng)用程序,將分散在不同系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起。在我們的示例場景中,一位產(chǎn)品計(jì)劃主管可能關(guān)心一個(gè)產(chǎn)品或產(chǎn)品家族,所以一個(gè) 360 度視圖

在 BigInsights 中收集和準(zhǔn)備您的社交媒體數(shù)據(jù)以供分析

BigInsights 通過預(yù)先構(gòu)建的應(yīng)用程序(比如 Boardreader 應(yīng)用程序)提供了眾多數(shù)據(jù)收集機(jī)制。

圖 4. Boardreader 應(yīng)用程序

[page]

您看收集社交數(shù)據(jù),利用眾多存儲(chǔ)選項(xiàng)將其存儲(chǔ)在 BigInsights 中,包括分布式文件系統(tǒng)和存儲(chǔ)引擎,比如 HBase。

圖 5. BigInsights 分布式文件系統(tǒng)和存儲(chǔ)引擎

基于文本的社交媒體帖子存儲(chǔ)在 BigInsights 中后,您需要提取感興趣的信息,以便可在以后輕松地為其建立索引和探查。BigInsights 提供了復(fù)雜的文本分析功能,幫助您提取與產(chǎn)品相關(guān)的態(tài)度和提取社交媒體用戶概要信息。下圖顯示了從社交媒體提取實(shí)體和態(tài)度的輸出片段,突出顯示了這次實(shí)體 提取的一些重要字段,包括 Category、Brand、Product、Source、IsSentiment、IsCustomerOf、Polarity、Created Time、FullName、Screenname、UserID 和 Text。

圖 6. Tweet 上的產(chǎn)品態(tài)度

 

計(jì)和管理您的應(yīng)用程序?qū)嶓w模型

擁有從上一節(jié)的 BigInsights 文本分析中提取的實(shí)體信息后,您就可以設(shè)計(jì) Data Explorer 實(shí)體模型了。

這一節(jié)介紹將在解決方案中考慮并設(shè)計(jì)到您的實(shí)體模型中的一組元素。此過程將確保您的應(yīng)用程序解決方案能夠滿足您的業(yè)務(wù)分析師的需求,提供可擴(kuò)展的大數(shù)據(jù)搜索環(huán)境所需的訪問和探查模式。我們將簡要介紹一下這個(gè)設(shè)計(jì)過程中的步驟,稍后將更詳細(xì)地分析它們:

確定您感興趣的一組重要的業(yè)務(wù)實(shí)體和關(guān)系,以支持 Data Explorer 中的進(jìn)一步搜索和探查,并在這些業(yè)務(wù)實(shí)體分散在各處時(shí)識(shí)別各種來源。

在您場景的實(shí)體模型中捕獲這些實(shí)體和關(guān)系。

確定您的 Data Explorer 集群的可伸縮性,將這些規(guī)范設(shè)計(jì)到您的實(shí)體模型中。這些規(guī)范將確定您的 Data Explorer 部署的可伸縮性。

將您的實(shí)體模型部署到 Zookeeper 集群中,以實(shí)現(xiàn)配置設(shè)置的集中化管理。

確定一組重要的業(yè)務(wù)實(shí)體和關(guān)系,以構(gòu)建上下文信息

在我們的示例場景中,我們積累了關(guān)于現(xiàn)有客戶和我們的產(chǎn)品的內(nèi)部數(shù)據(jù)。這些數(shù)據(jù)存儲(chǔ)在一個(gè)關(guān)系 DBMS 中。此外,我們還收集了一些社交 tweet,使用 BigInsights 文本分析提取了用戶對我們的產(chǎn)品的態(tài)度。我們的業(yè)務(wù)分析師可能希望獲取一個(gè)更全面的視圖,以便了解客戶如何認(rèn)知我們的產(chǎn)品和我們的產(chǎn)品在整體市場中的知名 度。將企業(yè)和社交媒體數(shù)據(jù)相結(jié)合,可為我們的業(yè)務(wù)分析提供更有用的洞察。我們發(fā)現(xiàn),業(yè)務(wù)分析師將對以下實(shí)體很感興趣:

從 BigInsights 中的社交數(shù)據(jù)提取的用戶對產(chǎn)品的態(tài)度

存儲(chǔ)在一個(gè)關(guān)系數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)

存儲(chǔ)在一個(gè)關(guān)系數(shù)據(jù)庫中的在線客戶

同樣重要的是,需要為業(yè)務(wù)分析師提供正確的上下文信息。為實(shí)現(xiàn)此目標(biāo),您需要定義實(shí)體之間的一組關(guān)系。關(guān)系是一個(gè)重要元素,Data Explorer Application Builder 使用它鏈接實(shí)體之間的交互,提供了構(gòu)建上下文信息的重要好處。例如,在我們的場景中,我們需要捕獲 tweet 與特定用戶(客戶)有關(guān)聯(lián)以及一些 tweet 可能與產(chǎn)品相關(guān)的事實(shí)。

在實(shí)體模型中捕獲這些實(shí)體和任何重要關(guān)系

Data Explorer 實(shí)體模型為 XML 格式。可使用您選擇的 XML 編輯器來為該實(shí)體模型創(chuàng)建一個(gè)新文件:

添加實(shí)體 sentiment:

將 sentiment 實(shí)體添加到實(shí)體模型中的代碼段類似于下面的清單。它包含一些字段的附加信息,我們希望捕獲這些信息,讓它們可用在 Data Explorer Application Builder 可構(gòu)建的搜索應(yīng)用程序中。

清單 1. 實(shí)體 sentiment 的定義

添加實(shí)體 products:

將 product 實(shí)體和相關(guān)字段添加到實(shí)體模型中的代碼段類似于下面的清單:

清單 2. 實(shí)體 product 的定義

添加我們的實(shí)體之間的必要關(guān)系:

關(guān)系是一個(gè)重要的元素,Data Explorer Application Builder 使用它鏈接實(shí)體之間的交互,并提供構(gòu)建上下文信息的重要好處。以我們的場景為例,我們可能希望捕獲一些 tweet 與產(chǎn)品相關(guān)的事實(shí)。關(guān)系定義可能類似于下面的清單:

清單 3. 關(guān)系的定義

...

提供您的 Data Explorer 集群的拓?fù)浣Y(jié)構(gòu)規(guī)范

指定 Data Explorer 的集群集合存儲(chǔ):

識(shí)別感興趣的實(shí)體和關(guān)系后,需要構(gòu)建一個(gè)索引來支持搜索、發(fā)現(xiàn)和分析。為此,您需要為此索引指定一種存儲(chǔ)機(jī)制,即一個(gè)集合存儲(chǔ)。對于涉及 BigInsights 的用例,比如我們的場景,我們希望使用一個(gè)集群集合存儲(chǔ)。它是 Data Explorer 支持的集中集合存儲(chǔ)類型之一。選擇該集群集合存儲(chǔ)類型,將使 Data Explorer 引擎能夠利用一個(gè)機(jī)器集群來水平擴(kuò)展,從而處理 BigInsights 數(shù)據(jù)的更大規(guī)模索引。

下面的代碼段展示了如何指定集群集合存儲(chǔ),以便為來自 BigInsights 的社交數(shù)據(jù)建立索引。另一個(gè)表示來自關(guān)系 DBMS 的數(shù)據(jù)的實(shí)體將使用更加典型的單一集合。

清單 4. BigInsights 數(shù)據(jù)的集群集合存儲(chǔ)

指定您的 Data Explorer 集群的可伸縮性:

向搜索應(yīng)用程序添加分片 (shard),允許對數(shù)據(jù)進(jìn)行水平分區(qū),尤其是在這些分片分散在多個(gè)物理 Data Explorer 實(shí)例上時(shí)。在處理大量數(shù)據(jù)時(shí),總體性能將會(huì)提升,因?yàn)樗饕退阉鞑僮鞣植荚谝粋€(gè)集群環(huán)境中。我們重用了上面的實(shí)體模型示例,在集群集合存儲(chǔ)中指定一些分 片,將它們分散在兩個(gè)不同的物理 Data Explorer 實(shí)例上。

清單 5. 指定 BigInsights 數(shù)據(jù)的可伸縮性

使用 ZooKeeper 管理您的 Data Explorer 實(shí)體模型

Data Explorer 使用 ZooKeeper 管理您應(yīng)用程序的實(shí)體模型。Zookeeper 是一個(gè)集中化的服務(wù),用于維護(hù)配置信息,提供分布式同步功能,以及提供分組服務(wù)。現(xiàn)在我們已經(jīng)定義了我們的應(yīng)用程序?qū)嶓w模型,我們需要通過上傳到 ZooKeeper 集群將它提供給應(yīng)用程序。應(yīng)用程序?qū)⑹褂眠@個(gè)集群配置來發(fā)現(xiàn)所使用的部署拓?fù)浣Y(jié)構(gòu):

將您的實(shí)體模型上傳到 ZooKeeper 集群:

設(shè)置您的 ZooKeeper 集群后,您可以將您的 Data Explorer 應(yīng)用程序?qū)嶓w模型 上傳到這個(gè) ZooKeeper 集群并使用它進(jìn)行管理。Data Explorer BigIndex API ZIP 文件的 lib 文件夾中包含的 bigindex JAR 是一個(gè)可執(zhí)行文件,可用作一個(gè)基本的命令行工具,在 ZooKeeper 中上傳和管理實(shí)體模型。該命令行的用法如下所示。

清單 6. 將實(shí)體模型上傳到 ZooKeeper 集群

java -jar bigindex-2.0.0.jar --properties-file zookeeper.properties --import-file scenario_entity_model.xml --export-to-screen --legacy-model

請注意,如果使用 Data Explorer Application Builder 管理 UI 來管理應(yīng)用程序?qū)嶓w模型,可以跳過上面的步驟,將您的應(yīng)用程序指向 Data Explorer Application Builder 所使用的相同的 ZooKeeper 服務(wù)器實(shí)例和命名空間。您可以在 IBM/IDE/AppBuilder/wlp/usr/servers/AppBuilder/apps/AppBuilder/WEB-INF/config 的 zookeeper.yml 中找到所使用的 ZooKeeper 配置的更多細(xì)節(jié)。

使用 Data Explorer 開發(fā)您的第一個(gè) BigInsights 索引應(yīng)用程序

完成 Data Explorer 實(shí)體模型的設(shè)計(jì)后,您就可以利用 BigInsights 應(yīng)用程序開發(fā)生命周期來開發(fā)您的第一個(gè)索引應(yīng)用程序,以便將社交數(shù)據(jù)推送到 Data Explorer 的一個(gè)搜索集合中。BigInsights 應(yīng)用程序框架使您能夠以極少的工作創(chuàng)建、發(fā)布和部署您的第一個(gè)索引應(yīng)用程序。
創(chuàng)建一個(gè) BigInsights 項(xiàng)目并創(chuàng)建一個(gè)新 Java 類

您需要為應(yīng)用程序創(chuàng)建一個(gè)適當(dāng)?shù)捻?xiàng)目,就像您期望在任何基于 Eclipse 的應(yīng)用程序開發(fā)工作中看到的一樣,請查閱文章 “使用 InfoSphere BigInsights 開發(fā)、發(fā)布并部署您的第一個(gè)大數(shù)據(jù)應(yīng)用程序”,了解創(chuàng)建一個(gè) BigInsight 項(xiàng)目的快捷步驟(請參閱 參考資料)。創(chuàng)建 BigInsights 項(xiàng)目后,您需要向項(xiàng)目添加一個(gè)新 Java 類。為此,從 Eclipse 環(huán)境中選擇 File > New > Java > Class。填入您的類的信息(包名稱等),完成后單擊 Finish。
使用新 BigIndex API 在 Data Explorer 中對 BigInsight 數(shù)據(jù)建立索引

您的應(yīng)用程序?qū)⒄{(diào)用 Data Explorer 所提供的一組索引 Java API (BigIndex API) 來推送來自 BigInsights 的數(shù)據(jù)。后續(xù)步驟將給出完成此目標(biāo)所需的各種重要的 API 部分:

檢索 Data Explorer 部署拓?fù)浣Y(jié)構(gòu)以建立索引:

回想一下前面介紹實(shí)體模型的一節(jié),Data Explorer 集群拓?fù)浣Y(jié)構(gòu)捕獲在上傳到 ZooKeeper 的實(shí)體模型中。您的索引應(yīng)用程序?qū)⑿枰⑴c此 ZooKeeper 集群的一個(gè)連接,以檢索該拓?fù)浣Y(jié)構(gòu)并找到 Data Explorer 集群來建立索引。下面的清單是實(shí)現(xiàn)此任務(wù)的代碼段。

清單 7. 建立與 ZooKeeper 集群的連接

ZookeeperConfiguration zookeeperConfiguration = new ZookeeperConfiguration("namespace_sample_big_data_app", new ZookeeperEndpoint("zkhost1.domain.com", 2181));

使用一個(gè)字段解析器來處理您的輸入數(shù)據(jù)格式:

建立了我們將用于建立索引的 Data Explorer 實(shí)例后,我們就可以處理用于索引的輸入數(shù)據(jù)了。對于我們的示例場景,社交數(shù)據(jù)以 CSV 格式捕獲。我們可能需要使用開源 OpenCSV 解析器來解析每個(gè) CSV 文件,將每一行處理為一個(gè)鍵值列表。這要求以正確的格式準(zhǔn)備數(shù)據(jù),以便 Data Explorer 索引引擎可以使用它們。下面的代碼段提供了分析 CSV 數(shù)據(jù)的應(yīng)用程序邏輯的一個(gè)示例。備注:您需要使用合適的字段解析器來處理您的索引的輸入數(shù)據(jù)的數(shù)據(jù)格式。

清單 8. 解析 CSV 數(shù)據(jù)的示例代碼

// Read each CSV input file stored on BigInsights HDFSfor (FileStatus fStatus : listFilesFromHDFS(inputDirectory)) { // For each CSV file, parse each row into a list of key values CSVReader reader = new CSVReader(new InputStreamReader(fs.open(fStatus.getPath()))); // For each key, we will show later how to index it into // the Data Explorer index record while((listOfFields = reader.readNext())!= null){ ...

定義示例社交數(shù)據(jù)的記錄模式:

Data Explorer 索引器還要求應(yīng)用程序定義一個(gè)索引記錄的模式。下面清單中的 Java 代碼段使用 Data Explorer BigIndex API 定義我們的 Tweet 數(shù)據(jù)的各種關(guān)鍵字段的記錄模式。備注:在下面對 addRecordType() 的調(diào)用中,輸入值必須與您的實(shí)體模型中定義的實(shí)體的名稱匹配。在我們的場景中,實(shí)體名為 “tweet”。

清單 9. 定義記錄模式

RecordSchema recordSchema = new RecordSchemaBuilder() .addRecordType("tweet") .addTextField("Category").retrievable(true).sortable(true) .addTextField("Brand").retrievable(true).sortable(true) .addTextField("Product").retrievable(true).sortable(true) .addTextField("isSentiment").retrievable(true).sortable(true) .addDateField("CreatedTime").retrievable(true).sortable(true) .addTextField("Screenname").retrievable(true).sortable(true) .build();

將記錄的索引建立到 Data Explorer 引擎中:

現(xiàn)在您已經(jīng)完成一個(gè)記錄的模式的定義,可以將記錄的每個(gè)字段添加到索引中,并繼續(xù)處理下一個(gè)字段,直到為您的社交 tweet 數(shù)據(jù)中的所有記錄都建立了索引。以下代碼段給出了將記錄的索引建立到 Data Explorer 引擎中的過程。備注:在 newRecordBuilder() 調(diào)用中,所用的值必須與您的實(shí)體模型中定義的實(shí)體的名稱相匹配。例如,在我們的示例場景中,實(shí)體名稱為 “tweet”。

清單 10. 為記錄建立索引

RecordBuilderFactory recordBuilderFactory = new RecordBuilderFactory(recordSchema); // In the following call, provide the name of // the entity as defined in the entity modelRecordBuilder recordBuilder = recordBuilderFactory.newRecordBuilder("tweet"); // For each CSV row that's been parsed into a list of fieldswhile((listOfFields = csvreader.readNext())!= null){ recordBuilder.id(String.valueOf(recordId++)); // For each field, set field name and field value while (i != listOfFields.length){ String fieldName = listOfFieldNames[i]; String fieldValue = listOFields[i]; // Add the field to the indexing record recordBuilder = recordBuilder.addField(fieldName, fieldValue); ... }} // Finally, call to generate the record with the // current data and add it to the indexerRequestStatus status = indexer.addOrUpdateRecord(recordBuilder.build());發(fā)布和部署您的索引應(yīng)用程序

開發(fā)索引應(yīng)用程序后,就可以將其發(fā)布到 BigInsights 應(yīng)用程序目錄中。通過打包和發(fā)布索引應(yīng)用程序,您能夠定義應(yīng)用程序的工作流,指定輸入數(shù)據(jù)(您的社交媒體數(shù)據(jù))等參數(shù),并指定您的 Data Explorer ZooKeeper 端點(diǎn)。請查閱文章 “使用 InfoSphere BigInsights 開發(fā)、發(fā)布并部署您的第一個(gè)大數(shù)據(jù)應(yīng)用程序”,了解創(chuàng)建一個(gè) BigInsight 項(xiàng)目的快捷步驟,大體了解發(fā)布 BigInsights 應(yīng)用程序的步驟。在這個(gè)發(fā)布過程中,您將為索引應(yīng)用程序指定以下信息:

應(yīng)用程序類型:

選擇應(yīng)用程序類型 workflow,如下圖所示。

圖 7. 應(yīng)用程序類型

  Oozie 工作流定義:

BigInsights Web 控制臺(tái)生成一個(gè) Oozie 工作流來幫助管理 MapReduce 作業(yè)。 在Workflow 選項(xiàng)卡中,接受允許向?qū)?chuàng)建一個(gè)新操作 workflow.xml 文件的默認(rèn)設(shè)置。在下拉菜單中,將工作流類型更改為 Java,如下所示。

圖 8. Oozie 工作流操作類型

[page]

索引應(yīng)用程序參數(shù):

在 Parameters 頁面上,指定您的索引應(yīng)用程序的參數(shù),包括輸入目錄。此外,您也可提供 ZooKeeper 端點(diǎn)信息作為索引應(yīng)用程序的輸入?yún)?shù),而不是將它硬編碼到應(yīng)用程序中。最終的工作流可能類似于下圖。

圖 9. Oozie 工作流示例

在 BigInsights 集群中設(shè)置 Data Explorer 客戶端庫

運(yùn)行您的索引應(yīng)用程序之前,您需要在 BigInsights 集群中設(shè)置一些 Data Explorer 客戶端庫。

將 install-dir/AppBuilder/bigindex.zip 文件夾從您的 Data Explorer 集群的安裝中復(fù)制到 BigInsights 集群的本地文件系統(tǒng)中。

解壓 bigindex.zip 文件。您會(huì)看到一組 Data Explorer 依賴性 JAR 文件。

創(chuàng)建一個(gè) HDFS 目錄,比如 /biginsights/oozie/sharedLibraries/DataExplorer。

使用 Hadoop copy 命令將 Data Explorer 依賴性 JAR 文件復(fù)制到目錄 /biginsights/oozie/sharedLibraries/DataExplorer(比如 hadoop fs -copyFromLocal *jar /biginsights/oozie/sharedLibraries/DataExplorer/),或者使用 BigInsights Console 將這些文件上傳到 HDFS 目錄。

監(jiān)視您的索引應(yīng)用程序

部署應(yīng)用程序后,該程序?qū)⒊霈F(xiàn)在 BigInsights Web 控制臺(tái)中,如下圖所示。您可以使用此 Web 控制臺(tái)檢查應(yīng)用程序的詳細(xì)信息并運(yùn)行它。要了解監(jiān)視您的工作流的 BigInsights Web 控制臺(tái)的更多信息,請查閱文章 “探索 InfoSphere BigInsights 集群和樣例應(yīng)用程序”。

圖 10. BigInsights 索引應(yīng)用程序

使用 Data Explorer 進(jìn)行可視化在 Data Explorer 索引中驗(yàn)證您的社交數(shù)據(jù)

您的社交數(shù)據(jù)從 BigInsights 推送到 Data Explorer 中的一個(gè)搜索集合中后,您應(yīng)能夠使用 Data Explorer Engine 管理 UI 檢查建立了索引的數(shù)據(jù)。例如,您可以直觀地驗(yàn)證您關(guān)注的各個(gè)字段是否已相應(yīng)地建立了索引。要訪問管理員 UI,請執(zhí)行以下步驟:

登錄到 Data Explorer Engine 管理 UI。

從左側(cè)菜單選擇 Search Collection

查找您的實(shí)體模型中指定的社交數(shù)據(jù)的集合存儲(chǔ)。

打開搜索集合,單擊左側(cè)面板上的 Search 按鈕。

圖 11. Data Explorer Engine 管理 UI

  搜索關(guān)于產(chǎn)品的用戶 tweet:

在搜索框中,用戶可以鍵入關(guān)鍵詞(比如 golf),使用現(xiàn)有的界面執(zhí)行文本搜索,如下圖所示。

圖 12. 對與高爾夫相關(guān)的用戶 tweet 的文本搜索

利用 Data Explorer Application Builder

Data Explorer 中新增了 Application Builder,它為構(gòu)建富有吸引力的數(shù)據(jù)探查應(yīng)用程序提供了框架,比如分面搜索以及 360 度信息應(yīng)用程序,這些應(yīng)用程序可將分散在各個(gè)系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起。

分面搜索:

下圖給出了一個(gè)可使用 Application Builder 構(gòu)建的搜索小部件,它為用戶提供一個(gè)直觀的分面搜索應(yīng)用程序來探查其社交數(shù)據(jù)。分面搜索使您能夠使用一組細(xì)化操作輕松地導(dǎo)航某個(gè)特定主題上的結(jié)果集。在此 示例中,我們探查了關(guān)于產(chǎn)品(比如高爾夫球)的用戶 tweet,如下所示。

圖 13. 與高爾夫球相關(guān)的用戶 tweet 的分面搜索

  360 度信息應(yīng)用程序:

探查社交數(shù)據(jù)的各個(gè)方面后,您還可以將它與更多可從其他系統(tǒng)提取的數(shù)據(jù)類型相關(guān)聯(lián),比如客戶或產(chǎn)品數(shù)據(jù)。Data Explorer 提供了對各種關(guān)系數(shù)據(jù)庫、企業(yè) CRM 系統(tǒng)、文件共享等的連接和爬網(wǎng)功能。Data Explorer Application Builder 提供了一種方式來構(gòu)建一個(gè) 360 度視圖應(yīng)用程序,將分散在這些不同系統(tǒng)中的數(shù)據(jù)的相關(guān)信息集中在一起,同時(shí)將數(shù)據(jù)保留在原始位置。

圖 14. 360 度視圖應(yīng)用程序

在我們的示例場景中,一位市場分析師關(guān)心某個(gè)產(chǎn)品或產(chǎn)品家族,所以一個(gè) 360 度視圖應(yīng)用程序可能包含用戶反饋和產(chǎn)品細(xì)節(jié)。下圖演示了一個(gè)產(chǎn)品頁面,其中多個(gè)小部件被集中在一起,顯示產(chǎn)品信息和相關(guān)用戶評(píng)論。

圖 15. 360 度視圖應(yīng)用程序 — 實(shí)體頁面

請注意,圖 14 和圖 15 給出了一個(gè) 360 度應(yīng)用程序,涉及到來自本文未提及的不同系統(tǒng)的數(shù)據(jù)。

結(jié)束語

本文分析了一種軟件架構(gòu),它支持業(yè)務(wù)分析師輕松而又高效地探查來自各種不同來源的數(shù)據(jù)。具體來講,我們解釋了 InfoSphere Data Explorer 如何對 InfoSphere BigInsights 管理的社交媒體大數(shù)據(jù),以及更多傳統(tǒng)企業(yè)數(shù)據(jù)來源所管理的結(jié)構(gòu)化數(shù)據(jù)建立索引。對數(shù)據(jù)建立索引能夠?qū)崿F(xiàn)高效訪問,而 Data Explorer 的封面搜索功能為非編程人員提供了一種直觀的途徑來探查此數(shù)據(jù),分析關(guān)系和獲取洞察。

關(guān)鍵字:DataExplorer應(yīng)用程序

本文摘自:編程入門

電子周刊
回到頂部

關(guān)于我們聯(lián)系我們版權(quán)聲明隱私條款廣告服務(wù)友情鏈接投稿中心招賢納士

企業(yè)網(wǎng)版權(quán)所有 ©2010-2024 京ICP備09108050號(hào)-6 京公網(wǎng)安備 11010502049343號(hào)

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 雅江县| 浦县| 邵阳县| 内乡县| 保德县| 和田县| 汝阳县| 电白县| 嘉祥县| 武陟县| 宁乡县| 穆棱市| 滦平县| 普格县| 余姚市| 蓝田县| 慈溪市| 巨野县| 九龙县| 合作市| 淮南市| 安仁县| 马山县| 恭城| 棋牌| 东港市| 青海省| 富民县| 广汉市| 淳安县| 南京市| 太原市| 天峻县| 禹州市| 叶城县| 洱源县| 白水县| 台北市| 崇文区| 成安县| 元朗区|