郭亞平,馬新春,昔 克
(新疆電子研究所有限公司 新疆 烏魯木齊 830049)
B2C電子商務模式即企業(yè)通過互聯(lián)網(wǎng)為消費者提供一個新型的購物環(huán)境——網(wǎng)上商店,消費者通過網(wǎng)絡在網(wǎng)上購物及支付的商務模式。目前大型的B2C電子商務平臺很多(如淘寶、京東、一號店、亞馬遜等),往往一個企業(yè)會在多個B2C平臺開設(shè)門店,這樣就會導致一個企業(yè)的電商交易數(shù)據(jù)分散在多個B2C平臺,對銷售數(shù)據(jù)的統(tǒng)一管理以及統(tǒng)計分析工作造成了困難。中間件是一種獨立的系統(tǒng)軟件、服務程序或分布式應用軟件,借助這種軟件在不同的技術(shù)之間共享資源。 本文探討如何采用中間件技術(shù)實現(xiàn)一種統(tǒng)一的電商交易數(shù)據(jù)抓取插件,進而實現(xiàn)對分布于不同B2C電商平臺交易數(shù)據(jù)的統(tǒng)一管理。
電 子 商 務 是 指 在 互 聯(lián) 網(wǎng) (Internet)、 企 業(yè) 內(nèi) 部 網(wǎng)(Intranet)和增值網(wǎng)(Value Added Network,VAN)上以電子交易方式進行交易活動和相關(guān)服務的活動,是傳統(tǒng)商業(yè)活動各環(huán)節(jié)的電子化、網(wǎng)絡化[1]。近十年電子商務正在以幾何級數(shù)的速度迅速發(fā)展。電子商務(e-commerce)作為一種新興的商務活動模式,憑借自身依托Internet網(wǎng)絡交易所帶來的迅捷、方便等優(yōu)點,正在超越傳統(tǒng)的商務活動模式,給人們的生活帶來越來越多的商機。
電子商務B2C模式中的B是Business,即商業(yè)供應方(泛指企業(yè)),2(two)則是 to 的諧音,C 是 Consumer,即消費者。B2C電子商務是按電子商務交易主體劃分的一種電子商務模式,即表示企業(yè)對消費者的電子商務。
B2C電子商務模式包括兩種類型,一種是大型企業(yè)自建B2B電子商務網(wǎng)站來開展電子商務,企業(yè)通過電子商務來降低成本、提高銷售量,如海爾、聯(lián)想等公司。另一種是第三方電子商務平臺。我國大部分中小企業(yè)由于自身條件的限制,只能通過第三方電子商務平臺開展電子商務業(yè)務。主要的第三方電子商務平臺包括淘寶商城、天貓、京東、一號店等。
中間件(Middleware)是基礎(chǔ)軟件的一大類,屬于可復用軟件的范疇[2]。中間件在操作系統(tǒng)、網(wǎng)絡和數(shù)據(jù)庫之上,應用軟件的下層,總的作用是為上層的應用軟件提供運行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復雜的應用軟件。中間件的主要特點如下:
1)易于集成。 中間件能夠無縫的嵌入目標應用開發(fā)環(huán)境中,應用程序能夠穩(wěn)定方便的調(diào)用中間件提供的應用邏輯和數(shù)據(jù)。
2)易于移植。中間件與平臺無關(guān),即平臺的改變對應用程序來說幾乎沒有影響,無需修改代碼。
3)易于升級維護。中間件通過外部接口和應用程序交互,因此中間件的升級維護對應用程序基本沒有影響。
4)高可靠性。中間件主要針對部分功能邏輯進行封裝重用,通用性很強,成熟的中間件可以有效的保障系統(tǒng)的邏輯正確和運行穩(wěn)健。
5)易于使用。中間件封裝了復雜的業(yè)務邏輯,系統(tǒng)通過簡單的接口調(diào)用就能重復使用這些業(yè)務邏輯。
目前我國大部分從事B2C電子商務的企業(yè)主要是依托于第三方B2C平臺進行自身商品的網(wǎng)上營銷活動,而其中的大部分企業(yè)為了實現(xiàn)更好的網(wǎng)上營銷效果,在很多B2C電子商務平臺上均開設(shè)了門店,其中知名度較高,規(guī)模較大的平臺包括淘寶、天貓、京東、一號店等,在不同平臺開設(shè)門店為企業(yè)增加效益的同時,也帶來的不少問題。舉例:我省一干果加工銷售龍頭企業(yè)已成功依托于B2C電子商務平臺進行線上銷售多年,由于自身架設(shè)的電子商務銷售網(wǎng)站知名度不很高,該龍頭企業(yè)主要依托于淘寶、天貓、京東、一號店等平臺進行線上銷售工作,這些分散于各個電商平臺的銷售數(shù)據(jù)為企業(yè)的日常銷售管理工作帶來了一些問題。第一、如何集中管理這些分散數(shù)據(jù),進行企業(yè)日常的各類分析統(tǒng)計工作。第二、如何自動導入這些線上銷售數(shù)據(jù)到財務軟件等企業(yè)現(xiàn)有ERP系統(tǒng),實現(xiàn)企業(yè)整個銷售數(shù)據(jù)的統(tǒng)一,同時避免人為重復錄入等工作造成的成本提升等問題。
文中就是針對目前的這種狀況,提出以一種通用中間件的方式統(tǒng)一解決企業(yè)在各第三方B2C平臺銷售數(shù)據(jù)的抓取問題。企業(yè)或第三方系統(tǒng)開發(fā)人員能夠通過本中間件輕松的實現(xiàn)大多數(shù)B2C平臺的數(shù)據(jù)抓取功能,在解決B2C銷售企業(yè)困難的同時提高企業(yè)工作效率。
數(shù)據(jù)抓取中間件介于B2C電子商務平臺與企業(yè)ERP信息管理系統(tǒng)之間,以屏蔽不同B2C電子商務平臺數(shù)據(jù)接口差異為目的,支持大部分主流B2C電子商務交易數(shù)據(jù)的即時抓取功能,實現(xiàn)B2C電商平臺交易數(shù)據(jù)到企業(yè)內(nèi)部ERP信息管理系統(tǒng)間的無縫融合。結(jié)構(gòu)示意圖如圖1所示。
圖1 中間件結(jié)構(gòu)示意圖Fig.1 Middleware structure diagram
1)能夠適應目前主流的幾個B2C平臺,如京東、一號店、淘寶、天貓。針對于這些平臺企業(yè)用戶無需再次編寫數(shù)據(jù)抓取接口,通過本中間件提供的方法調(diào)用即可方便的實現(xiàn)交易數(shù)據(jù)抓取功能。
2)制定中間件接口標準,通過接口標準屏蔽不同B2C交易平臺間數(shù)據(jù)接口的差異,在有新的B2C平臺數(shù)據(jù)接口需求時,只需要根據(jù)差異針對目標平臺進行簡單接口編程,即可實現(xiàn)本中間件的擴展,提高本中間件的兼容性。
3)實現(xiàn)對企業(yè)不同B2C平臺下的多帳號管理,自動根據(jù)所管理的帳號進行抓單并自動關(guān)聯(lián)單據(jù)至該帳號。
4)企業(yè)維護人員能夠自行定義本中間件抓取的數(shù)據(jù)到企業(yè)數(shù)據(jù)庫表/字段的自動映射關(guān)系。 通過本中間件實現(xiàn)B2C平臺到企業(yè)ERP系統(tǒng)數(shù)據(jù)庫的數(shù)據(jù)自動入庫功能,無需再次編碼。
5)提供事件處理引擎,將自動抓取數(shù)據(jù)進行過濾、分組、關(guān)聯(lián)和聚合生成用戶需要的業(yè)務數(shù)據(jù),減少或避免用戶在處理底層數(shù)據(jù)上所花費的工作,直接面對業(yè)務邏輯數(shù)據(jù)。
常用的編程語言主要有:c++、C#、Java、vb 等;而 Linux 系統(tǒng)下一般用C語言來進行開發(fā)[3]。本中間件主要基于C#語言開發(fā),采用Visual Studio 2010開發(fā)環(huán)境 。考慮到本中間件的兼容性和強壯性,本地化存儲方案采用XML文件存儲。系統(tǒng)開發(fā)流程如圖2所示。
圖2 系統(tǒng)開發(fā)流程圖Fig.2 System flow chart
中間件需要實現(xiàn)的主要功能模塊主要有6個,包括電商平臺賬戶管理模塊、邏輯接口模塊、單店鋪抓單接口實現(xiàn)模塊、數(shù)據(jù)結(jié)構(gòu)映射模塊、數(shù)據(jù)自動導入模塊、抓單守護線程模塊。各模塊功能介紹如下:
1)電商平臺賬戶管理模塊:管理分布于各B2C電商平臺的賬戶認證信息。
2)邏輯接口模塊:該模塊對各B2C電商平臺的抓單動作進行抽象,形成接口標準定義。
3)單店鋪抓單接口實現(xiàn)模塊:針對接口標準對不同電商平臺所做的抓單功能實現(xiàn)。
4)數(shù)據(jù)結(jié)構(gòu)映射模塊:用戶自定義的電商交易數(shù)據(jù)自動導入企業(yè)ERP系統(tǒng)時的數(shù)據(jù)邏輯結(jié)構(gòu)定義。
5)數(shù)據(jù)自動導入模塊:實現(xiàn)電商交易數(shù)據(jù)自動導入企業(yè)ERP系統(tǒng)功能。
TF/IDF方法只考慮了詞在上下文中的統(tǒng)計特性,具有一定的局限性。一個特征項出現(xiàn)的頻率越多,該特征項越能代表主題,包含該特征項的文檔越少,該特征項越能代表主題,這是正確的,但也是片面的。從詞性上講,名詞比動詞或者其他詞性更能代表主題,從詞匯屬性上講,關(guān)鍵詞、方言詞比普通常用詞匯更能代表主題。本文利用的是項目自定義的農(nóng)業(yè)專業(yè)分詞算法,該算法的分詞結(jié)果包括該詞的詞性和詞匯屬性(常用詞、方言詞、專業(yè)關(guān)鍵詞),將詞匯按照其詞性及詞屬性進行加權(quán),增加了該算法的可操作性和準確度。
6)抓單守護線程模塊:定時抓取電商交易數(shù)據(jù),處理網(wǎng)絡異常、單據(jù)異常、數(shù)據(jù)異常等非正常事件,保證中間件的健壯性。
可擴展的標記語言XML是1998年2月由W3C組織制定的一種通用語言規(guī)范,具有開放性、平臺無關(guān)性、自描述性、靈活的可擴展性、高度結(jié)構(gòu)化和層次化的數(shù)據(jù)組織形式等特點[4]。XML語言采用標記來表示信息的內(nèi)容,使用者可根據(jù)需要自由定義這些標記,生成結(jié)構(gòu)化的信息,使其非常適用于不同應用間的數(shù)據(jù)交換。因此,基于XML的異構(gòu)數(shù)據(jù)交換技術(shù)已成為電子商務應用的關(guān)鍵技術(shù)[5]?;赬ML的數(shù)據(jù)交換標準在B2C電子商務平臺與企業(yè)之間充當一個橋梁,使得使用不同通信方式的B2C電子商務平臺和企業(yè)之間可以方便地進行信息交流[6]。
本中間件主要通過XML數(shù)據(jù)交換標準實現(xiàn)各B2C平臺不同格式標準數(shù)據(jù)到本中間件數(shù)據(jù)標準的轉(zhuǎn)換定義。通過最大冗余數(shù)據(jù)格式定義將從各B2C平臺抓取的數(shù)據(jù)統(tǒng)一變化為標準定義。再根據(jù)具體使用企業(yè)的自身ERP系統(tǒng)的差異,將標準數(shù)據(jù)轉(zhuǎn)換為企業(yè)ERP所需的數(shù)據(jù),從而完成B2C平臺數(shù)據(jù)到企業(yè)ERP數(shù)據(jù)的轉(zhuǎn)換。下面為淘寶平臺交易數(shù)據(jù)到中間件交易數(shù)據(jù)標準格式轉(zhuǎn)換的XML定義示例。
--第三方平臺字段名稱
--字段類型
--字段長度
--值
--標準版本號
通過標準定義來屏蔽不同B2C平臺接口間的差異,同時保證本中間件的可擴展性,對于其他B2C平臺只需要針對于本標準進行簡單的接口編程即可實現(xiàn)對本中間件的功能擴展,提高本中間件的平臺兼容性和健壯性。
整個中間應用邏輯實現(xiàn)依賴于四個重要的基類設(shè)計,如圖3所示。
圖3 基類設(shè)計圖Fig.3 Basic class design chart
1)Istore類:該類為抽象類(abstract class),封裝了店鋪認證信息,店鋪登錄,獲取店鋪基本信息等通用處理過程。由此基類衍生出所有B2C平臺店鋪子類,如淘寶店,京東店等。
2)StoreManager類:該類為店鋪管理類,負責管理本中間件所有登記在冊的店鋪信息。
3)StoreFactory類:該類為工廠類,負責根據(jù)請求的店鋪類型生成不同的店鋪實例。
4)CaptureRobot類:該類為主守護線程類,負責按所有登記在冊的店鋪信息定時依次抓取各類單據(jù)信息,并負責處理抓單過程中的各類異常信息。確保本中間件的穩(wěn)定運行。
基于本抓單中間件開發(fā)出的自動抓單機器人的系統(tǒng)運行界面如圖4所示。
圖4 系統(tǒng)界面圖Fig.4 System UIchart
在電子商務蓬勃發(fā)展的今天,越來越多的企業(yè)采取Internet線上營銷的方式,通過第三方B2C電子商務平臺營銷自己的產(chǎn)品。在給企業(yè)帶來便利,實現(xiàn)效益最大化的同時,也為企業(yè)帶來了數(shù)據(jù)分散,難以集中管理統(tǒng)計等困難。使用本中間及相關(guān)技術(shù)可以有效解決這些問題。企業(yè)只要通過簡單的調(diào)用本中間件的外部接口或進行二次開發(fā)就能方便的實現(xiàn)B2C電商平臺數(shù)據(jù)與本企業(yè)ERP平臺數(shù)據(jù)的無縫集成,實現(xiàn)企業(yè)信息資源方便高效快捷的互通互享,提升企業(yè)的經(jīng)濟效益。本文所設(shè)計的中間件已在新疆某干果電子商務銷售企業(yè)得到了成功應用,進一步的提高了企業(yè)自身的信息化優(yōu)勢,取得了良好的經(jīng)濟效益。
[1]方美琪.電子商務概論[M].北京:清華大學出版社,1999.
[2]仲巖,蘆陽,李霞.電子商務實物[M].北京:北京大學出版社,2009.
[3]葉穎,李陶深.淺談電子商務中間件架構(gòu)[J].廣西大學學報:自然科學版,2005(30):58-61.YE Ying,LI Tao-shen.E-commerce middleware architecture[J]Guangxi University:Natural Science,2005(30):58-61.
[4]王宇飛,許進.OpenBase MINI數(shù)據(jù)同步的設(shè)計與實現(xiàn)[J].計算機科學,2000,27(10):214-217.WANG Yu-fei,XU Jin.OpenBase MINI design and implementation of data synchronization [J].Computer Science 2000,27(10):214-217.
[5]李文菲.基于中間件技術(shù)的數(shù)據(jù)交換平臺的設(shè)計與實現(xiàn)[D].北京:中國科學院,2006.
[6]尹夢嘉.基于中間件的電子商務基礎(chǔ)系統(tǒng)研究[J].福建電腦,2005(6):37-38.YIN Meng-jia.Research about middleware-based e-commerce infrastructure systems[J].Fujian Computer,2005(6):37-38.