2024.1.16 用户画像day01 - 项目介绍

目录

一. 项目介绍

整体流程:

项目建设目的:

学习安排:

技术选型:

技术架构:

项目架构:

二 . 名词解释


一. 项目介绍

整体流程:

        项目介绍-elasticSearch-业务数据源导入-离线指标开发-Flume实时采集-Nginx日志埋点数据-

        结构化流实时指标 - 制作报表 

数仓开发用户画像实时开发
hive-spark数据挖掘结构化流-Flume-Kafka-Flink

标签开发,挖掘类,统计类

规则类,标签可视化平台,

用户画像系统构建

项目建设目的:

        1- 从公司角度出发:

                1- 对客户进行分群,进行精准营销 

                2- 对用户分群和统计,私域流量

                3- 找到用户和商品之间的连接,对用户打标签并量化表示

                4- 减少公司的获客成本

        2- 从用户角度出发:

                1- 从海量的产品和数据中,为客户推荐感兴趣的内容

学习安排:

        白天: 电商行业的用户画像

         晚上:保险行业的用户画像

技术选型:

1- ElasticSearch是专门用来做搜索引擎的,一般用在JAVAEE的,它具有几个优点:

                1- 分布式

                2- 单挑数据快速的CRUD

                3- 海量数据存储 

        1.为什么画像数据接入选择ES?

                es支持海量数据插入与更新 es支持与hadoop、hive、spark集成,方案成熟 es-hadoop可直接解决,

                通过sql方式把数据从hive数仓中导入es中

        2.为什么画像结果数据写入ES?

                1. 结果数据写入es,es扩展性强,广泛支持hadoop生态圈技术,

                2. es-sql支持sql化方式操作es索引数据,可视化非常方便,后期开发标签体系的搜索引擎或知识图谱系统是es可以直接作为数据源与其他组件集成。

                3. es支持upsert语法,数据插入和更新可以使用upsert操作,根据主键或文档id判断该文档是否存在,存在就更新,

否则就插入,对于画像业务逻辑中新的标签和旧的标签数据合并非常实用。 

2- 为啥选择Spark SQL的DSL方案呢?

                计算组件如 HIVE presto flink 都可以计算

                1- Spark SQL是基于内存进行计算, 相对于HIVE来说, 计算效率更高
                2- Spark 可以更好的和其他的组件进行集成工作, 比如和MySQL. hive, es ...
                3- 在画像标签中, 有挖掘性标签, 此部分标签需要使用MLlib机器学习库, 采用相关的算法,

                        而Hive并不支持, Flink相对成熟度没有Spark高
                4- 在开发标签的过程中, 需要进行大量的规则匹配处理, 涉及到需要通过代码方式来处理, 此时DSL方案会更加的合适

3- 为什么不用Hive做标签计算

                完成挖掘类标签的时候使用Hive无法完成,标签调度不方便

                Hive计算完画像结果存储在其他介质不方便

                Hive 来计算标签不方便管理和维护

因此可以使用 Spark Job 的方式来计算.

                Spark Job 的方式来计算.

                每一个 Job 计算一个指标, 最终合并进一张画像表。

                能够利用SparkMllib完成挖掘类标签的构建(SparkSQL+SparkMllib)

                技术选型: 使用Spark完成指标计算,每个指标一个Job,合并画像表

 

技术架构:

    主要采用Apache原生版本方案构建整个画像项目, 整个项目主要涉及组件有: Hadoop HIVE Spark oozie persto ES等相关的大数据组件
    其中基于HDFS完成基础数据的存储,通过ES来存储业务数据以及存储标签结果数据
    通过Spark实现标签计算和实时用户行为统计分析工作, 并将相关结果导入到ES和MySQL中
    最终基于FineBI实现报表展示工作, 整个项目是基于Oozie完成定时调度

项目架构:

        mysql业务数据表->datax ->数仓ods -> 确定业务场景 -> Sparksql开发 ->建立标签 ->  使用ES标签搜索 -mysql标签规则 -> 提交定时任务 -> 作业提交 

数据流转:

    整个画像的数据来源有二个方向, 一个是数仓平台的ODS层基础业务数据 一个是Nginx日志数据和埋点数据集

        首先对于ODS层业务数据,主要是基于ES-HADOOP的方式将HIVE中数据导入到ES中, 对于Nginx日志数据和埋点数据集主要是基于Flume将数据采集到Kafka中,

        完成基础数据存储后, 接着基于Spark进行标签统计和用户行为分析的工作这里面主要采用Spark SQL、SparkMLlib 和 structured Steaming实现的, 其中Spark SQL负责标签统计计算,SparkMLlib主要负责完成挖掘类标签计算,  structured Streaming负责用户行为指标统计计算, 将整个结果结果导入到ES和MySQL中, 其中ES导入的标签结果数据, MySQL导入的是用户行为指标结果数据集,

        完成整个统计计算后, 后续基于FINEBI进行画像报表展示, 由于数据源有多个, 引入了persto完成多源统一访问, 最终形成画像报表. 整个项目是基于标签管理平台, 进行标签管理, 对标签进行增删改查以及定时调度, 其底层调度采用Oozie处理的


二 . 名词解释

埋点数据:

        前端埋点: JavaEE/安卓/ios后端

        后端埋点: Flume+Kafka

CRM:客户关系管理系统

ERP: 企业资源管理计划系统

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/627501.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

贵阳贵安推进“数字活市”战略成效明显

作者:黄玉叶 近年来,贵阳贵安将数字经济确立为高质量发展的主路径之一,把推进“数字活市”作为实施主战略、实现主定位,特别是建设“数字经济发展创新区核心区”的重要抓手,从改革、发展、民生三个维度纵深推进“数字活…

中国聚氨酯弹性体行业研究与投资战略报告(2024版)

内容简介: 聚氨酯弹性体广泛应用于钢铁、造纸、印刷等,另外还用于各种胶轮、传送带、耐水耐压胶管、密封条和密封圈、电缆护套及各种薄膜等,主要分浇注型(CPU)和热塑型(TPU)及混炼型3种&#x…

1、NumPy简介:开启Python科学计算之旅

目录 什么是 NumPy? 为什么要使用 NumPy? 安装和设置 NumPy 环境 开始使用 NumPy 在数据科学、人工智能和科学计算的世界中,Python 已经成为了一种主流的编程语言。这一现象的背后,有一个非常重要的推手,那就是 Nu…

openssl3.2 - 官方demo学习 - kdf - hkdf.c

文章目录 openssl3.2 - 官方demo学习 - kdf - hkdf.c概述笔记END openssl3.2 - 官方demo学习 - kdf - hkdf.c 概述 设置摘要算法HKDF的参数, 然后取key 笔记 /*! \file hkdf.c \note openssl3.2 - 官方demo学习 - kdf - hkdf.c 设置摘要算法HKDF的参数, 然后取key *//** C…

【FPGA Modsim】 抢答器设计

实验题目: 抢答器设计 实验目的: 掌握应用数字逻辑设计集成开发环境进行抢答器设计的方法;掌握时序逻辑电路设计的过程。 实验内容: 1、设计支持3名参赛者的…

详解SpringCloud微服务技术栈:Nacos配置管理

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:详解SpringCloud微服务技术栈:Nacos服务搭建及服务分级存储模型 📚订阅专栏:微服务技术全家桶…

泛微与用友NCC的无缝对接,释放企业运营潜能!

客户介绍 某科技股份有限公司作为一家在金融科技行业有着20余年经验的公司,见证了金融科技行业的电子化、信息化、移动化和数字化的发展进程。该公司致力于为金融机构提供领先的产品和专业化服务,其业务涵盖应用软件开发、系统集成、IT服务和IT咨询服务…

在线录屏-通过Web API接口轻松实现录屏

在线录屏是指在互联网上进行屏幕录制的过程。它允许用户通过网络连接,将自己的屏幕活动记录下来,并可以在需要时进行播放、共享或存档。在线录屏常用于教育、培训、演示、游戏等场景,可以帮助用户展示操作步骤、解决问题、分享经验等。通常&a…

Odrive 学习系列三:在odrive工程中添加SEGGER RTT 日志输出功能

一、背景: 对于嵌入式来讲,有个日志输出真真真真的太重要啦! SEGGER JLink自带的RTT日志输出对于老嵌入式而言更是开发利器。 Odrive本身的工程是不带这个功能的,尽管使用stlink可以查阅寄存器等,但感觉还是差了点意思。因此在本系列第二节的基础上,希望能给Odrive工程添…

【昕宝爸爸小模块】深入浅出之JDK21 中的虚拟线程到底是怎么回事(一)

➡️博客首页 https://blog.csdn.net/Java_Yangxiaoyuan 欢迎优秀的你👍点赞、🗂️收藏、加❤️关注哦。 本文章CSDN首发,欢迎转载,要注明出处哦! 先感谢优秀的你能认真的看完本文&…

016-Vue-黑马2023:前后端分离开发:在线接口文档,前端工程化、Element、nginx

第三节 前后端分离开发 1、介绍 开发模式 前后端混合开发:传统开发模式 前后端分离开发:当前最为主流的开发模式 页面原型需求案例:分析出接口文档 离线开发文档示例: 2、YAPI 在线接口文档管理平台: 介绍…

VPC网络和经典网络哪个好?VPC网络和经典网络的区别

VPC网络和经典网络哪个好?VPC网络和经典网络的区别 随着云计算技术的不断发展,越来越多的企业和个人开始使用云服务器来托管自己的应用程序和网站。在使用云服务器时,用户需要选择网络类型其中包括VPC网络和经典网络。那么VPC网络和经典网络哪…

05-python之函数-函数的定义/函数的参数/函数返回值/函数说明文档/函数的嵌套使用/函数变量的作用域

01-函数的介绍 """ 演示:快速体验函数的开发及应用 ​ """ #需求,统计字符串的长度,不使用内置函数len() str1 "itheima" str2 "itcast" str3 "python" ​ #定义一个技术的变…

解决Win11安装打印机修复补丁,连接共享打印机依然错误的方法

问题原因:Win11最新安全共享策略导致! 解决方案:按照下面步骤操作绕过Win11最新安全共享策略。 点击Win图标,在开始菜单选择设置。 选择蓝牙和其他设备,选择打印机和扫描仪。 点击添加设备, 点击手动添加。…

Java实现手机号码归属地查询

前言 接到一个需求&#xff0c;获取手机号码的归属地。这里记录一下&#xff0c;我们可以使用com.googlecode.libphonenumber的geocoder来获取手机号码归属地 1、添加依赖 <!--根据手机号查询归属地 --><dependency><groupId>com.googlecode.libphonenumbe…

HubSpot电子邮件自动回复怎么设置?附注意事项!

HubSpot 提供了电子邮件自动回复的功能&#xff0c;使得企业能够更高效地管理和处理电子邮件通信。以下是关于 HubSpot 电子邮件自动回复的一些重要信息和步骤&#xff1a; 设置电子邮件自动回复的步骤&#xff1a; 登录HubSpot账户&#xff1a; 打开 HubSpot 平台并登录你的账…

基于SSM的戏剧推广网站的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue、HTML 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是…

x-cmd pkg | smartctl - 用于监测和分析硬盘的工具

目录 简介首次用户功能特点竞品和相关作品进一步阅读 简介 smartctl 是一个用于监测和分析硬盘中 S.M.A.R.T.&#xff08;自我检测&#xff0c;分析和报告技术&#xff09;信息的命令行工具&#xff0c;是 Smartmontools 的一部分。通过 smartctl 工具&#xff0c;可以分析各种…

IDEA中如何让包名一层层展开的设置

在开发过程中&#xff0c;发现新下载的一个项目在打开时候&#xff0c;呈现的包是没有一层一层展开的&#xff0c;是平铺在idea中的&#xff0c;截图如下&#xff1a; 设置方法&#xff1a; 打开options的小图标 在treeAppear中的Flatten packages的对号取消掉取消之后的效果…

【RTOS】快速体验FreeRTOS所有常用API(7)任务通知

目录 七、任务通知7.1 基本概念7.2 发出通知7.3 等待通知7.4 实例 七、任务通知 该部分在上份代码基础上修改得来&#xff0c;代码下载链接&#xff1a; https://wwzr.lanzout.com/i4Efu1la39wh 密码:cbvx 该代码尽量做到最简&#xff0c;不添加多余的、不规范的代码。 内容主要…