您的位置:首页 > 其它

Spark项目:大型电商日志分析(一)

2018-12-27 17:00 281 查看
版权声明:@GaoShan https://blog.csdn.net/weixin_42969976/article/details/85291737

项目模块

  1. 用户访问session分析
  2. 页面单挑转化率统计
  3. 热门商品离线统计
  4. 广告流量实时统计

程序中语言选择

Java + Scala
Java:实体类 + dao层(数据访问层)+ 工具类
Scala:biz层(service业务逻辑层)

项目轮廓大搭建

前提

  1. 已经使用flume将离线的日志信息导入到hfds上
  2. sql脚本 ~>目标数据库的脚本
    hive表结构 ~>与hdfs上日志文件的格式(分隔符,字段)一致

Project

pom依赖 ->可以察觉本项目的技术选型

  1. 包结构
    www.jd.com ->com.jd.项目名.层次名.模块名 如:com.jd.webanalysis.dao.session
    com.jd.项目名.工具包 如:com.jd.webanalysis.utils
  2. 共通的配置文件
    log4j.properties ->定制控制台输出的日志格式
    config.properties ->记录项目中使用到的一些常量(好处:配置信息若是发生了变更,不用修改源程序,只需要修改配置文件key对应的值即可)
    local目录 ->本地开发阶段测试用的一些配置文件
    dbcp-config.properties
    test目录 ->项目开发完毕,打包成jar包,试运行时用到的一些配置文件
    dbcp-config.properties
    production ->正式交付后,使用的一些配置文件
    dbcp-config.properties
  3. 将项目轮廓置于git服务器上
    http://jack@janson01/r/web-log-analysis.git
错误:
1,Error running 'ResourceManagerUtilTest.testGetPropertiesValueByKey': Command line is too long. Shorten command line for ResourceManagerUtilTest.testGetPropertiesValueByKey or also for JUnit default configuration
解决思路:
定位到项目中.idea目录下的文件workspace.xml,定位到PropertiesComponent节点,添加如下的配置信息。目的是:允许包名的长度任意定制
<property name="dynamic.classpath" value="true" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐