版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
页摘要当今时代互联网发展非常迅猛,大数据也处于快速发展状态,各行各业或多或少都与大数据息息相关。随着互联网的发展和进步,也产生了巨量的交互数据信息。怎么在这海量的数据中搜索和提取出自己需要的信息变得非常重要。本文主要是运用到业界最好的大数据分析框架Spark,对乐器营销网站的日志进行实时和离线分析。为实现乐器全员营销搭建好基层建设,以在未来为更加先进的数据挖掘与数据分析提供健康的数据来源,从而获取更大的商机。本文使用了业界内非常成熟的Spark框架,具体是SparkStreaming、SparkSQL、SparkCore。运用这些非常流行而且强大的Spark框架进行离线数据的统计计算和实时数据的统计计算。本项目实现了四大模块,如用户访问Session离线分析、网页单跳转化率离线统计、热点商品离线统计、广告流量实时统计。关键词:乐器电商日志信息,Spark,离线统计,实时统计
AbstractNowadays,withtherapiddevelopmentofInternetandbigdata,allwalksoflifearemoreorlesscloselyrelatedtobigdata.WiththedevelopmentandprogressoftheInternet,ahugeamountofinteractivedatainformationhasbeengenerated.Howtosearchandextracttheneededinformationfromthemassivedatabecomesveryimportant.Thispapermainlyusesspark,thebestbigdataanalysisframeworkintheindustry,toanalyzethelogsofmusicalinstrumentmarketingwebsitesinrealtimeandoffline.Inordertoachievethegoalofbuildingagoodbasiclevelofmusicalinstrumentmarketing,inordertoprovidemoreadvanceddatamininganddataanalysiswithhealthydatasourcesinthefuture,soastoobtaingreaterbusinessopportunities.Thisarticleusesaverymaturesparkframeworkintheindustry,specificallysparkstreaming,sparkSQLandsparkcore.Thesepopularandpowerfulsparkframeworksareusedforofflinedatastatisticsandreal-timedatastatistics.Thisprojectimplementsfourmodules,suchasofflineanalysisofuservisitsession,offlinestatisticsofsinglehopconversionrateofwebpage,offlinestatisticsofhotgoods,andreal-timestatisticsofadvertisingtraffic.Keywords:Musicalinstrumente-commerceloginformation,Spark,statistics,real-timestatistics
目录TOC\o"1-3"\h\u25618摘要 112558Abstract 222997第一章绪论 58931.1课题背景 5248261.2目的和意义 696871.3论文结构安排 614639第二章项目框架 8111492.1项目整体框架 863282.2离线日志采集宏观流程 9266472.3实时日志采集宏观流程 9190152.4离线/实时日志采集框架 913309第三章数据分析 106363.1离线数据分析 1021283.2在线数据分析 121373第四章项目需求 1348084.1项目需求概述 13194574.2用户访问Session统计 13282494.3网页单跳转化率统计 1415304.4区域热点商品统计 14186994.5广告流量实时统计 154135第五章项目详细解析 16162175.1项目程序框架解析 16173805.1.2commons模块 16247775.1.3mock模块 16101705.1.3统计分析模块 18252095.2项目需求解析 1826155.2.1用户访问Session统计模块 18140795.2.2网页单跳转化率统计模块 242105.2.3区域热点商品统计模块 26159425.2.4广告流量实时统计模块 2821207第六章系统测试 3254536.1大数据测试的重要性 32226876.2大数据测试步骤 3333216.3大数据测试分析 3322952结论 3618518参考文献 362118致谢 37第一章绪论1.1课题背景近些年来,很多传统企业为了企业的发展运用到电子商务,线上开展营销策略,线上交易也非常频繁,而且产生的数据多样化和海量化,这些都是线下交易无法做到的,所以企业为了处理这些庞大的数据,因而也特别需要大数据技术这种的支持。近些年来,大数据这个词越来越火,逐渐引起每个人的关注。在2005年的时候,谷歌参加了美国官方举办的一个机器翻译大赛。谷歌当时使用了海量的相关数据,通过对海量数据的计算来进行翻译,最终夺得第一。在那之后大数据第一次走进了人们的视线。大数据简而言之,不是因为数据量大,数据能产生的实际价值。倘若拥有大量的数据,但它们是毫无规律的,那么就没有什么利用价值,也算不上是大数据。所以我们所比较关注的一点是如何运用庞大的数据,才使我们的生产力也将得到飞速的增长。对于大数据的运用,电子商务运用大数据也非常广泛。在电子商务行业领域中,电商相关信息达到PB、EB甚至ZB级别的也是很常见的。之前的计算机处理模式很难高效率地应对这种级别的数据,这必然会影响到电子商务事业的长远发展。因此基于大数据技术的计算机处理模式对电子商务行业的发展来说就是天降神器也毫不夸张。传统的数据处理模式是数据库集群模式,储存与计算机一身,很难做到解耦和扩展。而大数据处理模式依赖于Hadoop分布集群,可以利用HDFS进行高可用存储,运用MapReduce或Spark进行分布式高效计算。由于电商的大数据较为集中,而且数据的种类巨多,数据量也相当庞大。因此大数据也天然地适应于电子商务领域。利用大数据分析有利于商家更加了解消费者,有利于企业对库存的管理、生产规划管理、物流资源调配管理,有利于企业生产资源的合理配置,也有利于为企业进行一个长远规划。1.2目的和意义随着网购成为当代营销主流,传统的营销手段很多都已经被淘汰掉了。然而仍有一些经得住时间考量的营销策略。例如全员营销,这种营销理念如果放在十年前来说,是有点时代超前。因为当时的信息交流受到很大的限制,信息之间的流动缓慢。如果强行使用全员营销会动用很大的资源,对于当时来说,还不如简单点好。然而随着信息化时代已拉开帷幕,信息流通飞速发展,信息量也空前庞大。营销市场也正在取向性改革和发展。同理,我们的乐器营销市场也一样。本文所研究的是乐器营销这方面,我们的乐器营销如何应对这场营销变革呢?因此,有了这些需求,大数据也走入我们的视线,因为大数据确实能解决我们当前所面临的问题。特别是全员营销理念,如果其局限过去的信息不便,势必也会被淘汰,但是现在有了大数据就不一样了,大数据让信息之间的交流与计算分析的成本变得非常廉价,使得全员营销策略有了更多的想象空间和实现方式。利用好大数据,能更好地了解消费者的需求并提供相关渠道和物资,有利于持续提升乐器营销水平,从而为获得更大的盈利。因此针对传统乐器营销竞争力不足,提出基于海量数据进行全员营销策略,全面建立以客户为中心的价值传递及数据循环系统,让每一位员工成为爆点,使乐器行业平缓度过的大数据时代。目前关于出售乐器的电商有很多,但是暂时还没有一套真正利用乐器行业的特性提供可持续性、高效性、多维度性分析的大数据系统,以及利用大数据与全员营销策略无缝对接。因此,有必要开发一个拥有健康可持续性发展的大数据系统,让经营发现业务数据价值,以及获取业务数据的潜在商机。1.3论文结构安排本论文通过六章来进行详细的分析和描述本系统,主要包括项目概述、项目框架、数据分析、项目需求、项目详细解析与测试六个组成部分。下面分别对每个组成部分进行简单描述。首先,查阅基于大数据电商分析平台相关的参考文献,对项目进行从项目背景,发展现状,以及本项目的意义和目的等方面进行了详细的说明。
其次,对项目整体框架信息进行描述。
再次,对项目所需的离线和在线数据进行分析。
再次,明确项目的实际需求,例如Session离线统计、网页转化率统计、热点商品统计以及广告实时统计。再次,对项目根据各个需求进行详细解析。最后,对本系统进行一系列测试,通过测试用例来验证每个功能是否符合我们的需求。在本文末尾,总结完成本项目的大致工作以及本人对本项目的期望。第二章项目框架2.1项目整体框架本项目分为离线分析系统与实时分析系统两大模块,如图2-1所示:图2-1项目整体框架其中在离线分析系统中,将模拟生成的数据导入离线系统中,通过分析离线数据的特点以及业务需求特点做出相应数据筛选统计与分析。最后将统计计算分析结果保存到MySQL数据库中。最后在实时分析系统中,将模拟生成的数据写入Kafka集群中,实时分析系统从中获取数据,通过Spark技术实习技术与统计数据,最终将统计结果保存到MySQL数据库中。2.2离线日志采集宏观流程离线日志采集宏观流程,如图2-2所示:图2-2离线日志采集宏观流程2.3实时日志采集宏观流程实时日志采集宏观流程,如图2-3所示:图2-2实时日志采集宏观流程2.4离线/实时日志采集框架离线/实时日志采集框架,如图2-4所示:图2-4离线/实时日志采集框架图2-4是一个比较成熟的日志处理框架,通过Nginx服务器进行负载均衡处理规划路由,由Tomcat将数据传到各个机器的Flume中,之后各个机器的数据通过一个总的Flume写入Kafka集群中。离线系统将Kafka数据写入HDFS中,再Hive对HDFS中的数据进行计算与统计。而实时系统则将获取Kafka中的数据到Spark中,对Spark通过消费Kafka的数据进行快速实时计算与统计。第三章数据分析3.1离线数据分析user_visit_action表是存放用户每天点击的行为数据。例如有一个浏览一个网站,在网站上每点击一下,就会产生一条数据存放在这个表里面。user_visit_action表中的字段解释如表3-1-1所示:表3-1-1user_visit_action表字段解析字段名称说明date日期,代表这个用户点击行为是在哪一天发生的user_id用户ID,唯一地标识某个用户Session_idSessionID,唯一地标识某个用户的一个访问Sessionpage_id网页ID,点击了某些商品/品类,也可能是搜索了某个关键词,然后进入了某个网页,网页的idaction_time动作时间,这个点击行为发生的时间点search_keyword搜索关键词,用户输入搜索关键词,确认后就会跳转到相应的网页click_category_id点击品类id,用户在某个界面选择某个品类click_product_id点击商品ID,用户在网站或App的某个地方了某个产品order_category_ids下单品类ID,用户将某些商品一起加入购物车,然后下单order_product_ids下单商品ID,订单中包含了哪些商品pay_category_ids付款品类ID,对某个订单,或者某几个订单,进行了一次支付的行为,对应了哪些品类pay_product_ids付款商品ID,支付的是哪些具体的商品city_id城市ID,表示该用户行为发生在哪个城市user_info表,包含用户的基本信息。user_i表中的字段解释如表3-1-2所示:表3-1-2user_info表字段解析字段名称说明user_id用户id,唯一地标识某个用户username用户登录名name用户昵称或真实姓名age用户年龄professional用户职业city用户所在城市sex用户性别product_info表,是一张存放普通的商品基本信息表;在这张表里包含了网站或者App所有商品的基本信息,如表3-1-3所示:表3-1-3product_info表字段解析字段名称说明proudct_id商品id,唯一地标识某个商品product_name商品名称extend_info额外信息3.2在线数据分析程序每5秒向Kafka集群写入数据,格式如下:格式:timestampprovincecityuseridadid在线数据分析,如表3-2所示:表3-2在线数据分析字段名称取值范围timestamp当前时间毫秒userId0–99provice/city1–9((9L,"哈尔滨","东北省"),(3L,"广州","广东省"),(0L,"北京","北京"),(1L,"上海","上海"),,(6L,"长沙","湖南省"),(7L,"西安","陕西省"),(4L,"三亚","海南省"),(5L,"武汉","湖北省"),(2L,"南京","江苏省"),(8L,"成都","四川省"))adid0-19第四章项目需求4.1项目需求概述项目需求四大需求,如图4-1所示:图4-1项目需求四大需求4.2用户访问Session统计在电商网站上,用户通常有多种访问行为,例如用户先进入网站首页,可以在首页找到自己感兴趣的商品,或者用户可以在搜索框中搜索自己的喜欢的商品,如果用户喜欢该商品则可以进行下单行为,最后完成订单支付操作。用户Session是从电子商务平台的角度进行定义的会话概念,意思是,从用户进入网站首页那一刻,开启Session。在一段时间内,直到用退出网站,或者是用户隔了很长一段时间没有进行操作,这就表示Session结束了。该模块实现的功能为按照时间占比进行随机抽样Session,计算Session指标、统计获取热点品类、统计前10的热点品类,根据之前的操作得到的结果的基础上,获取品类中排名前十的Session等用户访问Session进行离线统计分析。其中,用户的每一次在浏览器或者App上操作,我们可以说是一个action,在本项目中,我们关注搜索、点击、下单、支付这四个用户行为。该Session模块实现的功能可以让管理者观察到在不同条件下的用户行为统计指标,以企业的生产和业务的发展做出相应合理地调整和规划。其中该Session模块主要使用的技术是SparkCore。4.3网页单跳转化率统计该pageStat模块功能是计算网站/App网页之间的单步跳转转化率。该pageStat模块实现的功能可以让数据分析师和产品经理观察到各个网站/App不同网页之间的转换率,从而对网页的布局做出优化方案。其中该pageStat模块所使用的是业界比较成熟稳定的SparkCore技术。4.4区域热点商品统计该areaStat模块主要是统计每天各个区域排名前三的热点商品。该areaStat模块可以企业管理者观察到电子商务平台中每个区域排名前三的热点商品,从而对企业的商品相关的销售策略进行调整。该areaStat模块每天统计出各个区域的Top3热点商品。该模块可以让管理者了解在不同区域商品的销售情况,根据这些销售情况来指定更加有效销售计划。其中该areaStat模块使用到业界计算分析性能最好的SparkCore技术。4.5广告流量实时统计随着网络的发展,广告已成为网站或者App收入来源之一。广告招商交易成功后,相应的广告会在网站或者App网页的某个位置发布出去。当用户访问该网站或者App的时候,用户就会看到已发布出去的广告。此时,有的用户有一定概率区点击该广告。如何获取用户点击广告行为,并对其进行计算和统计呢?我们针对这点进行一下探讨。用户某个时刻在网站或者App上浏览时,如果点击一下广告,就会生成一个埋点日志并将这些数据写入到实时系统中。其中,具体的流程是这些埋点日志首先会发送到nginx服务器,通过Nginx服务器进行负载均衡处理规划路由,由Tomcat将数据传到各个机器的Flume中,之后各个机器的数据通过一个总的Flume写入Kafka集群中。实时系统将获取Kafka中的数据到Spark中,对Spark通过消费Kafka的数据进行快速实时计算与统计。该adversStat模块是实时地统计广告流量。其中有用户访问黑名单、统计各城市的广告流量、各区域点击流量、广告点击量排名。该adversStat模块可以让公司高层人员实时地观察到各个广告产生的效益情况,为他们在未来指定更加合理的广告头发策略提供数据支撑。通过精准投放广告,减少公司的资源损失,增加公司的广告收益。其中该adversStat模块主要使用的技术是SparkStreaming。第五章项目详细解析5.1项目程序框架解析5.1.2commons模块Commons模块提供系统配置信息,如表5-1-2所示:表5-1-2commons模块包名称解析conf配置工具类:获取perties文件中的所有配置信息,使得用户可以通过对象这种方式来访问perties中的所有配置constant常量接口包括项目中所需要使用的所有常量modelSparkSQL样例类包括SparkSQL中的用户访问动作表、用户信息表、产品表的样例类poolMySQL连接池通过自定义MySQL连接池实现对MySQL数据库的操作utils工具类提供了参数处理类、日期时间处理类、字符串处理类、数字处理类、校验处理类等处理类5.1.3mock模块mock模块负责产生模拟数据,如表5-1-3所示:表5-1-3mock模块Object解析MockDataGenerate离线模拟数据生成负责生成离线模拟数据并写入Hive表中,模拟生成的数据包括用户信息、用户行为信息、产品数据信息等等MockRealtimeDataGenerate实时模拟数据生成负责生成实时模拟数据并写入Kafka中,实时模拟数据为实时广告数据5.1.3统计分析模块统计分析模块包含有用户访问Session统计模块、pageStat网页单跳转化率统计模块、areaStat区域热点商品统计模块、adversStat广告流量实时统计模块,这些模块是整个系统实现众多需求的主模块。5.2项目需求解析5.2.1用户访问Session统计模块Session各范围访问步长、访问时长占比统计需求分析需求要求通过编写过滤条件,筛选并计算出符合条件的Session在各个范围的Session占比。以及筛选并计算出访问步长在各个范围内的Session占比,最后将计算并统计出的结果保存到MySQL数据库中。在大数据分析平台计算前,我们应当明确一点是我们所计算和统计的不是整个群体,而分不同情况的群体。我们可以通过建立筛选条件,如可以是某个搜索关键词指定的用户、某个省份的用户、某个时间段内的用户、某种身份的用户等等。根据这些筛选条件,我们可以做出相应的计算和统计,甚至可以为在后面的开发过种提供更加细致地分析策略。通过建立筛选条件,我们可以避免整体中的某些干扰项,更加专注于对我们需要更感兴趣的特征项,从而在提高计算速度的同时,也提高了统计的可行性。名词解释:Session访问时长是指一个Session开始它的action,经过一段时间后action结束,那么这个过程的时间范围即为Session生命周期时间也就是Session的访问时长。而Session访问步长是指一个Session在执行期间所点击的网页数之和。简单地说,一个Session开始后经过两分钟结束,那么它的访问时长为2m。其中如果在这Session中时间范围内点击了五个网页,那么它的Session步长就为5。场景模拟:某网站上筛选的Session总数量为100个,而经过筛选其中访问时长为7s~9s的数量为20个,那么20/100等于20%,所有在7s~9s内的访问步长占比就为20%。同理Session访问时长占比也是如此。通过计算和统计Session的访问时长和访问步长,可以让我们更加清楚用户在我们的网站或者App上访问了那些网页、访问这些网页的次数是多少、在哪些网页上停留了时间有多长。这些数据对于管理者来说非常重要,因为这些数据可以使管理者更加了解用户的行为习惯和兴趣,以用户为导向,进一步优化我们的网站。需求实现流程Session各范围访问步长以及访问时长占比统计需求流程,如图5-1-1-1所示:图5-1-1-1Session各范围访问步长、访问时长占比统计Session随机抽取需求分析经过筛选过滤后,符合条件的Session,我们把它保留下来。在这些Session中,如我们现需要按照时间的比例随机抽取出100个Session。那么我们将如何随机抽取呢?首先,我们先将问题进行解析。一是按照时间的比例来抽取,二是随机抽取。因此假设我们网站某一天一共有10000个Session。其中10点到11点这个时间段内有1000个Session,那么这个小时的Session的占比就为1000/10000等于1/10。所以在这个小时,我们需要随机抽取的数量为100*(1/10)等于10个。以此类推,其它情况也是一样。这Session随机抽取的功能主要是让管理者操作符合条件的Session,让这些数据根据时间抽取,以做到公平性无差别地观察Session的点击行为。举个例子:比如用户进入网站首页,然后点击乐器品类,然后点击了吉他商品,然后又搜索了钢琴关键词,接着对钢琴下了个订单,最后对该订单进行支付。这个功能按照了时间比例进行随机抽取,这样能是我们的样本更有代表性和公平性。最后,将这些随机抽取出的Session相关详细的数据写到MySQL数据库中保存。需求实现流程Session随机抽取的需求实现流程,如图5-2-1-2所示:图5-2-1-2Session随机抽取的需求实现流程Top10热点品类需求分析经过筛选过滤后,符合条件的Session,我们把它保留下来。对于这些Session相关数据,我们需求获取点击、下单和支付的信息,并对这些信息按数量进行排序,取排名前十的热点品类。这可以让我们清楚用户,他们最感兴趣的品类是什么。在企业里,可以让我们的公司的人才更加清晰地了解不同特征的用户心理以及爱好。通过计算和统计完成之后,将这些数据保存到MySQL数据库中。需求实现流程Top10热点品类需求实现流程,如图5-2-1-3所示:图5-2-1-3Top10热点品类需求实现流程Top10热点品类Top10活跃Session统计需求分析已知我们已经获取到排名前十的品类,那么在上面需求的基础上,我们再统计与计算出点击次数,即Session排名前十的数据。实现这个功能,我们可以知道对于不同品类用户有哪次行为,以及用对哪些品类感兴趣。计算和统计完成之后,将这些数据写入MySQL数据库中。需求实现流程Top10热点品类Top10活跃Session统计需求实现流程,如图5-2-1-4所示:图5-2-1-4Top1热点品类Top10活跃Session统计5.2.2网页单跳转化率统计模块网页转化率统计需求分析首先了解什么是网页的单跳转换率,比如一个用户在网站上浏览,其中这一次Session访问网页的路径为1、2、3、4、5,那么网页1跳转到网页2为一次单跳,而网页2跳转到网页3也为一次单跳,以此下推。由此,单跳转化率就是统计网页点击的概率。然后明白如何计算网页的单挑转化率。比如要计算由网页1到网页2的单跳转化率,首先需要获取到符合条件的Session,设用户访问网页1的访问次数为A,而用户访问网页2的访问次数为B。由此可得,网页1到网页2的单跳转化率为B/A,而B/A的结果记为C。而计算用户访问网页2到网页3的单跳转换率,同理,用户访问网页3的访问次数为D。由此可得,网页2到网页3的单跳转化率为D/B,而D/B的结果记为E。这个功能可以让管理者根据这些特点,了解用户对各个网页的满意度以及好感度,管理者可以根据用户的喜好来改善网页布局来吸引用户,从而最终达到盈利的目的。可以让分析员根据这些数据又更多想象空间,运用一种崭新的思路进行计算与分析。需求实现流程网页转化率统计需求实现流程,如图5-2-2-1所示:图5-2-2-1网页转化率统计5.2.3区域热点商品统计模块各区域Top3商品统计需求分析根据用户指定的日期进行查询,统计各区域点击量排名前三的商品。其中区域等级和地区名称如下进行配置。表1-10区域等级表区域等级地区名称A级华北、华东B级华南、华中C级西北、西南D级东北、其他获取需要查询的日期范围,筛选出商品的点击行为。查询城市信息使用到SparkSQL查询MySQL数据库技术。使用SparkSQL的中函数对区域进行等级标志。计算并统计各个区域中各个商品的点击次数。将计算和统计的结果写入到MySQL表中保存。需求实现流程各区域Top3商品统计需求实现流程,如图5-2-3-1所示:图5-2-3-1各区域Top3商品统计5.2.4广告流量实时统计模块广告黑名单实时统计需求分析这个功能需要实现,每天实时检测某个用户点击某个广告的次数,对某个用户频繁点击了某个广告的次数高达100次之后,该用户将被系统识别为非法用户。需求实现流程广告黑名单实时统计需求实现流程,如图5-2-4-1所示:图5-2-4-1广告黑名单实时统计广告点击量实时统计需求分析实时统计每天各省各城市各广告的点击流量。需求实现流程广告点击量实时统计需求实现流程,如图5-2-4-2所示:图5-2-4-2广告点击量实时统计各省热点广告实时统计需求分析统计每天各省Top3热点广告。需求实现流程各省热点广告实时统计需求实现流程,如图5-2-4-3所示:图5-2-4-3各省热点广告实时统计近一小时广告点击量实时统计需求分析统计各广告近一小时内的点击量趋势即各广告近在1小时内各分钟的点击量。需求实现流程最近一小时广告点击量实时统计需求实现流程,如图5-2-4-4所示:图5-2-4-4最近一小时广告点击量实时统计第六章系统测试6.1大数据测试的重要性随着网络的发展,网络产生数据也越来越多。大数据越来越引起人们关注,大数据也逐渐成为现在的时代代名词。大数据也在不断地影响和改变人们的思考方式,而非传统的单一的思考方式。所以大数据测试也势必和其它软件测试有所不同。那如果从功能测试的角度出发我们该如何对大数据进行测试,才能保证其正确性呢?针对这点,我们进行了一下探讨。以前一听到大数据,人们一般都不会想到软件测试。一谈到大数据,你可能会想到高新技术的研发和创造,其实它也是为了服务而生的。在我认为,没有哪一项技术不是为业务服务的,没有业务的技术也没有存在的意义。是的,这句话如果用在大数据上也是一样的。测试的意义就是确保符合业务的需求。大数据程序也和普通后台逻辑测试一样,只有一个输出字符的黑白框,操作都是后台进行的,所以测试人员也得非常清楚数据流向,最后通过输出结果来判断程序是否正确。这些对于大数据测试也是一样的,我们得非常清晰地知道每个程序的功能,数据流向,每个程序的输入和输出,根据这些条件来判断大数据实现的功能是否正确。本文基于大数据分析乐器全员营销系统是为了方便开发人员重复利用代码,进行迭代开发,所以从开发人员的角度去测试时,原则希望尽早尽快地发现问题系统存在的问题。6.2大数据测试步骤(1)模块测试在模块测试当中它是在设计和编码上设计的错误。(2)基于大数据分析乐器全员营销系统在该测试中主要是在软件上发生错误的,也可能发现需求上的错误。(3)验收测试在这个测试步骤它是为了将产品和需求进行对照,判断产品符合实际需求。6.3大数据测试分析基于大数据分析乐器全员营销系统的测试主要是从以下几个方面来进行的:由于文章篇幅有限,所以只是选取了几个具有代表性的模块进行测试,并根据测试得到测试结果,测试用例如表6.3:表6.3系统测试用例模块测试用例描述操作过程及数据预期结果用例类别mock模拟电商网站用户操作行为,生成离线数据运行mock模块中的MockDataGenerate程序控制台打印出数据生成数据模拟电商网站用户操作行为,生产相应的数据运行mock模块中的MockDataGenerate程序在控制台没有打印出数据生成数据Session统计Top10热点品类运行Session模块中的SessionStatisticAgg3程序查询到Top10_category_0308表有数据离线统计统计Top10热点品类运行Session模块中的SessionStatisticAgg3程序没有查询到Top10_category_0308表有数据离线统计pageStat统计网页跳转转化率运行pageStat模块中的PageStat5程序查询到page_split_convert_rate_0308表有数据离线统计统计网页跳转转化率运行pageStat模块中的PageStat5程序没有查询到page_split_convert_rate_030表有数据离线统计adversStat统计实时黑名单运行AdverStat模块中的AdverStat7程序,等待一段时间查询到ad_user_click_count表有数据,等待一段时间后ad_blacklist表也有数据实时统计统计实时黑名单运行AdverStat模块中的AdverStat7程序,等待一段时间没有查询到ad_user_click_count表有数据,等待一段时间后ad_blacklist表没有数据实时统计
结论本项目基于大数据分析全员营销系统主要运用到Spark的三大框架,分别为SparkCore、SparkSQL和SparkStreaming实现了对电商平台业务的离线和实时数据统计与分析。其中离线数据统计与分析包括用户访问Session离线分析、网页单跳转化率离线统计、热点商品离线统3个业务模块,而实时数据统计与分析有广告流量实时统计1个模块。本项目基于大数据分析全员营销系统涵盖了Spark三大流行框架的核心知识和技术点。通过本项目的实践,对今后的大数据开发工作,特别是Spark开发奠定了坚实的基础。随着互联网的冲击下,营销市场的竞争也日益剧烈。同样乐器营销也难逃这个充满竞争的市场圈子。本项目根据经过时间考量的全员营销理念和业界最为流行的大数据Spark框架相结合。根据用户在网站的行为数据,全面去统计与分析,用户的各项行为特征以及为决策者提供用户利益价值走向,从而做出更加可靠的决策。参考文献[1]《小议恒大地产“全员营销”》王韵雅现代营销(下旬刊)2019年.11[2]《大数据背景下烟草营销的信息化发展》张维克现代营销(经营版)2019年.12[3]《大数据背景下电商精准营销策略分析》李若愚现代营销(经营版)2019年.12[4]《基于Hadoop技术的油田大数据应用浅析》高寒信息系统工程2019年.10[5]《基于Spark的数据混合计算平台的研究与实现》曹师久中国优秀硕士学位论文全文数据库2019.08[6]《基于JavaEE的人事管理系统的设计与实现》现代工业经济和信息化2019.11
致谢时光飞逝,从11月份到现在,经历了5个月,本项目所有工作终于落下了帷幕。在本项目中的开发和设计过程中,经历了非常多的困难,这些困难有时候会让自己寸步难行,不过在指导老师和班里的同学们的指点下,克服了一个又一个困难,其中不乏技术上的问题,还有心理上的挫败感。在这里,我特别感谢我的导师,在我拿到这个毕业设计题目的时候,那个感觉记忆犹新,充满迷茫而不知所措。不过在老师的再三鼓励之下,我最终还是选择直面挫折。同时,在老师的细心指导下,我对这个毕业设计题目有了初步的了解和领悟。在老师的引导下,我仔细查阅了相关参考文献并认真阅读,这才逐步了解并掌握该项目的开发技术,项目设计的总方案,以及明白项目需实现什么样的功能和怎么去实现。还有就是挺感谢班里的同学,有时我会犯一些低级错误,在这里多谢同学热心的提醒。在项目设计和项目开发的过程中,通过一边学习项目所需的技术,一边阅读相应的文档,步步为营和有条不紊地进行设计和开发。在这个过程中,我的专业知识得到了巩固和加强,同时深深地体会到程序员的不易。在其中,我还领悟到一个程序员如果想更上一层楼的话,必须时刻保持足够的热情以及坚强的毅力,在巩固旧知识的同时不断地探索新知识。所以,经过此次的毕业设计,我也明白自身的不足,还需更加努力学习才行。再次感谢我的导师对我的指导和帮助,感谢身边的同学们对我的帮助。
最后,祝愿我的母校越来越好,再创辉煌!
电脑故障检测卡代码表
1、特殊代码"00"和"ff"及其它起始码有三种情况出现:
①已由一系列其它代码之后再出现:"00"或"ff",则主板ok。
②如果将cmos中设置无错误,则不严重的故障不会影响bios自检的继续,而最终出现"00"或"ff"。
③一开机就出现"00"或"ff"或其它起始代码并且不变化则为主板没有运行起来。
2、本表是按代码值从小到大排序,卡中出码顺序不定。
3、未定义的代码表中未列出。
4、对于不同bios(常用ami、award、phoenix)用同一代码代表的意义不同,因此应弄清您所检测的电脑是属于哪一种类型的bios,您可查阅您的电脑使用手册,或从主板上的bios芯片上直接查看,也可以在启动屏幕时直接看到。
5、有少数主板的pci槽只有一部分代码出现,但isa槽有完整自检代码输出。且目前已发现有极个别原装机主板的isa槽无代码输出,而pci槽则有完整代码输出,故建议您在查看代码不成功时,将本双槽卡换到另一种插槽试一下。另外,同一块主板的不同pci槽,有的槽有完整代码送出,如dell810主板只有靠近cpu的一个pci槽有完整代码显示,一直变化到"00"或"ff",而其它pci槽走到"38"后则不继续变化。
6、复位信号所需时间isa与pci不一定同步,故有可能isa开始出代码,但pci的复位灯还不熄,故pci代码停要起始代码上。
代码对照表
00.已显示系统的配置;即将控制INI19引导装入。
01处理器测试1,处理器状态核实,如果测试失败,循环是无限的。处理器寄存器的测试即将开始,不可屏蔽中断即将停用。CPU寄存器测试正在进行或者失败。
02确定诊断的类型(正常或者制造)。如果键盘缓冲器含有数据就会失效。停用不可屏蔽中断;通过延迟开始。CMOS写入/读出正在进行或者失灵。
03清除8042键盘控制器,发出TESTKBRD命令(AAH)通电延迟已完成。ROMBIOS检查部件正在进行或失灵。
04使8042键盘控制器复位,核实TESTKBRD。键盘控制器软复位/通电测试。可编程间隔计时器的测试正在进行或失灵。
05如果不断重复制造测试1至5,可获得8042控制状态。已确定软复位/通电;即将启动ROM。DMA初如准备正在进行或者失灵。
06使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。已启动ROM计算ROMBIOS检查总和,以及检查键盘缓冲器是否清除。DMA初始页面寄存器读/写测试正在进行或失灵。
07处理器测试2,核实CPU寄存器的工作。ROMBIOS检查总和正常,键盘缓冲器已清除,向键盘发出BAT(基本保证测试)命令。.
08使CMOS计时器作初始准备,正常的更新计时器的循环。已向键盘发出BAT命令,即将写入BAT命令。RAM更新检验正在进行或失灵。
09EPROM检查总和且必须等于零才通过。核实键盘的基本保证测试,接着核实键盘命令字节。第一个64KRAM测试正在进行。
0A使视频接口作初始准备。发出键盘命令字节代码,即将写入命令字节数据。第一个64KRAM芯片或数据线失灵,移位。
0B测试8254通道0。写入键盘控制器命令字节,即将发出引脚23和24的封锁/解锁命令。第一个64KRAM奇/偶逻辑失灵。
0C测试8254通道1。键盘控制器引脚23、24已封锁/解锁;已发出NOP命令。第一个64KRAN的地址线故障。
0D1、检查CPU速度是否与系统时钟相匹配。2、检查控制芯片已编程值是否符合初设置。3、视频通道测试,如果失败,则鸣喇叭。已处理NOP命令;接着测试CMOS停开寄存器。第一个64KRAM的奇偶性失灵
0E测试CMOS停机字节。CMOS停开寄存器读/写测试;将计算CMOS检查总和。初始化输入/输出端口地址。
0F测试扩展的CMOS。已计算CMOS检查总和写入诊断字节;CMOS开始初始准备。.
10测试DMA通道0。CMOS已作初始准备,CMOS状态寄存器即将为日期和时间作初始准备。第一个64KRAM第0位故障。
11测试DMA通道1。CMOS状态寄存器已作初始准备,即将停用DMA和中断控制器。第一个64DKRAM第1位故障。
12测试DMA页面寄存器。停用DMA控制器1以及中断控制器1和2;即将视频显示器并使端口B作初始准备。第一个64DKRAM第2位故障。
13测试8741键盘控制器接口。视频显示器已停用,端口B已作初始准备;即将开始电路片初始化/存储器自动检测。第一个64DKRAM第3位故障。
14测试存储器更新触发电路。电路片初始化/存储器处自动检测结束;8254计时器测试即将开始。第一个64DKRAM第4位故障。
15测试开头64K的系统存储器。第2通道计时器测试了一半;8254第2通道计时器即将完成测试。第一个64DKRAM第5位故障。
16建立8259所用的中断矢量表。第2通道计时器测试结束;8254第1通道计时器即将完成测试。第一个64DKRAM第6位故障。
17调准视频输入/输出工作,若装有视频BIOS则启用。第1通道计时器测试结束;8254第0通道计时器即将完成测试。第一个64DKRAM第7位故障。
18测试视频存储器,如果安装选用的视频BIOS通过,由可绕过。第0通道计时器测试结束;即将开始更新存储器。第一个64DKRAM第8位故障。
19测试第1通道的中断控制器(8259)屏蔽位。已开始更新存储器,接着将完成存储器的更新。第一个64DKRAM第9位故障。
1A测试第2通道的中断控制器(8259)屏蔽位。正在触发存储器更新线路,即将检查15微秒通/断时间。第一个64DKRAM第10位故障。
1B测试CMOS电池电平。完成存储器更新时间30微秒测试;即将开始基本的64K存储器测试。第一个64DKRAM第11位故障。
1C测试CMOS检查总和。.第一个64DKRAM第12位故障。
1D调定CMOS配置。.第一个64DKRAM第13位故障。
1E测定系统存储器的大小,并且把它和CMOS值比较。.第一个64DKRAM第14位故障。
1F测试64K存储器至最高640K。.第一个64DKRAM第15位故障。
20测量固定的8259中断位。开始基本的64K存储器测试;即将测试地址线。从属DMA寄存器测试正在进行或失灵。
21维持不可屏蔽中断(NMI)位(奇偶性或输入/输出通道的检查)。通过地址线测试;即将触发奇偶性。主DMA寄存器测试正在进行或失灵。
22测试8259的中断功能。结束触发奇偶性;将开始串行数据读/写测试。主中断屏蔽寄存器测试正在进行或失灵。
23测试保护方式8086虚拟方式和8086页面方式。基本的64K串行数据读/写测试正常;即将开始中断矢量初始化之前的任何调节。从属中断屏蔽存器测试正在进行或失灵。
24测定1MB以上的扩展存储器。矢量初始化之前的任何调节完成,即将开始中断矢量的初始准备。设置ES段地址寄存器注册表到内存高端。
25测试除头一个64K之后的所有存储器。完成中断矢量初始准备;将为旋转式断续开始读出8042的输入/输出端口。装入中断矢量正在进行或失灵。
26测试保护方式的例外情况。读出8042的输入/输出端口;即将为旋转式断续开始使全局数据作初始准备。开启A20地址线;使之参入寻址。
27确定超高速缓冲存储器的控制或屏蔽RAM。全1数据初始准备结束;接着将进行中断矢量之后的任何初始准备。键盘控制器测试正在进行或失灵。
28确定超高速缓冲存储器的控制或者特别的8042键盘控制器。完成中断矢量之后的初始准备;即将调定单色方式。CMOS电源故障/检查总和计算正在进行。
29.已调定单色方式,即将调定彩色方式。CMOS配置有效性的检查正在进行。
2A使键盘控制器作初始准备。已调定彩色方式,即将进行ROM测试前的触发奇偶性。置空64K基本内存。
2B使磁碟驱动器和控制器作初始准备。触发奇偶性结束;即将控制任选的视频ROM检查前所需的任何调节。屏幕存储器测试正在进行或失灵。
2C检查串行端口,并使之作初始准备。完成视频ROM控制之前的处理;即将查看任选的视频ROM并加以控制。屏幕初始准备正在进行或失灵。
2D检测并行端口,并使之作初始准备。已完成任选的视频ROM控制,即将进行视频ROM回复控制之后任何其他处理的控制。屏幕回扫测试正在进行或失灵。
2E使硬磁盘驱动器和控制器作初始准备。从视频ROM控制之后的处理复原;如果没有发现EGA/VGA就要进行显示器存储器读/写测试。检测视频ROM正在进行。
2F检测数学协处理器,并使之作初始准备。没发现EGA/VGA;即将开始显示器存储器读/写测试。.
30建立基本内存和扩展内存。通过显示器存储器读/写测试;即将进行扫描检查。认为屏幕是可以工作的。
31检测从C800:0至EFFF:0的选用ROM,并使之作初始准备。显示器存储器读/写测试或扫描检查失败,即将进行另一种显示器存储器读/写测试。单色监视器是可以工作的。
32对主板上COM/LTP/FDD/声音设备等I/O芯片编程使之适合设置值。通过另一种显示器存储器读/写测试;却将进行另一种显示器扫描检查。彩色监视器(40列)是可以工作的。
33.视频显示器检查结束;将开始利用调节开关和实际插卡检验显示器的关型。彩色监视器(80列)是可以工作的。
34.已检验显示器适配器;接着将调定显示方式。计时器滴答声中断测试正在进行或失灵。35.完成调定显示方式;即将检查BIOSROM的数据区。停机测试正在进行或失灵。
36.已检查BIOSROM数据区;即将调定通电信息的游标。门电路中A-20失灵。
37.识别通电信息的游标调定已完成;即将显示通电信息。保护方式中的意外中断。
38.完成显示通电信息;即将读出新的游标位置。RAM测试正在进行或者地址故障>FFFFH。
39.已读出保存游标位置,即将显示引用信息串。.
3A.引用信息串显示结束;即将显示发现信息。间隔计时器通道2测试或失灵。
3B用OPTI电路片(只是486)使辅助超高速缓冲存储器作初始准备。已显示发现<ESC>信息;虚拟方式,存储器测试即将开始。按日计算的日历时钟测试正在进行或失灵。
3C建立允许进入CMOS设置的标志。.串行端口测试正在进行或失灵。
3D初始化键盘/PS2鼠标/PNP设备及总内存节点。.并行端口测试正在进行或失灵。
3E尝试打开L2高速缓存。.数学协处理器测试正在进行或失灵。
40.已开始准备虚拟方式的测试;即将从视频存储器来检验。调整CPU速度,使之与外围时钟精确匹配。
41中断已打开,将初始化数据以便于0:0检测内存变换(中断控制器或内存不良)从视频存储器检验之后复原;即将准备描述符表。系统插件板选择失灵。
42显示窗口进入SETUP。描述符表已准备好;即将进行虚拟方式作存储器测试。扩展CMOSRAM故障。
43若是即插即用BIOS,则串口、并口初始化。进入虚拟方式;即将为诊断方式实现中断。.44.已实现中断(如已接通诊断开关;即将使数据作初始准备以检查存储器在0:0返转。)BIOS中断进行初始化。
45初始化数学协处理器。数据已作初始准备;即将检查存储器在0:0返转以及找出系统存储器的规模。.
46.测试存储器已返回;存储器大小计算完毕,即将写入页面来测试存储器。检查只读存储器ROM版本。
47.即将在扩展的存储器试写页面;即将基本640K存储器写入页面。
48.已将基本存储器写入页面;即将确定1MB以上的存储器。视频检查,CMOS重新配置。
49.找出1BM以下的存储器并检验;即将确定1MB以上的存储器。.
4A.找出1MB以上的存储器并检验;即将检查BIOSROM数据区。进行视频的初始化。
4B.BIOSROM数据区的检验结束,即将检查<ESC>和为软复位清除1MB以上的存储器。.4C.清除1MB以上的存储器(软复位)即将清除1MB以上的存储器.屏蔽视频BIOSROM。.4D。已清除1MB以上的存储器(软复位);将保存存储器的大小。.
4E若检测到有错误;在显示器上显示错误信息,并等待客户按<F1>键继续。开始存储器的测试:(无软复位);即将显示第一个64K存储器的测试。显示版权信息。
4F读写软、硬盘数据,进行DOS引导。开始显示存储器的大小,正在测试存储器将使之更新;将进行串行和随机的存储器测试。.
50将当前BIOS监时区内的CMOS值存到CMOS中。完成1MB以下的存储器测试;即将高速存储器的大小以便再定位和掩蔽。将CPU类型和速度送到屏幕。
51.测试1MB以上的存储器。.
52所有ISA只读存储器ROM进行初始化,最终给PCI分配IRQ号等初始化工作。已完成1MB以上的存储器测试;即将准备回到实址方式。进入键盘检测。
53如果不是即插即用BIOS,则初始化串口、并口和设置时种值。保存CPU寄存器和存储器的大小,将进入实址方式。.
54.成功地开启实址方式;即将复原准备停机时保存的寄存器。扫描“打击键”
55.寄存器已复原,将停用门电路A-20的地址线。.
56.成功地停用A-20的地址线;即将检查BIOSROM数据区。键盘测试结束。
57.BIOSROM数据区检查了一半;继续进行。.
58.BIOSROM的数据区检查结束;将清除发现<ESC>信息。非设置中断测试。
59.已清除<ESC>信息;信息已显示;即将开始DMA和中断控制器的测试。.
5A..显示按“F2”键进行设置。
5B..测试基本内存地址。
5C..测试640K基本内存。
60设置硬盘引导扇区病毒保护功能。通过DMA页面寄存器的测试;即将检验视频存储器。测试扩展内存。
61显示系统配置表。视频存储器检验结束;即将进行DMA#1基本寄存器的测试。.
62开始用中断19H进行系统引导。通过DMA#1基本寄存器的测试;即将进行DMA#2寄存器的测试。测试扩展内存地址线。
63.通过DMA#2基本寄存器的测试;即将检查BIOSROM数据区。.
64.BIOSROM数据区检查了一半,继续进行。.
65.BIOSROM数据区检查结束;将把DMA装置1和2编程。.
66.DMA装置1和2编程结束;即将使用59号中断控制器作初始准备。Cache注册表进行优化配置。
67.8259初始准备已结束;即将开始键盘测试。.
68..使外部Cache和CPU内部Cache都工作。
6A..测试并显示外部Cache值。
6C..显示被屏蔽内容。
6E..显示附属配置信息。
70..检测到的错误代码送到屏幕显示。
72..检测配置有否错误。
74..测试实时时钟。
76..扫查键盘错误。
7A..锁键盘。
7C..
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年创意导视设计及安装承揽合同
- 2024年开封客运从业资格证理论考试题
- 文物保护季节性施工方案
- 2024年不锈钢餐具项目申请报告模范
- 2024年专用繁华商圈店铺租赁协议
- 2024年乌鲁木齐客运从业资格证要考些什么内容
- 上海国际医院感染控制绿色消费论坛
- 2024年企业抵押:借款合同范本
- 2024年给水用胶水项目规划申请报告模范
- 办公室橡胶地板铺设方案
- 虫害分析分析报告
- 《民间文学导论》课件
- 《输血查对制度》课件
- 湘少版五年级下册英语全期教案
- 高速公路收费站常见特情处理办法课件
- 《行政许可法培训》课件
- 颅内占位性的病变护理查房课件
- 山东省烟台市芝罘区(五四制)2023-2024学年九年级上学期期末考试物理试题
- DB14∕T 1851-2019 中华鼢鼠防治技术规程
- 2024年风电铸件行业市场研究报告
- 中耳胆脂瘤的护理查房
评论
0/150
提交评论