大数据的常见业务问题和业务场景

article/2025/9/22 14:12:07

概述

搜索引擎概述

  • 桥梁——引导用户找到所求
  • 满足用户需求的过程
  • 连接人与内容、人与服务
    在这里插入图片描述
  • 爬虫:数据收集中心,互联网世界的缩影
  • 索引系统:分析整理爬虫收集到的资源,为检索系统提供数据
  • 检索系统:从预处理好的资源中挑选用户最满意的结果最快最好的展现。

基于MapReduce的互联网网页大数据建库系统

  • 将网页库下载到文件系统中形成网页文件(HTML)(HDFS)
  • 通过Parser提炼、抽取原网页文件生成处理过的网页文件(HDFS)。
  • Inverter对处理过的网页文件进行倒排后,建立索引生成小索引文件(HDFS)
  • 索引合并后形成正式索引文件(HDFS)后对外进行服务

具体流程如下:

  • 目的:建立供检索使用的索引和摘要
  • 输入:网页
  • 输出:索引和摘要
  • 处理:多轮map-reduce
  • 页面分析和处理(parser-extractor)
  • 页面属性小库输出(splitter)
  • 小库正排转倒排(invert-index)
  • 小库合并大库(index merge)

什么是正排?什么是倒排?
答:从url解析出关键词排列叫做正排,从关键词索引到url排列叫倒排。

如何去除url不一样但页面内容一样的网页?
答:布隆过滤器(Bloom Filter)。

  • 由一个很长的二进制和一系列随即映射函数组成
  • 布隆过滤器可以用于检索一个元素是否在一个集合中
  • 优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率。

去重是依靠已有的标记进行去重,只需要维护很小的过滤器文件,将新页面通过Hash后,对比过滤器文件中的数据,再判断是否重复即可

广告系统概述

广告:搜索场景、网盟场景、

  • 自主搜索流量:淘宝直通车、百度搜索推广、Google AdWords
  • 联盟(外部)流量:淘宝阿里妈妈、百度网盟推广、Google AdSense
  • 品牌广告:钻石展位、百度精准广告
  • 按成交计费:淘宝客

广告系统付费模式:

  • 搜索广告点击计费(CPC)
  • 展示广告展现计费(CPM)
  • 淘宝客(CPS)
    淘宝广告系统简介
  • 搜索广告:网民、广告主、搜索平台
  • 广告触发:关键词表达需求、网民输入的query和广告主购买的keyword进行匹配。
  • CTR预估(click/show):点击率用户广告的排序和推左,保护网民的利益和提升搜索引擎的收益。
  • 广告排序:关键词广告拍卖机制

平台要综合广告的质量、平台所获得的收益、用户的利益综合考量博弈,最终目标应是在不损害用户利益的条件下,保证平台的利润最大。

  1. 关键词分析(nlp文本分析、中文分词、句相似度、意图分析、主题词)
  2. 相关性分析(同义词、关联规则、宽泛匹配、用户偏好、cookie、session)
  3. 检测数据库索引(短语匹配、业务过滤、倒排索引)
  4. 广告展示(创意标题、描述、url)
  5. 广告排序(根据 点击率 * 价格 等、选择高质量广告)

推荐系统概述

推荐系统主要可以分为以下三个部分:

  • ONLINE——在线:对数据进行实时产生(存在妥协、对时效性要求较强)NoSQL、websever、
  • NEARLINE——近线:storm(ms级)、sparkStreaming(秒级)
  • OFFLINE——离线:批量跑全天的数据(耗时的算法和计算)mapreduce、spark、hive、mahout

部分案例具体说明:

  • 离线挖掘出的有效数据,想办法快速提供服务,通过类似NoSQL中间介质进行交换。OFFline给定一个离线挖掘任务,将数据转至NoSQL(redis、memcache、couchbase、hbase、leveldb、mongod(特点:快)、NoSQL可以存储大量的数据),再将数据对接到websever。
  • Online首先必须保证WebUI,数据来自于websever、nosql等。

抽象出三种推荐方式

  • 用户(相似兴趣/好友)——用户(喜欢)——物品
  • 用户(历史、关联)——物品——物品
  • 用户(喜欢、具有)——特征(包含)——物品

用户行为数据——不同的搜索引擎——初始推荐结果——过滤——排名——推荐

一个具体的案例

某音乐推荐系统🎵目的:为用户推荐其他音乐

初级版本:

  • 用户——》反作弊——》行为日记收集——》数据清洗——》结构化入库(HDFS、Hbase)——》数据挖掘平台(推荐、分类、聚类)——》(nosql)缓存数据库(好友关系、音乐榜单、相关音乐(key-value))——》在线搜索引擎——》WebUI《——用户

反作弊:恶意刷屏、同行竞争
行为日志收集:展现日志+点击日志
数据清洗:去除冗余数据、非结构化到结构化
结构化入库:用户行为数据(mid1、mid2、mid3)
数据挖掘平台:人物画像

总结:从用户处收集数据、分析、挖掘后又反之推荐给用户。
在这里插入图片描述
进阶版本: 加入内容提供商

  • 内容提供商——》操作平台(内容管理系统CMS)——》发布系统——》结构化入库(物品元数据:music_id、desc、tag、local、style、img、url)
  • 结构化入库——》报表系统——》内容管理系统(迭代优化)

再进阶版本: 加入工程师、技术人员(干活)(任务是优化系统)

  • 监控系统(缓存数据库、在线检索、数据挖掘等)——》工程师——》统一配置服务器(配置资源)——》在线搜索引擎

再再进阶版本: 加入产品经理 PM

  • 分析调研系统《——报表系统——》评估系统——》PM——》需求发布系统——》工程师

技术总结:

  • WebUI:安卓、前端、IOS、HTML
  • 在线搜索引擎:webpython、java、Thrift RPC
  • 缓存数据库:redis、Hbase、MongoDB
  • 数据挖掘平台:Mapreduce、Spark、tensorflow、caffe、storm
  • 统一配置服务器:Zookeeper
  • 监控系统:Nagios、Zabbix
  • 结构化入库:HDFS、HBase、MySQL
  • 数据清洗:ETL、Mapreduce、Spark
  • 行为日志收集:Flume+Kafka+Storm+HDFS/HBase/MySQL
  • 发布系统:MQ:Kafka、ActiveMQ
  • 报表系统:Hive、SparkSQL
  • 需求发布系统:Jira、Bugzilla

http://chatgpt.dhexx.cn/article/d3e73ux3.shtml

相关文章

常用数据分析指标和术语

按照以下三类进行汇总。 1、互联网常用名词解释 2、统计学名词解释 3、数据分析名词解释 一、互联网常用名词解释 1、PV(Page View)页面浏览量 指某段时间内访问网站或某一页面的用户的总数量,通常用来衡量一篇文章或一次活动带来的流量…

GoogLeNet论文阅读,代码实现(Inception系列)

文章目录 GoogLeNet(Inception v1)个人理解总结本篇论文主相对于AlexNet和VGG有三处改进(不同)1、在inception块中引入了11卷积2、将第一层全连接层替换为global-averge-pooling3、利用inception近似稀疏数据结构4、引入辅助分类层 代码(GoogeLeNet结构实现&#xf…

“Python小屋”1300篇历史文章分类速查表

总体说明: 各分类中的文章是按发布时间逆序排列的,动态更新。公众号所有代码均可作为教学案例,转载请注明出处,请勿用作商业用途。 快速查找历史文章的方法:1)单击本文右上角的按钮“...”,然后…

100个数据分析常用指标和术语

大家好,我是辰哥~ 有个朋友是金融行业产品经理,最近在对已有的站内用户做分层与标签分类,需要对用户进行聚类分析。一般从事数据分析行业的朋友对这类词并不陌生,但是像市场运营人员就会把这类些名词概念搞混,导致结果…

TF使用例子-情感分类

北京站 | NVIDIA DLI深度学习培训 2018年1月26日 NVIDIA 深度学习学院 带你快速进入火热的DL领域 阅读全文 正文共10052个字,4张图,预计阅读时间26分钟。 这次改写一下,做一个简单的分类模型和探讨一下hidden layer在聚类的应用场景下会有什…

计算机视觉(五)

Bag of features,简称Bof,中文翻译为“词袋”,是一种用于图像或视频检索的技术。而检索就要进行比对。两幅不同的图像如何比对,比对什么,这就需要提炼出每幅图像中精练的东西出来进行比较。 一、Bag of features算法基…

Eastmount博客导读:专栏系统分类和博客归纳总结

为了更好地帮助博友学习作者的博客,方便作者自己归纳总结专栏,本文详细介绍了作者八年来,在CSDN写的各种专栏,各种系列文章。八年来,作者经历了从本科到硕士,到贵州教书成家,再到现在的博士。八…

Python编程实现用KNN算法对红酒分类功能

一、任务要求 导入红酒数据集(load_wine),编写Python代码,完成以下任务: 1、实现计算平均酒精含量的功能; 2、实现对数据的标准化; 3、使用kNN算法实现红酒分类功能 二、代码实现 from sklearn…

文本挖掘(四万字总结篇:爬虫 - 文本预处理 - 高频词统计 - 聚类 - 情感分析)

1 爬虫 1.1 爬虫原理 这部分内容可以跳过,掌握与否对后面内容的阅读影响并不大,但有兴趣的话可以看看呐~ 实现一个爬虫,一般需要经过两个步骤:处理请求和解析源码/数据。 处理请求方面,我们可以使用Python程序自动发送…

python卷积神经网络代码,python卷积神经网络分类

怎样用python构建一个卷积神经网络模型 上周末利用python简单实现了一个卷积神经网络,只包含一个卷积层和一个maxpooling层,pooling层后面的多层神经网络采用了softmax形式的输出。 实验输入仍然采用MNIST图像使用10个featuremap时,卷积和p…

用python实现基于自媒体数据的人群聚类分析

🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习…

二叉树三种非递归遍历以及代码实现

二叉树三种非递归遍历 1.二叉树前序非递归遍历实现,(采用栈) 思路:(用一个栈) 1.首先用cur标记树的根(root),当cur非空的时候; 2.就直接打印根,并且将cur(也就是root)入栈; 3.接着遍历根的左子…

c++练习(5):二叉树非递归遍历

二叉树遍历 二叉树有三种遍历方法:前序(跟左右)跟节点在前面、中序(左跟右)跟节点在中间、后续(左右跟)跟节点在后面 前序(跟左右):上图的二叉树,第一次跟左右对应ABC…

C++——二叉树OJ|二叉树非递归遍历

目录 二叉树的前序遍历 二叉树的中序遍历 二叉树的后续遍历 二叉树的前序遍历 144. 二叉树的前序遍历 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<int> preorderTraversal(TreeNode* root) { TreeNode* curroot; stack<TreeNode*>…

数据结构与算法_二叉树非递归遍历

记录二叉树的前序&#xff0c;中序&#xff0c;后续&#xff0c;层序等非递归遍历。 1 二叉树非递归前序遍历 用栈实现二叉树非递归前序遍历&#xff0c;按照 V L R顺序进行遍历&#xff1b;每一个都按照V L R方式进行。 上图中&#xff0c;根节点先入栈&#xff0c;出栈并访…

二叉树遍历非递归C++

二叉树遍历非递归C 题目链接二叉树的前序遍历思路分析代码实现 二叉树的中序遍历思路分析代码实现 二叉树的后序遍历思路分析代码实现 一点点题外话 题目链接 二叉树的前序遍历 144. 二叉树的前序遍历 思路分析 既然要使用非递归的方式&#xff0c;那就必须要借助栈来进行处…

二叉树的遍历(非递归)

由于二叉树的递归方法实际上是系统在使用栈进行操作&#xff0c;因此我们的迭代&#xff08;非递归&#xff09;方法也就需要使用栈进行模拟。 一、先序遍历 我们需要明白&#xff0c;进栈的元素都是树的根节点 root。 所以我们需要先访问该节点&#xff0c;再将该节点进栈。…

二叉树非递归遍历算法分析

以前没有学习过树的相关算法&#xff0c;只是了解一些皮毛&#xff0c;最近开始认真学习它。看视频或者网上查资料&#xff0c;可以知道怎么去遍历一棵树&#xff0c;但是算法为什么是这样的呢&#xff1f;少有讲到。如果有一天&#xff0c;我忘记了这个算法&#xff0c;我需要…

c语言和c++实现二叉树非递归遍历

结合栈结构来实现二叉树的非递归遍历&#xff0c;首先将根节点入栈&#xff0c;然后对栈内元素进行循环&#xff0c;弹出栈顶元素&#xff0c;根据链表结点携带的标志位flag来判断是对于结点进行打印还是后续的入栈操作。入栈顺序决定着实际的遍历方式。 main.cpp #include&l…

【数据结构】二叉树的非递归遍历(完整代码)

默认给一棵树前序遍历的结果&#xff0c;按要求创建这棵树&#xff08;#表示空&#xff09;&#xff0c;并用非递归的方法对它进行遍历。 解题思路 1.递归遍历&#xff1a; 则将二叉树的遍历看作是分治问题&#xff0c;将每一棵树都分为根-左子树-右子树三部分&#xff0c;每…