電商平臺下用戶畫像的設(shè)計(jì)與分析_第1頁
電商平臺下用戶畫像的設(shè)計(jì)與分析_第2頁
電商平臺下用戶畫像的設(shè)計(jì)與分析_第3頁
電商平臺下用戶畫像的設(shè)計(jì)與分析_第4頁
電商平臺下用戶畫像的設(shè)計(jì)與分析_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

Thedesignandimplementationofuserprofileone-merceplatform專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)姓名:史維君指導(dǎo)教師:申請學(xué)位級別:學(xué)士論文提交日期:2016年6月1日學(xué)位授予單位:XX科技大學(xué)摘要大數(shù)據(jù)是數(shù)量非常巨大的復(fù)雜的半結(jié)構(gòu)化或者非結(jié)構(gòu)化的數(shù)據(jù)集。隨著時(shí)代的發(fā)展,越來越多的數(shù)據(jù)產(chǎn)生,用傳統(tǒng)的數(shù)據(jù)庫管理方式,無論是從數(shù)據(jù)的儲存,獲取,或者查找等方面都已經(jīng)無法滿足要求了。隨著大數(shù)據(jù)的來臨,人們有了解決大量數(shù)據(jù)的處理,儲存等能力后,人們?yōu)榱藢?shù)據(jù)細(xì)化,將數(shù)據(jù)分行業(yè),類型的分了好多種類。在這里我們所研究的是其中的一個種類:用戶畫像。用戶畫像核心價(jià)值在于了解用戶,猜測用戶對產(chǎn)品的需求或者潛在需求,精細(xì)化的定位人群特征,挖掘潛在的用戶群體,為媒體、廣告主、企業(yè)及廣告公司充分認(rèn)知群體用戶的差異化特征,根據(jù)族群的差異化特征,幫助客戶找到營銷機(jī)會、運(yùn)營方向,全面提高客戶的核心影響力。在電商行業(yè)中。用戶畫像可以分析客戶的使用習(xí)慣、喜好、一系列的購買行為,以及周邊的人群的身份、屬性、年齡等,它對我們的商務(wù)行為、對營銷的判斷會有一定的借鑒。本文通過使用Hadoop技術(shù),結(jié)合Hive,Java,JSP和HTML等編程語言,設(shè)計(jì)并完成了一個具有簡單的電商平臺下的用戶畫像。本設(shè)計(jì)依賴Easyui,Echarts,JfreeChar框架設(shè)計(jì)出了簡潔漂亮的前端界面,使用Hive進(jìn)行數(shù)據(jù)分析與產(chǎn)生研究結(jié)果。本系統(tǒng)主要包括,系統(tǒng)管理:分別從用戶管理,角色管理,菜單管理等方面對整個系統(tǒng)進(jìn)行權(quán)限管理。用戶行為:分別從跳出率,忠誠度,活躍度判斷用戶在某一天或者某一段時(shí)間的整體狀況。訪客分析:分別從地域分布,速度分布,客戶端環(huán)境等對某個地區(qū)的整體環(huán)境和地區(qū)消費(fèi)情況進(jìn)行產(chǎn)品銷售。關(guān)鍵詞:用戶畫像;Hadoop;Hive

ABSTRACTBigdataisaverylargenumberofplexsemistructuredorunstructureddatasets.Withthedevelopmentofthetimes,moreandmoredataareproduced,withthetraditionaldatabasemanagement,whetheritisfromthedatastorage,access,orfindandsoonhavebeenunabletomeettherequirementsofthe.Withtheadventofbigdata,peoplehavetodealwithalargenumberofdataprocessing,storageandothercapabilities,peopleinordertorefinethedata,thedatapointsindustry,alotoftypesofpoints.Whatwearestudyinghereisoneofthecategories:theuserportrait.Userportraitcorevalueistounderstandtheuser,usersoftheproductdemandorpotentialdemandforecast,finepositioningpopulationcharacteristics,miningthepotentialusergroups,webmedia,advertisers,andadvertisingpaniesfullycognitivedifferentiationcharacteristicsoftheusergroups,accordingtothefeaturesoftheethnicdifferencestohelpcustomersfindopportunitiesformarketing,operations,andprehensivelyimprovethecustomer'scoreimpact.Intheelectricitybusinessindustry.Userportraitcananalyzecustomerusehabits,preferences,aseriesofpurchasebehavior,andperipheralpopulationsofidentity,attributes,age,ittoourbusinessbehavior,thejudgmentofthemarketingwillhaveacertainreference.ThisarticlethroughtheuseofHadooptechnology,binedwithHive,Java,JSPandHTMLprogramminglanguages,designedandpletedasimplebusinessplatformwithauserportrait.ThedesignofEasyui,Echarts,JfreeCharframeworkdesignedasimpleandbeautifulfrontinterface,usingHivefordataanalysisandresearchresults.Thesystemmainlyincludesthesystemmanagement:fromtheusermanagement,rolemanagement,menumanagementandotheraspectsoftheentiresystemtocarryouttherightsmanagement.Userbehavior:respectively,fromthejumpoutrate,loyalty,activitytojudgetheoverallsituationoftheuserinadayoracertainperiodoftime.Visitoranalysis:fromthegeographicaldistribution,speeddistribution,clientenvironment,suchastheoverallenvironmentofaregionandregionalconsumersales.Keywords:UserProfile;Hadoop;Hive

目錄第一章引言 1第一節(jié) 用戶畫像的背景及意義 1第二節(jié) 系統(tǒng)所用的開發(fā)技術(shù)及工具簡介 2第三節(jié) 系統(tǒng)環(huán)境搭建 3第四節(jié) 論文整體設(shè)計(jì)結(jié)構(gòu) 6第二章系統(tǒng)需求分析與概要設(shè)計(jì) 8第一節(jié) 用戶畫像的需求分析 8第二節(jié) 可行性分析 9第三節(jié) 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì) 10第四節(jié) 系統(tǒng)功能模塊設(shè)計(jì) 13第三章系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 16第一節(jié) 數(shù)據(jù)倉庫建模 16第二節(jié) 系統(tǒng)部分功能模塊流程圖設(shè)計(jì) 25第三節(jié) 部分功能模塊的實(shí)現(xiàn)說明 28第四節(jié) 系統(tǒng)結(jié)構(gòu)和頁面詳細(xì)設(shè)計(jì) 32第四章系統(tǒng)測試 36第一節(jié) 軟件測試的目的 36第二節(jié) 測試的方法及步驟 36第三節(jié) 系統(tǒng)部分功能測試和結(jié)果 37第五章論文總結(jié)和今后展望 41第一節(jié) 總結(jié) 41第二節(jié) 展望 41參考文獻(xiàn) 42致謝 43引言隨著互聯(lián)網(wǎng)時(shí)代的來臨,人們越來越重視對數(shù)據(jù)的利用與處理,在海量數(shù)據(jù)中提取有效信息,進(jìn)行數(shù)據(jù)分析與挖掘發(fā)現(xiàn)商業(yè)價(jià)值[1]。用戶是時(shí)代發(fā)展的最重要的因素,利用大數(shù)據(jù)來分析用戶的行為與消費(fèi)習(xí)慣,可以預(yù)測商品的發(fā)展的趨勢,提高產(chǎn)品質(zhì)量,同時(shí)提高用戶滿意度[2]。本文基于大數(shù)據(jù)與Hadoop技術(shù)進(jìn)行電商用戶畫像的開發(fā)與設(shè)計(jì),論文將從國內(nèi)外研究,需求分析,系統(tǒng)概要設(shè)計(jì),系統(tǒng)詳細(xì)設(shè)計(jì),系統(tǒng)的實(shí)現(xiàn)等方面進(jìn)行整個項(xiàng)目的描述。用戶畫像的背景及意義隨著大數(shù)據(jù)興起與不斷發(fā)展,數(shù)據(jù)量越來越來,人們想著從這些數(shù)據(jù)中挖掘出自己想要的信息。所以有了各種各樣的數(shù)據(jù)挖掘方式或者種類并將其抽象到各個行業(yè)。再次我們討論的是其中的一個種類,用戶畫像。在“用戶中心論”理論支持下,很多行業(yè)意識到用戶的重要性,在整個社會發(fā)展的過程中用戶是主導(dǎo)因素[3]。所以有很多行業(yè)從原來以產(chǎn)品和服務(wù)為中心的思維方式轉(zhuǎn)換到以用戶為主導(dǎo),開始研究用戶的需求,反饋和用戶滿意度等信息[4]。互聯(lián)網(wǎng)行業(yè)也是如此,互聯(lián)網(wǎng)企業(yè)開始加深對用戶的了解。為了使生產(chǎn)或銷售的產(chǎn)品能夠吸引更多的新用戶,同時(shí)留住老用戶,提高企業(yè)的利潤,基于用戶的研究越來越重要了[5]。在很多傳統(tǒng)行業(yè)中,商家為了提高用戶量,經(jīng)常會分析用戶的生命周期和價(jià)值,用戶的忠誠度,地域等信息來進(jìn)行商業(yè)決策[6]。比如電商行業(yè),商家會對用戶的年齡分布,地區(qū),性別,星座,消費(fèi)能力,家庭收入的方面對用戶進(jìn)行分析,判斷用戶將來會給商家?guī)淼睦麧?,來進(jìn)行商業(yè)決策[7]。再者分析用戶的整體消費(fèi)情況可以了解用戶的消費(fèi)偏好,進(jìn)行商品的推送服務(wù),例如:短信推送,推送等。這樣就形成了比較成熟的用戶行為與消費(fèi)習(xí)慣分析體系,為商家如何長遠(yuǎn)的獲得利益與吸引新用戶打下堅(jiān)實(shí)的基礎(chǔ)。隨著互聯(lián)網(wǎng)行業(yè)的不斷發(fā)展,人們對網(wǎng)上消費(fèi)人群的分析越來越重要。例如很多大型互聯(lián)網(wǎng)企業(yè)都推出了自己的分析體系,例如:百度,谷歌,阿里和京東等。京東將在電子商務(wù)全過程中的所有用戶的數(shù)據(jù)都添加到用戶畫像的建模當(dāng)中,而且對用戶進(jìn)行全方位的精確定位,描繪用戶的特征。目前京東的用戶畫像中運(yùn)用大約三百多個標(biāo)簽來描述客戶,涵蓋了用戶的基本屬性,購買能力,偏好等各個方面,利用分析的結(jié)果來推薦產(chǎn)品,廣告等,同時(shí)也更加智能的設(shè)置搜索提示功能,更好的服務(wù)于用戶,來提高用戶的滿意度[8]。系統(tǒng)所用的開發(fā)技術(shù)及工具簡介一、開發(fā)技術(shù)簡介Java與JavaEE簡介Java是一種與C++相似的面向?qū)ο缶幊陶Z言,但它比C++功能更強(qiáng)大、學(xué)起來更為簡單,而且它具有簡單、安全、高性能、面向?qū)ο?、高可移植性以及跨平臺性等優(yōu)點(diǎn),因而受到了廣大編程人員的追捧。同時(shí)由于其具有其強(qiáng)大的平臺無關(guān)性,所以用Java開發(fā)的應(yīng)用程序可以在各個系統(tǒng)平臺上運(yùn)行,這使得Java成為目前應(yīng)用X圍最廣的編程語言[9]。JavaEE是一套用于開發(fā)Java企業(yè)級應(yīng)用程序的規(guī)X標(biāo)準(zhǔn),功能十分強(qiáng)大,目前有許多的服務(wù)端代碼都由它完成編寫,使用JavaEE可以開發(fā)出類似電子商務(wù)和企業(yè)資源評估系統(tǒng)這一類伸縮性與靈活性強(qiáng),且容易維護(hù)的分布式企業(yè)級網(wǎng)絡(luò)應(yīng)用程序[10]。JavaEE的API結(jié)構(gòu)如圖1-1所示。圖1-SEQFigure\*ARABIC1JavaEE的結(jié)構(gòu)圖分布式框架HadoopHadoop本質(zhì)上來說是一個開源的分布式框架。在Google的三大論文發(fā)表之后,有Apache基金會負(fù)責(zé)開發(fā)的大數(shù)據(jù)的開發(fā)工具。Hadoop的核心內(nèi)容是HDFS和Mapreduce算法[11]。Hadoop有以下三個特點(diǎn):1.可靠性,因?yàn)镠adoop在數(shù)據(jù)處理是會維護(hù)多個數(shù)據(jù)副本,使得即使在某一節(jié)點(diǎn)上計(jì)算失敗還能重新繼續(xù)分布處理,而不對數(shù)據(jù)造成不可恢復(fù)性錯誤。2.高擴(kuò)展性,Hadoop在集群處理上,可以特別方便的擴(kuò)展節(jié)點(diǎn)數(shù)量。3.低成本,因?yàn)镠adoop是開源的,所以可以降低好多軟件開發(fā)成本。數(shù)據(jù)倉庫HiveHive是一款基于Hadoop的數(shù)據(jù)倉庫基礎(chǔ)架構(gòu),他可以方便的將一個結(jié)構(gòu)化的數(shù)據(jù)文件映射成數(shù)據(jù)庫里面的一X表,還提供sql查詢,學(xué)習(xí)成本低等優(yōu)點(diǎn)[12]。Hive還可以將sql查詢語句轉(zhuǎn)為Mapreduce算法運(yùn)行,特別適合大型數(shù)據(jù)的開發(fā)與分析。目前想Facebook,淘寶等大型公司都是用Hive進(jìn)行數(shù)據(jù)倉庫建模和數(shù)據(jù)分析。easyui簡介easyui是一個輕量級的前端UI開發(fā)框架,easyui是一套的前端開發(fā)庫,提供了很多常用的各種CSS和JavaScript合集,內(nèi)置了非常多的漂亮樣式,簡潔靈活,而且easyui是可擴(kuò)展的,我們可以根據(jù)自己需求在他原始的基礎(chǔ)上加以擴(kuò)展來達(dá)到我們個性化功能的開發(fā),除此之外easyui還對一下常用的jQuery方法進(jìn)行了分裝可以很簡單的時(shí)候web項(xiàng)目開發(fā)過程中前后要的交互。二、開發(fā)工具與環(huán)境介紹CentOS操作系統(tǒng)

CentOS全成munityENTerpriseOperatingSystem,又被很多人成為“社區(qū)企業(yè)操作系統(tǒng)”,是linux的發(fā)行版之一。CentOS是Redhat企業(yè)版產(chǎn)品RHEL的克隆版,但是CentOS是不收費(fèi)的,CentOS具有以下四個特點(diǎn):1.環(huán)境比較穩(wěn)定2.有穩(wěn)定的開發(fā)團(tuán)隊(duì)提供長久的免費(fèi)的更新支持3.具有保守性4.性能比較好,就算是大規(guī)模的系統(tǒng)也能保持良好的性能Eclipse工具Eclipse是一款開源的Java開發(fā)工具,Eclipse系列里面有很多版本,比如說支持PHP,andriod等開發(fā)的專門的Eclipse版本。而且Eclipse可擴(kuò)展能力比較強(qiáng),可以給里面做各種插件,比如說我們熟知的SSH插件,在這Eclipse具有很好的提示和查找功能,給我們的開發(fā)帶來了很多的便利之處。當(dāng)前Eclipse也有收費(fèi)的不開源,但是提供了很多插件的開發(fā)工具myEclipse。系統(tǒng)環(huán)境搭建基礎(chǔ)環(huán)境搭建本系統(tǒng)的開發(fā)運(yùn)行環(huán)境都是基于虛擬機(jī)安裝的CentOS系統(tǒng),安裝JDK和配置環(huán)境變量1解壓jdk首先在user目錄下創(chuàng)建一個Java文件夾,然后將執(zhí)行tar-zxvfjdk-7u55-linux-i586.tar.gz-C/usr/Java/語句將jdk安裝到Java目錄下 2將Java添加到環(huán)境變量中 執(zhí)行vim/etc/profile命令打開配置文件在文件最后加入以下兩句話配置環(huán)境exportJAVA_HOME=/usr/Java/jdk1.7.0_55exportPATH=$PATH:$JAVA_HOME/bin然后執(zhí)行source/etc/profile刷新環(huán)境配置Hadoop集群搭建 1.配置hadoop,搭建Hadoop偽分布式,需要修改一下五個配置文件內(nèi)容: 第一個:hadoop-env.sh,配置jdk路徑,Hadoop開發(fā)依賴于jdk vimhadoop-env.sh exportJAVA_HOME=/usr/Java/jdk1.7.0_65 第二個:core-site.xml配置HDFS中NameNode的地址 <property> <name>fs.defaultFS</name> <value>hdfs://hadoop01:9000</value> </property> <!--指定hadoop運(yùn)行時(shí)產(chǎn)生文件的存儲目錄--> <property> <name>hadoop.tmp.dir</name> <value>/itcast/hadoop-2.4.1/tmp</value></property> 第三個:hdfs-site.xml配置HDFS數(shù)據(jù)存儲是,備份副本的數(shù)量 <property> <name>dfs.replication</name> <value>1</value></property> 第四個:mapred-site.xml指定mr運(yùn)行在yarn上 <property> <name></name> <value>yarn</value></property>第五個:yarn-site.xml,配置yarn的管理者ResourceManager的地址 <property> <name>yarn.resourcemanager.hostname</name> <value>itcast01</value></property> <!--reducer獲取數(shù)據(jù)的方式--><property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value></property> 2將hadoop添加到環(huán)境變量 vim/etc/proflie exportJAVA_HOME=/usr/Java/jdk1.7.0_65 exportHADOOP_HOME=/soft/hadoop-2.4.1 exportPATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin source/etc/profile 3格式化namenode(是對namenode進(jìn)行初始化) hdfsnamenode-format(hadoopnamenode-format) 4.配置ssh免登陸首先生成ssh免登陸密鑰 然后到我的home目錄 cd~/.ssh ssh-keygen-trsa(四個回車) 執(zhí)行完這個命令后,會生成兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)將公鑰拷貝到要免登陸的機(jī)器上 ssh-copy-idlocalhostHbase安裝與配置HBase安裝完成后修改一下配置文件:1修改hbase-env.sh exportJAVA_HOME=/usr/Java/jdk1.7.0_55 告訴hbase使用外部的zookeeper exportHBASE_MANAGES_ZK=false2vimhbase-site.xml <configuration> <!--指定hbase在HDFS上存儲的路徑--><property><name>hbase.rootdir</name><value>hdfs://ns1/hbase</value></property> <!--指定hbase是分布式的--><property><name>hbase.cluster.distributed</name><value>true</value></property> <!--指定zk的地址,多個用“,”分割--><property><name>hbase.zookeeper.quorum</name><value>hadoop01:2181,hadoop02:2181</value></property> </configuration>Hive安裝與配置1.安裝和配置Hive查詢以前安裝的mysql相關(guān)包rpm-qa|grepmysql暴力刪除這個包 rpm-emysql-libs-5.1.66-2.el6_3.i686--nodeps rpm-ivhMySQL-server-5.1.73-1.glibc23.i386.rpm rpm-ivhMySQL-client-5.1.73-1.glibc23.i386.rpm 執(zhí)行命令設(shè)置mysql /usr/bin/mysql_secure_installation 執(zhí)行一下語句,將Hive添加到環(huán)境變量當(dāng)中 GRANTALLPRIVILEGESONHive.*TO'root''%'IDENTIFIEDBY'123'WITHGRANTOPTION;2.利用sqoop將mysq當(dāng)中的數(shù)據(jù)直接導(dǎo)入到Hive當(dāng)中 sqoopimport--connectjdbc:mysql://0:3306/test--usernameroot--passwordroot--tableuser_info--Hive-import--Hive-overwrite--Hive-tableuser_info--fields-terminated-by'\t'論文整體設(shè)計(jì)結(jié)構(gòu)一、系統(tǒng)設(shè)計(jì)思想本項(xiàng)目通過JavaEE+Hadoop+Hive技術(shù),設(shè)計(jì)并實(shí)現(xiàn)一個簡單的用戶畫像的web界面系統(tǒng),系統(tǒng)通過后臺數(shù)據(jù)操作得出的結(jié)果,將其以界面形式反映到前臺,決策者可以根據(jù)系統(tǒng)提供的圖表等信息對整個平臺下客戶的忠誠度,所屬區(qū)域,訪客的跳出率等幾個方面對客戶進(jìn)行初次的總結(jié)歸納,最后知道企業(yè)的整體營銷措施。二、論文結(jié)構(gòu)安排第一章主要介紹了本設(shè)計(jì)的選題背景、選題意義、然后再介紹開發(fā)所使用的語言與軟件工具,再者介紹個整個系統(tǒng)的環(huán)境搭建,最后介紹本論文的整體結(jié)構(gòu)安排。第二章主要介紹了系統(tǒng)整體的需求分析,然后根據(jù)需求寫出初步的概要設(shè)計(jì)。首先對系統(tǒng)進(jìn)行簡單的需求分析、可行性研究分析,然后接著介紹本總體結(jié)構(gòu)、功能模塊設(shè)計(jì),最后對界面進(jìn)行簡單描述。第三章主要介紹介紹了用戶畫像的詳細(xì)實(shí)現(xiàn)過程,在需求分析和概要設(shè)計(jì)之上更加詳細(xì)的設(shè)計(jì)和實(shí)現(xiàn)部分系統(tǒng)功能,其次進(jìn)行功能模塊流程圖設(shè)計(jì),并對一些關(guān)鍵的地方進(jìn)行代碼的說明,最后對整個系統(tǒng)的界面做一下簡單的說明與介紹。第四章主要介紹了系統(tǒng)測試的方法與步驟。首先簡單介紹了系統(tǒng)測試的目的、意義及步驟,然后根據(jù)系統(tǒng)測試要求對本系統(tǒng)進(jìn)行某些模塊的測試。第五章是總結(jié)與展望。對本系統(tǒng)開發(fā)與設(shè)計(jì)過程中遇到的問題和難點(diǎn),還有自己所收獲到的東西進(jìn)行總結(jié),并對自己以后的職業(yè)生涯和努力方向加以重定向、或者進(jìn)行階段性的計(jì)劃。

系統(tǒng)需求分析與概要設(shè)計(jì)在這一章里面我們對用戶畫像這整個系統(tǒng)進(jìn)行進(jìn)行需求分析,可行性研究,還有系統(tǒng)的總體結(jié)構(gòu)介紹和和分模塊介紹,最后對部分頁面進(jìn)行簡單的介紹。用戶畫像的需求分析本系統(tǒng)大的X圍劃分總共分為兩塊:1.后臺數(shù)據(jù)處理與分析采用Hadoop+Hive進(jìn)行數(shù)據(jù)分析與數(shù)據(jù)倉庫的建模,系統(tǒng)分析元數(shù)據(jù)來源于mysql數(shù)據(jù)庫2.前臺顯示運(yùn)用了JavaEE+JfreeChar+Echarts技術(shù),對后臺分析數(shù)據(jù)進(jìn)行前臺展示。本系統(tǒng)利用這樣的總體結(jié)構(gòu)對整個用戶畫像進(jìn)行開發(fā)與設(shè)計(jì),使之能夠初步實(shí)現(xiàn)對電商客戶的初步分析以及對領(lǐng)導(dǎo)者決策進(jìn)行幫助。首先我們從系統(tǒng)的后臺數(shù)據(jù)處理進(jìn)行分析,我們利用Hive進(jìn)行數(shù)據(jù)分析,將整個平臺的與客戶相關(guān)的數(shù)據(jù)分為了以下的七X表進(jìn)行數(shù)據(jù)分析與數(shù)據(jù)結(jié)構(gòu)化存儲:客戶消費(fèi)訂單表根據(jù)客戶的消費(fèi)情況提取用戶標(biāo)簽用于了解用戶的消費(fèi)總體情況,以根據(jù)用戶的消費(fèi)習(xí)慣和消費(fèi)能力來進(jìn)行營銷行為。數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:訂單表,退貨表,購物車表,用戶表??蛻糍徺I類目表根據(jù)客戶購買類目的情況來提取用戶標(biāo)簽用于了解購買人群情況和某一類目的營銷策略數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:訂單表,類目維表,購物車表??蛻糍徺I商店表根據(jù)客戶購買商店來提取用戶標(biāo)簽用于了解商店及品牌的購買人群情況常用來用作某一商店或者某一品牌的營銷數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:訂單表,退貨表,購物車表,商店表。客戶基本屬性表根據(jù)用戶所填寫的屬性標(biāo)簽與推算出來的屬性用于了解用戶的人口屬性的基本屬性和按屬性統(tǒng)計(jì)按人口屬性進(jìn)行營銷,例如金牛座的優(yōu)惠和生日優(yōu)惠數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:用戶表,用戶調(diào)查表,孕歸模型表,馬甲模型表,用戶價(jià)值模型表??蛻魻I銷信息表將用戶營銷相關(guān)的常用標(biāo)簽放到一X表中,方便使用數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:用戶表,訂單表,用戶價(jià)值模型表,購物車表,客戶品類分群模型表,活動表。客戶活動信息表根據(jù)客戶參與的活動的情況提取的客戶標(biāo)簽用戶了解用戶的對活動的參與情況,以進(jìn)行活動的策劃或者根據(jù)對活動不同敏感度的人群做營銷數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:訂單表,活動表,活動訂單表,用戶表。客戶訪問信息表根據(jù)客戶訪問的情況提取的客戶標(biāo)簽用戶了解用戶的訪問總體情況,以根據(jù)用戶瀏覽的習(xí)慣做營銷數(shù)據(jù)來源于mysql數(shù)據(jù)庫中的:PC端PV表,PC端view表,APP端PV表,APP端view表。然后進(jìn)行前臺顯示界面功能的分析,在前端我們要用圖表加數(shù)據(jù)的模式展示給用戶或者決策者,主要以一下幾個方面進(jìn)行展示:系統(tǒng)管理模塊在這個模塊里面我們就主要對用戶畫像前端系統(tǒng)的一個管理和配置,主要包括,菜單管理,系統(tǒng)用戶管理,和角色管理,當(dāng)然在這個里面也對整個系統(tǒng)的權(quán)限進(jìn)行管理。用戶行為分析在這個模塊里面我們就針對用戶的一些行為進(jìn)行分析,然后得到具體的數(shù)據(jù),主要從用戶的跳出率,忠誠度,活躍度等幾個方面對用戶進(jìn)行分析。客戶分析在這個模塊里面我們就根據(jù)訪客所在的地域信息,訪客使用的終端環(huán)境,還有訪客訪問速度等幾個方面進(jìn)行分析。可行性分析每個軟件的開發(fā)過程中都會受到各種條件限制,比如說資源,時(shí)間,技術(shù),資金等制約因素。所以在每個軟件開發(fā)之間我們都要對這個軟件各個方面進(jìn)行調(diào)查出一份比較權(quán)威的可行性分析研究報(bào)告,看這個軟件開發(fā)各個方面條件是否滿足,對于商業(yè)軟件來說主要還是這個軟件的開發(fā)是否盈利,是否成本大于盈利等等各個方面進(jìn)行權(quán)衡。在軟件開發(fā)之前進(jìn)行可行性的研究可以避免軟件開發(fā)風(fēng)險(xiǎn),避免人力,資源等方面的浪費(fèi)。下面我們就這幾個方面進(jìn)行簡要的可行性分析。技術(shù)可行性本系統(tǒng)在后臺服務(wù)方面利用了CentOS和Hadoop+Hive因?yàn)楝F(xiàn)在是大數(shù)據(jù)時(shí)代,我為了提高自身能力所以自學(xué)了大數(shù)據(jù)方面知識,其中就包括Hadoop+Hive,而且對于linux操作系統(tǒng)我們在大學(xué)課程里面學(xué)了操作這門可能講的linux操作系統(tǒng)所以在后臺服務(wù)方面技術(shù)上是可行的。本系統(tǒng)的前臺展示頁面使用的JavaEE技術(shù),在大學(xué)課程里面我們既學(xué)習(xí)了JavaSE也學(xué)習(xí)了JavaEE并且本人從事Java開發(fā)行業(yè)也一年多了所以在這方面還是比較有經(jīng)驗(yàn)的所以技術(shù)上也是可行的。對于easyui前端顯示框架和Echarts圖表插件而言,他們兩都是輕量級的,并且在官網(wǎng)上都有所對應(yīng)的案例,所以學(xué)習(xí)起來也比較容易,再者在前面公司做項(xiàng)目是也用到了這兩個框架,所以整理而言在技術(shù)方面也是可行的。再者UML圖,我們在大學(xué)階段開設(shè)過軟件工程這門課學(xué)的就是uml圖的制作和整個軟件開發(fā)流程,在上課時(shí)我們也學(xué)會了利用visio等工具畫uml圖,所以在技術(shù)上也是可行的。綜上所述,我們可得出結(jié)論本系統(tǒng)的開發(fā)在技術(shù)上是可行的。經(jīng)濟(jì)可行性本系統(tǒng)開發(fā)使用的IDE,環(huán)境還有開發(fā)語言都是開源的,所以在整個開發(fā)成本上節(jié)約了很多資源。法律可行性由于本系統(tǒng)開發(fā)過程中使用的開發(fā)語言,開發(fā)環(huán)境這些都是采用開源項(xiàng)目,所以不涉及問題,而且本系統(tǒng)不會用于商業(yè)用途,當(dāng)然也不會泄露企業(yè)內(nèi)部信息,所以軟件整體而言在法律上是可行的。操作可行性本系統(tǒng)后臺數(shù)據(jù)不需要用戶進(jìn)行操作,用戶或者決策者所能接觸到的只是前臺的數(shù)據(jù)分析成果展示,所以在操作上沒有什么難度,主要是需要用戶操作的地方和專業(yè)名詞都有相應(yīng)的備注。用戶只需要有一臺電腦,能夠聯(lián)網(wǎng)就可以對系統(tǒng)進(jìn)行操作,所以系統(tǒng)整體而言操作簡單符合操作可行性。系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)是由JavaEE和Hadoop開發(fā),其中數(shù)據(jù)分析采用Hadoop,在數(shù)據(jù)分析時(shí)需要計(jì)算出用戶的各種行為等,比如說用戶的跳出率的計(jì)算,用戶忠誠度的分析方法,還有用戶對商品打折促銷等電商進(jìn)行的促銷活動的敏感度,用戶價(jià)值的潛力等各個方面的計(jì)算與分析,在系統(tǒng)前端用JavaEE做的前臺展示效果,側(cè)重于整個系統(tǒng)權(quán)限的管理還有對用戶行為,地域等信息進(jìn)行分析。本系統(tǒng)達(dá)到的效果是使電商更加了解客戶,理解客戶的真正需求,然后分種類,分地域,分人群進(jìn)行產(chǎn)品的推銷,已達(dá)到客戶滿意度最高,也可以使電商獲得最大利潤。系統(tǒng)的整體框架圖如圖2-1所示。圖2-1用戶畫像整體框架圖本系統(tǒng)分為后臺數(shù)據(jù)分析和前臺分析結(jié)果展示,后臺數(shù)據(jù)分析主要是為了數(shù)據(jù)挖掘工程師用來研究和統(tǒng)計(jì),建模用的,前臺是展示給一般系統(tǒng)用戶看的,這個主要是提供給企業(yè)內(nèi)部,領(lǐng)導(dǎo)者,或者公司內(nèi)部做營銷等專家作分析,并在分析的基礎(chǔ)上領(lǐng)導(dǎo)企業(yè)的發(fā)展方向和以后生產(chǎn)產(chǎn)品定向。系統(tǒng)后臺全是數(shù)據(jù)的分析和算法,基本上是供程序員使用的,后臺通過Hive簡歷的七X表對整個企業(yè)客戶的消費(fèi)行為,購買能力等方面進(jìn)行分析,統(tǒng)計(jì)生成數(shù)據(jù)。而統(tǒng)計(jì)數(shù)據(jù)來源于企業(yè)以前系統(tǒng)用來儲存數(shù)據(jù)的數(shù)據(jù)庫mysql中的表。整個后臺的整個功能就是數(shù)據(jù)倉庫建模,根據(jù)一定的算法模型計(jì)算出客戶消費(fèi)訂單表,客戶購買類目表,客戶購買商店表,客戶基本屬性表,客戶營銷信息表,客戶活動表,客戶訪問信息表七X表。這七X表分別從不同的方向統(tǒng)計(jì)了用戶在購買能力,區(qū)域分布,忠誠度,敏感指數(shù)等方面的值,對用戶潛在價(jià)值進(jìn)行挖掘與分析。同時(shí)后臺還進(jìn)行很多算法模型的設(shè)置和分析例如:潛在汽車消費(fèi)模型現(xiàn)在大多數(shù)電商都具有汽車頻道,對用戶的汽車模型也很關(guān)心,如表2-1所示。表2-1汽車消費(fèi)模型表用戶是否有車0:未識別1:是根據(jù)用戶是否購買汽車相關(guān)的產(chǎn)品來判斷用戶是否有車潛在汽車用戶0:未識別1:是用戶瀏覽或者搜索汽車相關(guān)的產(chǎn)品進(jìn)行判斷用戶價(jià)值模型體現(xiàn)用戶對的價(jià)值,對于提高用戶留存率非常重要使用FRM實(shí)現(xiàn)用戶價(jià)值模型參考指標(biāo)最近一次消費(fèi)時(shí)間或者最后一次消費(fèi)至今時(shí)間消費(fèi)頻率消費(fèi)金額用戶忠誠度模型忠誠度越高的用戶越多,對的發(fā)展有利,如表2-2所示表2-2用戶忠誠度模型表用戶忠誠度忠誠型用戶偶爾型用戶投資型用戶瀏覽型用戶未識別瀏覽型用戶:只瀏覽沒購買購買天數(shù)大于一定天數(shù)的直接判斷為忠誠用戶購買天數(shù)小于一定天數(shù)的大部分有優(yōu)惠才購買的其他類型根據(jù)購買天數(shù),購買最后一次距今時(shí)間,購買金額進(jìn)行聚類客戶活躍狀態(tài)模型注冊未購買(只注冊沒購買,多是第三方登錄)活躍(可以分為高頻,中頻,低頻,或者直接最近六十天有購買者)沉睡(近九十天購買了,近六十天沒有購買)流失(近九十天無購買,曾經(jīng)購買過)疑似馬甲模型馬甲是指一個用戶注冊多個賬號多次訪問ip地址想的用戶賬號是同一個人所有同一臺手機(jī)登錄多次的用戶賬號是一個人所有收貨手機(jī)號相同的賬號是同一個所有以上幾個模型是其中比較典型的幾個分析模型,我們的整個數(shù)據(jù)分析都是在這些模型的基礎(chǔ)上生成的和操作的。本系統(tǒng)前臺主要功能有菜單管理,用戶管理,角色管理,跳出率,忠誠度,活躍度,訪客流失度,地域分析,速度分析,客戶端分析等,如表2-3所示。表2-3系統(tǒng)功能表用戶管理實(shí)現(xiàn)對新添用戶,給用戶賦予角色,和編輯用戶基本信息,刪除用戶等功能。菜單管理對系統(tǒng)的左側(cè)菜單進(jìn)行管理,實(shí)現(xiàn)增刪改查等功能。角色管理一個系統(tǒng)可以具有多個角色,而每個角色又具有不同的權(quán)限,在這個模塊里面實(shí)現(xiàn)了對角色的增刪改查的功能,除此之外,還有給角色賦予權(quán)限和修改權(quán)限等功能。跳出率利用折線圖對客戶跳出率進(jìn)行展現(xiàn),同時(shí)在圖表下面配有查詢的數(shù)據(jù)集做圖表作為支持。忠誠度利用餅狀圖對用戶忠誠度進(jìn)行展現(xiàn),同時(shí)在圖表下面配有查詢的數(shù)據(jù)集做圖表作為支持。活躍度利用折現(xiàn)圖對用戶活躍度進(jìn)行展現(xiàn),同時(shí)在圖表下面配有查詢的數(shù)據(jù)集做圖表作為支持。在這個模塊里面還統(tǒng)計(jì)了用戶流失率的統(tǒng)計(jì),同時(shí)也有相應(yīng)的數(shù)據(jù)作為對圖表的支持。地域分析利用餅狀圖對用戶所在地域等信息進(jìn)行展現(xiàn),同時(shí)在圖表下面配有查詢的數(shù)據(jù)集做圖表作為支持。速度分析利用地圖對每個地方用戶的訪問速度進(jìn)行分析,同時(shí)在地圖下面配有查詢的數(shù)據(jù)集做圖表作為支持??蛻舳朔治隼蔑灎顖D對用戶訪問所使用的瀏覽器和操作系統(tǒng)進(jìn)行分析。同時(shí)在圖表下面配有查詢的數(shù)據(jù)集做圖表作為支持。系統(tǒng)功能模塊設(shè)計(jì)系統(tǒng)用例圖分析用例圖是在整個軟件或系統(tǒng)開發(fā)的分析階段,常用來描述整個的或系統(tǒng)的整體功能,是軟件開發(fā)中的一種可視化的建模語言。用例圖由三部分組成,分別是參與者,用例,以及參與者與用例之間關(guān)系的線或箭頭。參與者,是指系統(tǒng)以外的操作系統(tǒng)或者與系統(tǒng)發(fā)生交互的人。用例,是指整個系統(tǒng)的功能模塊。在畫用例圖時(shí)一般小人表示參與者,橢圓形圖標(biāo)表示用例。用例圖只是展示整個系統(tǒng)功能模塊和操作人的關(guān)系,并不是介紹代碼。本系統(tǒng)利用用例圖展示系統(tǒng)前臺的功能模塊和操作者的關(guān)系。超級管理員可以操作:菜單管理,用戶管理,角色管理,用戶行為分析,用戶訪客分析等整個功能,而普通用戶或者一般決策者只能使用用戶行為分析,用戶訪客行為等非系統(tǒng)管理功能模塊。本系統(tǒng)的總體用例圖如下圖2-2:圖2-2系統(tǒng)總體用例圖系統(tǒng)功能模塊分析根據(jù)前面的對本系統(tǒng)的需求分析,我們可將整個系統(tǒng)分為三塊,系統(tǒng)管理,用戶行為,訪客分析。以下對每個模塊進(jìn)行介紹:系統(tǒng)管理系統(tǒng)管理,管理的是整個系統(tǒng)的配置信息,比如說權(quán)限管理,系統(tǒng)菜單管理,用戶管理等等。(1)用戶管理:由于本系統(tǒng)是公司或企業(yè)內(nèi)部系統(tǒng),所以不存在注冊等信息,本系統(tǒng)的用戶管理包括:新用戶的添加(只有超級管理員才有權(quán)限),用戶角色的分配,還有用戶基本信息的修改,例如修改密碼等等功能。(2)用戶登陸:系統(tǒng)里面已經(jīng)存在的用戶,可以根據(jù)自己的賬號和密碼,同時(shí)輸入系統(tǒng)自動生成的驗(yàn)證碼,當(dāng)這些信息都對的時(shí)候才能登錄系統(tǒng)。進(jìn)入系統(tǒng)后系統(tǒng)會根據(jù)用戶的不同角色顯示不同的菜單和數(shù)據(jù),同時(shí)支持登錄用戶修改自己密碼的功能。(3)角色管理:此功能只有超級管理員才能用,在這塊里面用戶可以建立不同的角色,比如說超級管理員,一般用戶等等信息,除此之外還可以對角色信息分條件查看,刪除,修改等功能,在這個里面最重要的就是給不同的角色授予不同的權(quán)限。(4)菜單管理:這個模塊只有在建系統(tǒng)或者系統(tǒng)功能變更或者系統(tǒng)新添加或去除功能的時(shí)候才會用到,因?yàn)檫@個涉及到寫代碼,建立后臺處理了。當(dāng)然我們在本系統(tǒng)中對此功能也是進(jìn)行了添加修改,刪除,查看等功能。用戶行為模塊用戶行為模塊主要包括對用戶的行為分析,包括用的使用的跳出率,用戶忠誠度,用戶的活躍度等信息。注:①跳出率:跳出者是指訪問量只有一頁(即PV(pageview)是1)訪問者。此類訪問者所占的比例越高,說明的對他們沒有太高的吸引力。跳出率是指單頁訪問次數(shù)(即訪問者從進(jìn)入頁面離開的訪問次數(shù))所占的百分比。跳出率是衡量訪問質(zhì)量的指標(biāo),跳出率較高通常表示進(jìn)入頁(目標(biāo)網(wǎng)頁)與訪問者相關(guān)性不強(qiáng)。我們可以針對每個關(guān)鍵字和我們投放的廣告來調(diào)整目標(biāo)網(wǎng)頁,從而最大程度地降低跳出率。目標(biāo)網(wǎng)頁應(yīng)提供廣告中承諾的信息和服務(wù)。②忠誠度:回訪次數(shù),距離上次訪問超過12小時(shí)的再次訪問,被記錄為一次回頭。該功能有助于站長了解站點(diǎn)粘性和用戶忠誠度。忠誠的訪問者通常對我們的品牌有較高的興趣,大量的重復(fù)訪問表示客戶為優(yōu)質(zhì)客戶并且有較好的訪問者保持力。新訪問者量大表示對訪問者有強(qiáng)烈的吸引力。(1)跳出率:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的跳出率菜單,該功能在界面上顯示功能主要包括,根據(jù)時(shí)間查詢一個時(shí)間段內(nèi)的訪客量和跳出訪客量,然后做成折線圖進(jìn)行展示,并提供相應(yīng)的數(shù)據(jù)支持。(2)忠誠度:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的忠誠度菜單,該功能在界面上顯示功能主要包括,根據(jù)時(shí)間查詢一個時(shí)間段內(nèi)的訪問次數(shù)和比例,然后制成餅狀圖進(jìn)行顯示,并提供相應(yīng)的數(shù)據(jù)支持。(3)活躍度:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的活躍度菜單,該功能在界面上顯示功能主要包括,根據(jù)時(shí)間查詢一個時(shí)間段內(nèi)的活躍訪客量,當(dāng)然在這個模塊里面我們也添加了查看流失訪客的數(shù)量,然后做成折線圖進(jìn)行展示,并提供相應(yīng)的數(shù)據(jù)支持。訪客分析該模塊里面主要是針對客戶地理位置,訪客瀏覽速度,和訪客所使用客戶端類型等幾個方面從客觀角度,對客戶進(jìn)行分析。(1)地域分布:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的地域分布菜單,可以使決策者直觀的看出我們現(xiàn)在的客戶主要來自哪里,等地域分布情況。根據(jù)用戶自己設(shè)定的時(shí)間查詢不用地區(qū)客戶的訪問量和占總訪問量的百分比等信息,將統(tǒng)計(jì)結(jié)果利用餅狀圖顯示,并提供的相應(yīng)的數(shù)據(jù)支持。(2)速度分布:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的速度分布菜單,查詢每個地方的訪客訪問速度等信息,最終在前臺用一X地圖作為圖表,顯示不同地區(qū)訪問速度等數(shù)據(jù),直觀大方同時(shí)提供相應(yīng)的數(shù)據(jù)支持。(3)客戶端分析:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的客戶端分析菜單,查詢并統(tǒng)計(jì)用于使用的不同客戶端信息,如瀏覽器版本,不同瀏覽器,操作系統(tǒng)等,然后將統(tǒng)計(jì)數(shù)據(jù)制作成餅狀圖進(jìn)行顯示,提供相應(yīng)的數(shù)據(jù)支持。(4)移動端分析:根據(jù)后臺Hive數(shù)據(jù)統(tǒng)計(jì)的數(shù)據(jù)建立用戶的移動端分析菜單,查詢并統(tǒng)計(jì)用于使用的不同移動端信息,如移動版版本,手機(jī)型號等,然后將統(tǒng)計(jì)數(shù)據(jù)制作成餅狀圖進(jìn)行顯示,提供相應(yīng)的數(shù)據(jù)支持。系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)本章主要介紹了詳細(xì)實(shí)現(xiàn)過程,在上一章需求分析與概要設(shè)計(jì)的基礎(chǔ)之上首先進(jìn)行數(shù)據(jù)倉庫建模,其次進(jìn)行功能模塊流程圖設(shè)計(jì),再次對功能模塊的實(shí)現(xiàn)過程與代碼進(jìn)行詳細(xì)說明,最后對本的大體結(jié)構(gòu)進(jìn)行簡單介紹。數(shù)據(jù)倉庫建模數(shù)據(jù)倉庫概述數(shù)據(jù)倉庫從本質(zhì)上來講是一種工具或者整個企業(yè)內(nèi)數(shù)據(jù)集成環(huán)境。它是操作系統(tǒng)過渡到?jīng)Q策者為了決策而用的支持系統(tǒng)[14]。在這個過程中它還解決了好多數(shù)據(jù)流相關(guān)的問題。這些問題主要包括以下幾類:如何從原來的操作系統(tǒng)中提取數(shù)據(jù)。如何把不同數(shù)據(jù)統(tǒng)一化,并且能夠提高性能等。二、數(shù)據(jù)倉庫表的概念結(jié)構(gòu)設(shè)計(jì)不管是數(shù)據(jù)庫建庫還是利用數(shù)據(jù)倉庫建模,建表,其實(shí)其最重要和最本質(zhì)的東西或者原型就是實(shí)體[15]。一個實(shí)體應(yīng)包含名稱和屬性等各個屬性。一個實(shí)體一般有其所特定的概念模型。概念模型的表示方法有很多,目前最常用的是實(shí)體-聯(lián)系(E-R)模型設(shè)計(jì)方法,實(shí)體-聯(lián)系模型一般使用E-R圖來表示,它使用不同形狀來分別表示實(shí)體、屬性、和聯(lián)系,其中實(shí)體用方框表示,代表用戶體中客觀存在的事務(wù);屬性使用橢圓來表示,描述了每個實(shí)體所有的特性;而實(shí)體間的聯(lián)系用菱形來表示[16]。根據(jù)上一章對系統(tǒng)的需求分析以及概要設(shè)計(jì),建立部分實(shí)體的ER圖,如圖3-1所示。圖3-1系統(tǒng)管理E-R圖三、數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)倉庫邏輯結(jié)構(gòu)設(shè)計(jì),這個階段是將上個階段完成的數(shù)據(jù)庫實(shí)體-屬性圖轉(zhuǎn)換成在Hive數(shù)據(jù)表里面可以建表的屬性和字段類型,屬性名等信息[17]。在實(shí)際應(yīng)用時(shí),應(yīng)先建立實(shí)體的物理模型,將模型關(guān)系和應(yīng)該包含的字段確定下來之后進(jìn)行數(shù)據(jù)倉庫表的建模。(1)系統(tǒng)用戶表,存放所有的系統(tǒng)用戶信息,表結(jié)構(gòu)如表3-1所示。表3-1普通用戶表(sys_user)字段名稱類型字節(jié)數(shù)描述Idint10用戶編號(主鍵)(自增)usernamestring32用戶名(非空)passwordstring32密碼(非空)emailstring64(非空)stateint4狀態(tài)(非空)addressstring64地址(可為空)sexstring6性別(可為空)phoneint20聯(lián)系(可為空)roleIdint4用戶角色(非空)userTypeint4用戶類型(非空)Remarkstring500備注(可為空)(2)系統(tǒng)菜單表,存放所有的系統(tǒng)菜單信息,表結(jié)構(gòu)如表3-2所示。表3-2系統(tǒng)菜單表(auth)字段名稱類型字節(jié)數(shù)描述cidint10菜單id(主鍵)(自增)authNamestring32菜單名(非空)authpathstring20對應(yīng)路徑(非空)parentIdint10父級菜單Id(可為空)iconstring50菜單圖標(biāo)(可為空)stateint4菜單狀態(tài)remarkstring500備注(可為空)(3)系統(tǒng)角色表,存放所有的角色信息,表結(jié)構(gòu)如表3-3所示。表3-3系統(tǒng)角色表(role)字段名稱類型字節(jié)數(shù)描述roleIdint10角色id(主鍵)(非空)roleNamestring32角色名稱(非空)authIdstring32菜單Id(非空)remarkstring500備注(可為空)(4)客戶消費(fèi)訂單表,存放所有的客戶消費(fèi)訂單的分析結(jié)果數(shù)據(jù),表結(jié)構(gòu)如表3-4所示。表3-4客戶消費(fèi)訂單表(user_portrait_order)字段名稱類型字節(jié)數(shù)描述user_idbigint20客戶IDfirst_order_timetimestamp第一次消費(fèi)時(shí)間last_order_timetimestamp最近一次消費(fèi)時(shí)間first_order_agobigint20首單距今時(shí)間last_order_agobigint20尾單距今時(shí)間month1_hg_order_tbigint20近三十天的購買次數(shù)month1_hg_order_amtdouble近三十天的購買金額month2_hg_order_tbigint20近六十天的購買次數(shù)month2_hg_order_amtdouble近六十天的購買金額month3_hg_order_tbigint20近六十天的購買次數(shù)month3_hg_order_amtdouble近九十天的購買金額max_order_amtdouble最大消費(fèi)金額min_order_amtdouble最小消費(fèi)金額total_order_tbigint20累計(jì)消費(fèi)次數(shù)total_order_amtdouble累計(jì)消費(fèi)金額total_coupondouble累計(jì)使用代金卷金額mon_addressstring200常用收貨地區(qū)mon_paytypestring200常用支付方式forenoon_order_tbigint上午下單總數(shù)afternoon_order_tbigint20下午下單總數(shù)night_order_tbigint20晚上下單總數(shù)(5)客戶購買類目表,存放所有客戶購買類目的分析數(shù)據(jù),表結(jié)構(gòu)如表3-5所示。表3-5客戶購買類目表(user_portrait_cat)字段名稱類型字節(jié)數(shù)描述user_Idbigint20客戶Idfirst_catbigint20一級分類IDfirst_cat_namestring20一級分類名稱second_catbigint20二級分類IDsecond_cat_namestring20二級分類名稱third_catbigint20三級分類IDthird_cat_namestring20三級分類名稱month1_cat_tbigint20近三十天購買類目次數(shù)month1_cat_amtdouble近三十天購買類目金額month2_cat_tbigint20近六十天購買類目次數(shù)month2_cat_amtdouble近六十天購買類目金額month3_cat_tbigint20近九十天購買類目次數(shù)month3_cat_amtdouble近九十天購買類目金額total_cat_tbigint20累計(jì)購買類目次數(shù)total_cat_amtdouble累計(jì)購買類目金額last_cat_timetimestamp最后一次購買類目時(shí)間(6)客戶購買商店表,存放商店近期的所有分析數(shù)據(jù)信息,表結(jié)構(gòu)如表3-6所示。表3-6客戶購買商店表(user_portrait_shop)字段名稱類型字節(jié)數(shù)描述user_idbigint20客戶Idshop_idbigint20商店IDshop_namestring50商店名稱brand_idbigint20品牌Idbrand_namestring20品牌名稱Month1_cart_tbigint20最近三十天購物車次數(shù)Month1_cart_goods_tbigint20最近三十天購物車商品件數(shù)Month1_cart_submit_goods_tbigint20最近三十天商品提交件數(shù)Month1_cart_ratebigint20最近三十天的交易成功率Month1_cart_cancel_tbigint20最近三十天的購物車取消商品數(shù)last_cart_timetimestamp最后一次購物車時(shí)間Month3_valid_goods_tbigint20最近九十天排除退據(jù)商品件數(shù)Month3_valid_goods_amtdouble最近九十天排除退據(jù)商品金額Month3_sales_tbigint20最近九十天購買訂單數(shù)Month3_cod_tbigint20最近九十貨到付款訂單數(shù)Month3_return_goods_tbigint20最近九十天的退貨數(shù)Month3_return_goods_amtdouble最近九十天的退貨金額Last_return_timetimestamp最后一次退貨時(shí)間(7)客戶屬性信息表,存放所有客戶屬性信息,表結(jié)構(gòu)如表3-7所示。表3-7客戶屬性信息表(user_portrait_basic)字段名稱類型字節(jié)數(shù)描述user_idint10客戶IdUser_namestring100客戶登錄名Sexstring10性別birthdaystring20生日Ageint4年齡constellationstring10星座big_area_namestring32大區(qū)域provincestring50省份Citystring50城市City_levelstring50城市等級Hex_mailstring50Hex_phonestring50加密手機(jī)Fore_phonestring50手機(jī)前幾位Op_phonestring50手機(jī)運(yùn)營商Add_timestring50注冊時(shí)間Login_ipstring50登錄IP地址Login_sourcestring200登陸來源Request_userstring50邀請人Total_markbigint20會員積分Used_markbigint20已使用積分Level_namestring20會員等級名稱Blacklistbigint20客戶黑Is_marriedbigint20婚姻狀況Educationstring50學(xué)歷Monthly_inedouble月收入Professionstring50職業(yè)Sex_modelbigint20性別模型Is_pregnant_womanbigint20是否為孕婦Is_have_childrenbigint20是否有小孩Children_sex_ratedouble20孩子性別概率Children_age_ratedouble20孩子年齡概率is_have_carbigint20是否有車Potential_car_user_ratedouble潛在汽車用戶概率Phone_brandstring50使用手機(jī)品牌Phone_brand_levelstring50使用手機(jī)品牌檔次Phone_tbigint20使用多少種不同手機(jī)Change_phone_ratedouble更換手機(jī)頻率majia_flagstring50疑似馬甲標(biāo)識Majia_account_tbigint20疑似馬甲賬號Loyal_modelbigint20用戶忠誠度Shopping_type_modelbigint20用戶購物類型Figure_modelbigint20身材Stature_modelbigint20身高(8)客戶營銷信息表,存放所有客戶營銷分析數(shù)據(jù)的表,表結(jié)構(gòu)如表3-8所示。表3-8客戶營銷信息表(user_portrait_market)字段名稱類型字節(jié)數(shù)描述User_idbigint20客戶IdTag_phonestring32營銷手機(jī)號First_order_timetimestramp32第一個有效訂單時(shí)間First_order_sourcestring200第一個有效訂單來源First_order_addressstring200第一個有效訂單地址First_order_citystring20第一個有效訂單城市First_order_provincestring20第一個有效訂單省份First_order_city_levelstring20第一個有效訂單城市等級Lastest_address_provincestring200最近一次收貨地址省份Lastest_address_citystring200最近一次收貨地址城市Lastest_phonestring20最近一次使用手機(jī)號mon_phonestring20 最常用的手機(jī)號mon_op_phonestring20最常用的手機(jī)運(yùn)營商Diff_phone_tbigint20使用不同手機(jī)號數(shù)Lastest_addressstring200最近一次使用收貨地址mon_addressstring200最常用的收貨地址Diff_address_tbigint20不同收貨地址數(shù)量Lastest_consigneestring200最近一次收貨人XXmon_consigneestring200最常用的收貨人XXDiff_consignee_tbigint20不同收貨人數(shù)量User_segmentstring200客戶分群:潮媽族,男人幫等等Monthly_activitystring20活躍狀態(tài)User_valuestring200 用戶價(jià)值模型Is_entanglement_goodsbigint20是否有糾結(jié)商品Entanglement_hourbigint20糾結(jié)時(shí)間Entanglement_goodsstring200糾結(jié)商品(9)客戶活動信息表,存放所有客戶活動分析數(shù)據(jù)的表,表結(jié)構(gòu)如表3-9所示。表3-9客戶活動信息表(user_portrait_active)字段名稱類型字節(jié)數(shù)描述user_idbigint20客戶IdUser_active_sensitivedouble用戶促銷敏感度reduction_active_sensitivedouble滿減促銷敏感度Swap_active_sensitivedouble換購促銷敏感度Gift_actve_sensitivedouble滿贈促銷敏感度Discount_active_sensitivedouble打折促銷敏感度Buy_sectiondouble購買力分段Brand_likestring200品牌偏好Cat_likestring200品類偏好Color_likestring200顏色偏好Sales_indexdouble敗家指數(shù)Impulsion_indexdouble沖動指數(shù)Total_recordbigint20累計(jì)積分Usable_recordbigint20可用積分Usered_recordbigint20已用積分Total_coupon_tbigint20累計(jì)代金券金額Total_coupon_amtdouble累計(jì)代金券數(shù)量Used_coupon_tbigint20已用代金券數(shù)量Used_coupon_amtdouble已用代金券金額Overdue_coupon_tbigint20過期代金券數(shù)量Overdue_coupon_amtdouble過期代金券金額usable_coupon_tbigint20可使用代金券數(shù)量usable_coupon_amtdouble可使用代金券余額(10)客戶訪問信息表,存放所有客戶訪問分析數(shù)據(jù)的表,表結(jié)構(gòu)如表3-10所示。表3-10客戶訪問信息表(user_portrait_visit)字段名稱類型字節(jié)數(shù)描述user_idbigint20客戶IdLastest_pc_visit_datestring200最近一次pc訪問時(shí)間Lastest_app_visit_datestring200最近一次app訪問時(shí)間Lastest_pc_visit_sessionstring200最近一次pc訪問sessionLastest_pc_cookiesstring200最近一次pc訪問cookiesLastest_pc_pvstring200最近一次pc訪問pvLastest_pc_borwser_namestring200最近一次pc訪問使用瀏覽器Lastest_pc_visit_osstring200最近一次pc訪問使用操作系統(tǒng)Lastest_app_namestring200最近一次app訪問名稱Lastest_app_visit_osstring200最近一次app訪問使用操作系統(tǒng)Lastest_visit_ipstring200最近一次訪問IPLastest_citystring200最近一次訪問城市Lastest_provincestring200最近一次訪問省份First_pc_visit_datestring200第一次pc訪問時(shí)間First_app_visit_datestring200第一次app訪問時(shí)間First_pc_visit_sessionstring200第一次pc訪問sessionFirst_pc_cookiesstring200第一次pc訪問cookiesFirst_pc_pvstring200第一次pc訪問pvFirst_pc_borwser_namestring200第一次pc訪問使用瀏覽器First_pc_visit_osstring200第一次pc訪問使用操作系統(tǒng)First_app_namestring200第一次app訪問名稱First_app_visit_osstring200第一次app訪問使用操作系統(tǒng)First_visit_ipstring200第一次訪問IPFirst_citystring200第一次訪問城市First_provincestring200第一次訪問省份Day7_pc_tbigint20近七天pc訪問次數(shù)Day15_pc_tbigint20近十五天pc訪問次數(shù)Month1_pc_tbigint20近三十天pc訪問次數(shù)Month2_pc_tbigint20近六十天pc訪問次數(shù)Month3_pc_tbigint20近九十天pc訪問次數(shù)Day7_app_tbigint20近七天app訪問次數(shù)Day15_app_tbigint20近十五天app訪問次數(shù)Month1_app_tbigint20近三十天app訪問次數(shù)Month2_app_tbigint20近六十天app訪問次數(shù)Month3_app_tbigint20近九十天app訪問次數(shù)Month1_pc_daysbigint20近三十天pc訪問天數(shù)Month1_pc_buy_tbigint20近三十天pc訪問并購買次數(shù)Month1_pc_pvbigint20近三十天pc訪問pvMonth1_pc_avg_pvbigint20近三十天pc訪問平均pvMonth1_pc_diff_ip_tbigint20近三十天使用不同IP次數(shù)Month1_pc_mon_ipstring50近三十天pc使用相同的IPMonth1_pc_mon_cookies_tbigint20近三十天pc使用相同的cookie數(shù)Month1_pc_mon_browser_namestring200近三十天pc最常用的瀏覽器名稱Month1_pc_mon_osstring200近三十天pc訪問最常用的操作系統(tǒng)系統(tǒng)部分功能模塊流程圖設(shè)計(jì)功能模塊是指本系統(tǒng)所含有的所有功能的設(shè)計(jì),比如說功能說明,功能設(shè)計(jì)[18]。流程圖設(shè)計(jì)等?,F(xiàn)在軟件開發(fā)都是把一個大的系統(tǒng)分成一塊一塊的進(jìn)行開發(fā),每個功能都是獨(dú)自實(shí)現(xiàn)的,也就是我們這個模塊修改,理論上來說不影響其他模塊,而最后這個一個個的小模塊又組成了整個大的系統(tǒng)。下面我們就系統(tǒng)功能里面的幾個模塊內(nèi)容進(jìn)行具體的分析和流程圖設(shè)計(jì)。系統(tǒng)整體流程圖系統(tǒng)的整體流程圖描述整個系統(tǒng)功能和權(quán)限的設(shè)定這些信息。整體功能流程圖如圖3-2所示:圖3-2系統(tǒng)整體流程圖用戶登錄當(dāng)系統(tǒng)里面已存在賬號,進(jìn)入系統(tǒng)登錄界面輸入密碼賬號,驗(yàn)證碼,當(dāng)這些信息都通過是將會登錄成功,并將登錄人的信息放入session里面,進(jìn)行保存,以用戶系統(tǒng)其它地方應(yīng)用這些數(shù)據(jù)或者進(jìn)入其它頁面時(shí)進(jìn)行是否已登錄驗(yàn)證等作用,避免有些人在知道系統(tǒng)其它路徑的前提下隨便進(jìn)入系統(tǒng)對整個系統(tǒng)的數(shù)據(jù)這些重要信息隨意修改和破壞,同時(shí)登陸完之后,頁面將跳轉(zhuǎn)到系統(tǒng)的主頁面,并根據(jù)當(dāng)前用戶的角色這些賦予當(dāng)前用戶在系統(tǒng)里面的權(quán)限(包括數(shù)據(jù)權(quán)限和權(quán)限)。用戶登錄流程圖如圖3-3所示:圖3-3用戶登錄流程圖修改密碼用戶登錄系統(tǒng)之后再左邊菜單欄里面有一個修改密碼菜單,點(diǎn)擊菜單打開界面用戶就可以修改自己的登錄密碼了,當(dāng)然在修改密碼時(shí)還會有一定的限值,比如說輸入原始密碼,或者密碼確認(rèn)等。下面是用戶修改密碼的流程圖,如圖3-4所示:圖3-4用戶修改密碼流程圖部分功能模塊的實(shí)現(xiàn)說明下面我們具體介紹一下整個系統(tǒng)的部分功能的實(shí)現(xiàn)。用戶登錄在本系統(tǒng)中我們嚴(yán)格要求用戶登錄后才能進(jìn)行其他的操作,在登錄信息填寫完之后我們進(jìn)行將用戶和密碼插入后臺然后根據(jù)查詢相關(guān)數(shù)據(jù)庫中的表,查看表中是否有該條記錄,如果有登錄成功進(jìn)入系統(tǒng),如果沒有則返回提示消息并將頁面停留在當(dāng)前登錄頁面,實(shí)現(xiàn)代碼如下://建立User實(shí)體 Useruser=newUser(name,pwb); con=dbUtil.getCon();//獲取數(shù)據(jù)庫連接 Useruser1=userDao.login(con,user); if(user1==null){ request.setAttribute("error","用戶名或密碼錯誤!"); request.getRequestDispatcher("login.jsp").forward(request,response); }else{Stringrole=roleDao.getRoleNameById(con,user1.getRoleId()); user1.setRoleName(roleName); session.setAttribute("user1",user1); response.sendRedirect("main.jsp"); }二、用戶跳出率 在本系統(tǒng)中我們統(tǒng)計(jì)用戶的跳出率方法是先計(jì)算出當(dāng)前時(shí)間段里一共有多少訪客,跳出的有多少訪客,具體實(shí)現(xiàn)我們分兩步走,首先是根據(jù)查詢數(shù)據(jù)做出一個統(tǒng)計(jì)的折現(xiàn)圖,其次將查詢的數(shù)據(jù)集也返回到前臺顯示。下面兩端代碼分別是生成折線圖和最后的數(shù)據(jù)集合的代碼:1.生成折線圖的代碼,首先創(chuàng)建兩條線,然后將計(jì)算所得數(shù)據(jù)按照jfreechar所需要的格式放入這兩條線的對象中,然后設(shè)定所需要的格式,最后返回生成圖片的名字。 TimeSeriestimeSeries=newTimeSeries("訪客數(shù)",Day.class); TimeSeriestimeSeries2=newTimeSeries("跳出訪客",Day.class); //添加數(shù)據(jù) java.util.List<String>list=newArrayList<String>(); List<Date>dates=newArrayList<Date>(); while(rs1.next()){ Datedate=rs1.getDate("riqi"); dates.add(date); } for(Datedate:dates){ Map<String,Object>map=newHashMap<String,Object>(); StringBufferbuffer=newStringBuffer("{date:'"+date); doubleip=0,fangke=0,tiaochu=0; rs.first();whilewhile(rs.next()){ intlll=rs.getInt("lll"); if(date.pareTo(rs.getDate("riqi"))==0){ ip++;fangke++; if(lll==0||lll==1){ tiaochu++; } } } timeSeries.add(newDay(date),fangke); timeSeries2.add(newDay(date),tiaochu);} //定義時(shí)間序列的集合 TimeSeriesCollectionlineDataset=newTimeSeriesCollection(); lineDataset.addSeries(timeSeries); lineDataset.addSeries(timeSeries2); JFreeChartchart=ChartFactory.createTimeSeriesChart("訪客統(tǒng)計(jì)時(shí)間折線圖","日期","訪問量",lineDataset,true,true,true); //設(shè)置主標(biāo)題 chart.setTitle(newTextTitle("訪客統(tǒng)計(jì)對比圖",newFont("隸書",Font.ITALIC,15))); //設(shè)置子標(biāo)題 chart.setAntiAlias(true); //設(shè)置時(shí)間軸的X圍。 XYPlotplot=(XYPlot)chart.getPlot(); DateAxisdateaxis=(DateAxis)plot.getDomainAxis(); dateaxis.setDateFormatOverride(newjava.text.SimpleDateFormat("yyy

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論