实战电商大数据项目搭建||电商大数据采集||电商API接口

news2025/2/8 20:55:50

我会提供给你大概1亿条真实的互联网用户上网数据,至于来源,我先不告诉你,绝对是你在网络上无法找到的宝贵数据源。

此外,还会给你提供一个基于当前数据特点而设计的大数据处理方案。

当然,为了防止用户的隐私部分被泄露,我对一些关键字段进行了脱敏,如果说你有什么坏心思的话,暂时就别想了。但是即便如此,这份数据,我相信对你学习大数据的用处都是非常大的。

|数据源解读|数据API接口

这份数据长这样,有非常规整的9个字段(我都替你清洗过了),为了方便你们读取,我把它导出成CSV文件,其中第一行是schema。

图片

为了方便大家获取,我把它放到了云盘上,原文件有12G,我通过压缩之后,也有3G,为了保证大家是真的用这份数据在学习,而不是干别的,这个下载地址需要你加我微信后告诉你。

现在来帮你解读下这份数据,一共个9个字段,其字段意义解释分别如下:

client_ip: 指上网用户的ip地址,你可以根据这个ip知道这个用户大概的位置信息,这个有专门的api可以查询;

domain:指上网人要上的网站地址,你可以根据该网站的性质来判断这个人的上网行为;

time:上网人的上网时间;

target_ip: 上网人要上的网站的目标ip地址;

rcode:网站返回状态码,0为正常响应,2为不正常;

query_type: 查询类型,几乎都是1,即正常上网行为;

authority_recode:网站服务器真正返回的域名,可能跟domain不一样,如果不一样的话,可能说明是个钓鱼网站之类的,你可以去分析分析;

add_msg: 附加信息,几乎都为空,你可以看看如果有内容的话,到底是什么玩意;

dns_ip:当前要上的这个网站由哪个DNS服务器给提供的解析,一般一个DNS服务器会服务一个区域,如果由同一个DNS服务器进行解析的,说明他们在同一片大的区域;

以上是对这份数据的字段解读,相信从这些解释中,你已经大概能了解这份数据的作用了。

|如何建大数据项目

既然数据源了解清楚了,也就知道了大概的业务场景

那么接下来就是如何架构一个大数据项目,为了保证项目的完整性、紧凑性、和易上手性,我特意设计了一个时下最流行的lamda数据处理架构,供你参考:

图片

可以看到,该架构包含了完整的、任何大数据系统都具备的:数据接入、数据落地、数据计算、结果存储,以及最后的结果展现功能。

通过对这个有着完整功能的大数据系统进行实践和学习,如果你能把这套架构真正玩好的话,你会发现,市面上任何复杂的大数据架构在你眼里也不过尔尔,你会有种【万变不离其宗】的掌控感。

当然,这里我只是给你提供参考,具体实践还得看你具体情况,如果你已经有集群环境了,我希望你能尽可能去贴近我的这个架构,因为万一你在实践中出了什么问题,都可以来找我交流探讨。

|你要做哪些准备

数据给你了,架构也给你确定了,接下来你需要做的是:根据以上要求,搭建一套集群环境,这个集群你可以是自己的虚拟机,有条件也可以租个云服务器,然后构建4个节点的集群环境,具体配置建议如下:

节点角色硬件配置节点数量
主节点/客户端节点4G以上内存、50G以上硬盘,4核以上CPU1
计算/存储节点8G以上内存、100G以上硬盘,8核以上CPU3

当然,以上是建议配置,有人说我电脑配置不够怎么办?没事,你可以适当降低要求,配置可以再降低一点,节点数量最好不要低于3个,你需要知道一点的是,配置越低,你玩数据的自由度就越低,但是还是可以玩。

以上配置准备OK,那么接下来你就需要安装集群了,相信这个对于一个学习大数据的人来说,是最基础的一步了,因为只有你会安装了,才能建立起对各个大数据组件大概是个什么东东有个初步的了解。

根据我给的架构要求,你要安装以下这些组件:

1,Hadoop:HDFS+YARN,这个是集群的底座,hive、spark都依赖它;

2,Filebeat:数据源接入工具,这个用来监控数据源变化的,然后将新增的数据写入到kafka,我是觉得它好用,所以向你推荐,当然,如果你用别的工具也可以,那就用你喜欢的代替;

3,kafka:这个不多介绍,当前最流行的流式架构的当红炸子鸡,用来承载流式数据的落地;

4,spark:当今最流行的流批一体分布式计算引擎之一,用他来做数据分析处理;

5,hive:当今大数据的主流数仓组件,用来做离线数据存储和分析;

6,Elasticsearch:当下最流行的分布式搜索引擎,用来做全文检索非常的高效、方便,用来存储分析后的数据;

7,kibana:专门对Elasticsearch数据进行可视化展现的,用它,你可以直观的看到你最后分析的结果数据是个什么样子;

看着是不是很多?首先不要急,一个个安装,其实很快,网上有很多安装部署的教程,这里我就不赘述,你有问题了再找我交流。

其次呢,这些技术组件都是当下主流的,组合在一起,让你在一个实际项目中练手,对你非常有帮助,你试试就知道了。

至于安装的版本,我建议你们不要安装最新的,给你们参考我目前测试集群的版本:HDP3.1(hadoop3.1,kafka、hive都给你关联好) + Elasticsearch7.6。

如果你想部署跟我一样的版本,可以私信找我要安装包,我这全套都有。当然,跟我部署一样,还有个好处就是,你遇到任何技术问题,我应该都可以帮你搞定,因为我,可能都遇到过。

|最后

想告诉你的是,想要学好大数据,动手实践一定是最重要的,我相信你如果能够按照我的这个要求一步步,脚踏实地去做,你的大数据技能一定能得到一个质的飞跃。

不信,你来打我。

PS:可能有人会问,这些数据,基于什么业务要求去做开发呢?

来,给你点思路:

1,用wordcount的方式去统计每个client_ip的数量,看哪些ip上网的次数最多?批处理的方式,跟流式实时的方式都试一下,看结果是否一致?

2,看上网最多的,那几个ip,都上的什么网站,集中上网的时间点都是几点?

3,被上的最多的网站中对应的ip,跟上网最多的ip之间有多少是重合的?

4,哪些ip喜欢上一些类似钓鱼网站的网站;

5,....

怎么样?是不是思路一下子就打开了?

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

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

相关文章

【已解决】SpringBoot图片更新需重启服务器才能显示

问题描述 1、更新头像,并跳转回列表页,发现显示不出来 2、但是前端获取用户头像的信息是在加载页面就会被调用的,同时前端也不存在所谓的缓存问题,因为没有动这部分代码。 但查看响应是能获得正确的信息(前端打印图片…

GitHub Copilot 登录账号激活,已经在IntellJ IDEA使用

GitHub Copilot 想必大家都是熟悉的,一款AI代码辅助神器,相信对编程界的诸位并不陌生。 今日特此分享一项便捷的工具,助您轻松激活GitHub Copilot,尽享智能编码之便利! GitHub Copilot 是由 GitHub 和 OpenAI 共同开…

2024年安全员-A证证考试题库及安全员-A证试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2024年安全员-A证证考试题库及安全员-A证试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上岗证考试大纲随机出的…

合并有序链表

合并有序链表 图解代码如下 图解 虽然很复杂,但能够很好的理解怎么使用链表,以及对链表的指针类理解 代码如下 Node* merge_list_two_pointer(List& list1, List& list2) {Node* new_head1 list1.head;Node* new_head2 list2.head;Node* s…

FFmpeg编译4(1)

ffmpeg.cffmpeg.h 修改ffmpeg文件 修改刚刚拷贝的ffmpeg.c文件,找到int main(int argc, char **argv)函数,将其替换为int run(int argc, char **argv)在修改后的run(int argc, char **argv) 末尾(retrun 之前)加上如上如下代码&…

跟TED演讲学英文:How language shapes the way we think by Lera Boroditsky

How language shapes the way we think Link: https://www.ted.com/talks/lera_boroditsky_how_language_shapes_the_way_we_think? Speaker: Lera Boroditsky Date: November 2017 文章目录 How language shapes the way we thinkIntroductionVocabularySummaryTranscriptA…

【完全复现】基于改进粒子群算法的微电网多目标优化调度(含matlab代码)

目录 主要内容 部分代码 结果一览 下载链接 主要内容 程序完全复现文献模型《基于改进粒子群算法的微电网多目标优化调度》,以微电网系统运行成本和环境保护成本为目标函数,建立了并网方式下的微网多目标优化调度模型,通过改进…

数组和链表的区别是什么?

引言:本文旨在深入探讨数组和链表之间的区别,分析它们在不同情境下的优缺点,并探讨如何根据应用需求选择合适的数据结构。通过深入理解数组和链表的内部工作原理和应用场景,读者将能够更好地应用这些知识解决实际问题,…

【Gradio】从 BigQuery 数据创建实时仪表板

Google BigQuery 是一个基于云的服务,用于处理非常大的数据集。它是一个无服务器且高度可扩展的数据仓库解决方案,使用户能够使用类 SQL 查询分析数据。 在本教程中,我们将向您展示如何在 Python 中查询 BigQuery 数据集,并使用 g…

【论文阅读】-- 评估叠加时间序列和时间事件序列可视化中的对齐方法

中文标题 摘要1 引言2 相关工作2.1 时间事件序列可视化2.2 理解时间事件序列的任务 3个假设4 对比评价4.1 刺激和任务4.2 程序4.3 参与者4.4 测量与分析 5 结果与讨论5.1 前兆和后果事件5.2 中间事件 6 反思和设计意义7 结论致谢参考文献 期刊: IEEE VIS (发表日期:…

2024年【T电梯修理】免费试题及T电梯修理考试总结

题库来源:安全生产模拟考试一点通公众号小程序 T电梯修理免费试题参考答案及T电梯修理考试试题解析是安全生产模拟考试一点通题库老师及T电梯修理操作证已考过的学员汇总,相对有效帮助T电梯修理考试总结学员顺利通过考试。 1、【多选题】TSGT7005-2012《…

企业该如何防查盗版?如何防软件后台泄密数据?

随着信息化的发展,企业日常办公越来越依赖互联网。终端以及普通PC终端在访问互联网过程中,会遇到各种各样不容忽视的风险,例如员工主动故意的数据泄漏,后台应用程序偷偷向外部发信息,木马间谍软件的外联,以…

Android图片圆角转换 RoundedImageView开源项目 小记(1)

android:background“#7f000000” android:paddingLeft“8dp” android:paddingRight“8dp” android:textAppearance“?android:attr/textAppearanceMediumInverse” /> <TextView android:id“id/textView1” android:layout_width“wrap_content” android:la…

c++ 内存分析模型、引用

一、内存模型分区 内存四区的意义&#xff1a; 不同区域存放的数据&#xff0c;赋予不同的生命周期&#xff0c;给我们更大的灵活编程 &#xff08;一&#xff09;程序运行前 在程序编译后&#xff0c;生成了exe可执行程序&#xff0c;未执行程序前分为两个区域 代码区&…

Linux常用命令(14)—查看文件内容(有相关截图)

写在前面&#xff1a; 最近在学习Linux命令&#xff0c;记录一下学习Linux常用命令的过程&#xff0c;方便以后复习。仅供参考&#xff0c;若有不当的地方&#xff0c;恳请指正。如果对你有帮助&#xff0c;欢迎点赞&#xff0c;关注&#xff0c;收藏&#xff0c;评论&#xf…

基于Java技术的摄影跟拍预定管理系统

你好&#xff0c;我是热衷于计算机科学与技术研究的码农小野。如果你对摄影跟拍预定管理系统感兴趣或有相关开发需求&#xff0c;欢迎私信交流。 开发语言 Java 数据库 MySQL 技术 B/S模式&#xff0c;SpringBoot 工具 Eclipse&#xff0c;Navicat&#xff0c;Tomcat …

Nuxt3 [Vue warn]: Hydration node mismatch:【解决方案】

[Vue warn]: Hydration node mismatch: 水合节点不匹配 Server rendered element contains more child nodes than client vdom. 服务器呈现的元素包含的子节点多于客户端vdom。 这个问题解决起来也很好解决&#xff0c;看这个问题是怎么出来的&#xff0c;看代码&#xff1a;…

Unity 天空盒制作使用教程

文章目录 1.概念2.制作天空盒3.使用天空盒3.1 为场景添加3.2 为相机添加 1.概念 天空盒是包裹整个场景的环境效果。 2.制作天空盒 1、创建材质球。 2、设置材质球Shader为SkyBox/6 Sided&#xff0c;将六张贴图放到对应位置。 3.使用天空盒 3.1 为场景添加 方法一、直接…

Vue3 - 在项目中使用vue-i18n不生效的问题

检查和配置 Vue I18n 确保你已经正确安装了Vue I18n并且配置了组合API模式。 安装 Vue I18n npm install vue-i18nnext配置 i18n.js import { createI18n } from vue-i18n; import messages from ./messages;const i18n createI18n({legacy: false, // 使用组合 API 模式l…

【Mysql】DQL操作单表、创建数据库、排序、聚合函数、分组、limit关键字

DQL操作单表 1.1 创建数据库 •创建一个新的数据库 db2 CREATE DATABASE db2 CHARACTER SET utf8;•将db1数据库中的 emp表 复制到当前 db2数据库 ** 1.2 排序** 通过 ORDER BY 子句,可以将查询出的结果进行排序 (排序只是显示效果,不会影响真实数据) 语法结构&#xff1a;…