spark用户访问session分析

基础数据结构

  • user_visit_action 点击流数据 (hive表)

    date  //日期:代表用户点击行为是在哪一天发生
    user_id  //代表这个点击行为是哪一个用户执行的
    session_id //唯一标识了某个用户的一个访问session
    page_id //页面的id,点击品类,进入某个页面
    action_name //这个点击行为发生的时间点
    search_keyword //搜索的关键词
    click_category_id //网站首页点击了某个品类
    click_product_id //网站列表页点击了某个商品
    order_category_ids //代表了将某些商品加入了购物车,然后一次性的对商品下了单,某次下单行为中,有哪些商品品类
    order_product_ids //某次下单行为中,有哪些商品
    pay_category_ids //一次支付行为中对应了哪些品类
    pay_product_ids  //支付行为中,对应了哪些具体的商品
    
  • user_info 用户信息表(hive表)

    user_id //用户的唯一标识
    username //用户的登录名
    name //用户名
    age //年龄
    professinal //职业
    city //城市
    
  • task表(mysql表)
    task_id   //主键
    task_name //任务名称
    create_time //创建时间
    start_time //开始运行的时间
    finish_time //结束运行的时间
    task_type //任务类型
    task_status //任务状态,对应spark作业运行的状态
    task_param //用来使用json的格式来封装用户提交的任务的特殊筛选参数
    
  • 交互流程

1.j2ee平台的使用者,向平台提交任务(包含任务参数),并将任务插入到mysql表中的task表

2.Runtime,Process等API去执行一个封装了spark-submit命令的linux的shell脚本

3.

时间: 2024-08-01 02:41:16

spark用户访问session分析的相关文章

spark 大型项目实战(七):用户访问session分析(七) --数据库连接池原理

**文章地址:http://www.haha174.top/article/details/257789** 1.谈谈数据库连接池的原理 ------------- 这次我们采取技术演进的方式来谈谈数据库连接池的技术出现过程及其原理,以及当下最流行的开源数据库连接池jar包. 一.早期我们怎么进行数据库操作 1.原理:一般来说,java应用程序访问数据库的过程是: ①装载数据库驱动程序: ②通过jdbc建立数据库连接: ③访问数据库,执行sql语句: ④断开数据库连接. 2.代码 Public

spark 大型项目实战(八):用户访问session分析(八) --单例模式

**文章地址:http://www.haha174.top/article/details/253007** 一.概念: ---- java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须给所有其他对象提供这一实例. 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对

如何区分不同用户——Cookie/Session机制详解

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session. 1.1  Cookie机制 在程序中,会话跟踪是很重要的事情.理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个

log filter analysis,session分析

1 log filter analysis分析 filter:与Servlet相似,过滤器是一些web应用程序组件,可以绑定到一个web应用程序中.但是与其他web应用程序组件不同的是,过滤器是"链"在容器的处理过程中的.这就意味着它们会在servlet处理器之前访问一个进入的请求,并且在外发响应信息返回到客户前访问这些响应信息.这种访问使得过滤器可以检查并修改请求和响应的内容 一个Filter 可负责拦截多个请求或响应:一个请求或响应也可被多个请求拦截. 创建一个Filter 只需两

老男孩教育每日一题-2017年3月22日:请说明用户访问网站流程

本题目也可以说为: 描述从浏览器打开http://www.oldboyedu.com地址回车发送请求到看到页面的过程? 打开浏览器输入网址回车,到看到页面的过程 大纲: 1.用户访问网站流程框架 2.DNS解析原理 ***** 3.tcp/ip三次握手原理 ***** 4.http协议原理(www服务的请求过程)请求报文细节! 5.大规模网站集群架构细节. 6.http协议原理(www服务的响应过程)响应报文细节! 7.tcp/ip四次挥手过程原理 ***** , 当我们打开浏览器输入网址回车,

在一般处理文件中访问Session需要添加IRequiresSessionState

在IHttpHandler 使用Session 通常我们经常,通过session判定用户是否登录.还有一些临时的.重要的数据也尝尝存放在Session中. 在页面我们很容易的得到Session的值,但在类中就会遇到一些问题.也知道通过下面的方法得到. System.Web.HttpContext.Current.Session["userinfo"]; 但是今天此种方法也失灵了.在做一个小应用时,需要实现IHttpHandler,同时也需要用到用户的标识.但是在这个类中怎么也不能找到S

php获取设置用户访问页面语言类

php实现获取及设置用户访问页面语言类,可实现获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language. 一个php获取及设置用户访问页面语言类,具体分析:该实例User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language. 根据用户选择的语言显示对应的页面(英文,简体中文,繁体中文)UserLang.class.php类文件如下: <?php /** User Language Clas

web访问日志分析

关于web访问日志相信很多人一看都是表示一脸懵逼,这里我就给各位小伙伴分享一下. 一般的访问日志都是access.log但是具体的不一样还是要看你的web配置文件. 这是我截取了我日志的最后一行 日志: 10.0.0.1 - - [22/Nov/2015:11:02:00 +0800] "GET /mobile/sea-modules/gallery/zepto/1.1.3/zepto.js HTTP/1.1" 200 24662 "http://shuai12138.blo

Spark SQL 源码分析之 In-Memory Columnar Storage 之 in-memory query

/** Spark SQL源码分析系列文章*/ 前面讲到了Spark SQL In-Memory Columnar Storage的存储结构是基于列存储的. 那么基于以上存储结构,我们查询cache在jvm内的数据又是如何查询的,本文将揭示查询In-Memory Data的方式. 一.引子 本例使用hive console里查询cache后的src表. select value from src 当我们将src表cache到了内存后,再次查询src,可以通过analyzed执行计划来观察内部调用