物流实时数仓:采集通道搭建

news2024/11/18 11:17:25

系列文章目录

物流实时数仓:环境搭建


文章目录

  • 系列文章目录
  • 前言
  • 一、环境准备
    • 1.前置环境
    • 2.hbase安装
      • 1.上传并解压
      • 2.配置环境变量
      • 3.拷贝jar包
      • 4.编写配置文件
      • 5.分发配置文件
    • 3.Redis安装
      • 1.安装需要的编译环境
      • 2.上传并解压文件
      • 3.编译安装
      • 4.后台访问
    • 4.ClickHouse安装
    • 5.Flink安装
  • 二、数据采集
    • 1.上传文件
    • 2.创建数据库
    • 3.模拟数据
  • 总结


前言

之前学校安排了实训,所以有一堆事情要处理。现在基本算是搞完了,继续进行学习的提升,这次进行的是实时数仓的学习,可以算是大数据学习的最后阶段了。
以下是实时数仓的框架图。
在这里插入图片描述


一、环境准备

1.前置环境

我们需要准备好以下环境
jdk、hadoop、zookeeper、kafka、mysql。
这些环境在之前的离线数仓都安装过,这里就不再重复了。
线上问诊

2.hbase安装

hbase专栏
接下来整合phoenix,这个软件可以让我们用SQL操作hbase

1.上传并解压

在这里插入图片描述

2.配置环境变量

# PHOENIX_HOME
export PHOENIX_HOME=/opt/module/phoenix
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PATH:$PHOENIX_HOME/bin

3.拷贝jar包

cp phoenix-server-hbase-2.4-5.1.3.jar /opt/module/hbase/lib/

4.编写配置文件

vim /opt/module/hbase/conf/hbase-site.xml

<property>
    <name>phoenix.schema.isNamespaceMappingEnabled</name>
    <value>true</value>
</property>

<property>
    <name>phoenix.schema.mapSystemTablesToNamespace</name>
    <value>true</value>
</property>
vim /opt/module/phoenix/bin/hbase-site.xml

<property>
    <name>phoenix.schema.isNamespaceMappingEnabled</name>
    <value>true</value>
</property>

<property>
    <name>phoenix.schema.mapSystemTablesToNamespace</name>
    <value>true</value>
</property>

5.分发配置文件

xsync /opt/module/hbase/lib/phoenix-server-hbase-2.4-5.1.3.jar
xsync /opt/module/hbase/conf/hbase-site.xml 

之后我们启动zk、hadoop和hbase测试一下。
在这里插入图片描述
然后访问以下hbase的webui
http://hadoop102:16010/
在这里插入图片描述
之后连接Phoenix

/opt/module/phoenix/bin/sqlline.py hadoop102,hadoop103,hadoop104:2181

在这里插入图片描述

3.Redis安装

1.安装需要的编译环境

sudo yum install centos-release-scl scl-utils-build 
sudo yum install -y devtoolset-8-toolchain
sudo  scl enable devtoolset-8 bash

2.上传并解压文件

tar -xvf redis-6.0.8.tar.gz -C /opt/module/
cd ../module/redis-6.0.8/

3.编译安装

make
make install

4.后台访问

注意上边命令是用root完成,现在我们用atguigu进行下边的命令。

  1. 备份redis.conf
cp /opt/module/redis-6.0.8/redis.conf ~/my_redis.conf
  1. 修改设置
vim  ~/my_redis.conf

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. Redis启动
redis-server ./my_redis.conf

在这里插入图片描述

4.ClickHouse安装

具体内容参考之前的博客不写了
ClickHouse

5.Flink安装

Flink安装

二、数据采集

1.上传文件

cd /opt/module/
mkdir tms
cd tms

在这里插入图片描述

2.创建数据库

在这里插入图片描述
然后运行.sql文件
在这里插入图片描述
里面会有一些初始数据。
在这里插入图片描述

3.模拟数据

修改一下
application.yml
在这里插入图片描述
这里的信息根据自己的数据库信息进行修改。

java -jar tms-mock-2023-01-06.jar

在这里插入图片描述
由于我们模拟的是实时数仓,所以他会不停的生成数据,所以等个半分钟,就可以终止进程然后去数据库看数据了。
在这里插入图片描述
这就是生成数据的实时时间,说明数据进行了更新,但这不是模拟数据的时间,模拟数据的时间可以在application.yml设置。

换个表查看
在这里插入图片描述
我们发现实时数据也进行了更新。


总结

至此,物流实时数仓采集通道搭建完成。

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

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

相关文章

LeetCode | 19. 删除链表的倒数第 N 个结点

LeetCode | 19. 删除链表的倒数第 N 个结点 OJ链接 思路&#xff1a; 定义虚拟头节点dummy并初始化使其指向head然后定义快慢指针让快指针先走n步然后一起走最后删除倒数第n个节点然后释放虚拟节点dummy struct ListNode* removeNthFromEnd(struct ListNode* head, int n) {…

零代码编程:用ChatGPT根据视频标题来批量重命名字幕文件

现在有很多视频文件&#xff1a; 还有视频相对应的字幕文件&#xff1a; F:\儿童学习教育\Abadas.适合2岁以上.BBC儿童学习单词的动画\abadas字幕 两者的文件标题不一样&#xff0c;现在要将字幕文件的标题全部根据视频文件来重命名。 在chatGPT中输入提示词&#xff1a; 你…

新版Testwell CTC++带来哪些新变化?

Testwell CTC在版本10中引入了新的工具ctcreport来直接从符号和数据文件生成HTML报告。详细的特性描述可以在测试井CTC帮助中找到。在本文档中&#xff0c;描述了与前一代报告相比的改进和变化。 Adaptable Layout可调整布局 您可以选择一个适合于项目结构的布局。布局决定了报…

tokenizers Tokenizer 类

Tokenizer 类 依赖安装 pip install tensorflow pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple基类原型 tokenizers.Tokenizer(model)基类说明 Tokenizer 函数构造一个分词器对象。分词方式主要有word-level、subword-level、char-level三种&#x…

visionOS空间计算实战开发教程Day 1:环境安装和编写第一个程序

安装 截至目前visionOS还未在Xcode稳定版中开放&#xff0c;所以需要下载​​Xcode Beta版​​。比如我们可以下载Xcode 15.1 beta 2&#xff0c;注意Xcode 15要求系统的版本是macOS Ventura 13.5或更新&#xff0c;也就是说2017年的MacBook Pro基本可以勉强一战&#xff0c;基…

数据仓库

一. 各种名词解释 1.1 ODS是什么&#xff1f; ODS层最好理解&#xff0c;基本上就是数据从源表拉过来&#xff0c;进行etl&#xff0c;比如mysql 映射到hive&#xff0c;那么到了hive里面就是ods层。 ODS 全称是 Operational Data Store&#xff0c;操作数据存储.“面向主题的…

[C++随想录] 哈希之unordered_map和unordered-set的封装

unordered_map和unordered_set的封装 1. hash模版的改变1.1 hash类模板 头的改变1.2 封装迭代器类1.2.1 构造 && 拷贝构造1.2.2. 1.2.3. 其他运算符重载 1.3 hash类实现普通迭代器和const迭代器 2. unordered_set的底层逻辑3. unordered_map的底层逻辑4. 源码4.1 hash类…

buildadmin+tp8表格操作(4) Table组件,baTable类和 elementplus中的属性关系

在buildadmin 中&#xff0c;table组件是封装的 element-plus中的方法&#xff0c; 所以说&#xff0c; 在 buildadmin的table组件中&#xff0c;是可以通用 elementplus中的属性的 以上这些属性&#xff0c; 在buildadmin中都是可以使用的 使用方式和 elementplus el-table用…

终端仿真软件 SecureCRT v9.4.2

SecureCRT是一款终端仿真软件&#xff0c;它提供了类似于Telnet和SSH等协议的远程访问功能。SecureCRT专门为网络管理员、系统管理员和其他需要保密访问网络设备的用户设计。 SecureCRT具有以下特点&#xff1a; 安全性&#xff1a;SecureCRT支持SSH1、SSH2、SSL和TLS等加密和…

git可以pull到代码,push时提示没有权限。解决办法:git生成ssh密钥(详细步骤)

1、首先右键点击电脑桌面&#xff0c;点击“git bash here”&#xff0c;打开git命令窗口 2、如果git用户名和邮箱等已经完成配置&#xff0c;则跳过此步骤&#xff0c;直接操作第3条&#xff1b;假如没有配置&#xff0c;继续如下操作&#xff1a; (1)、在命令窗口配置用户&a…

怎么实现在微信公众号预约挂号功能呢

随着移动互联网的普及&#xff0c;微信公众号已经成为人们获取信息、了解资讯、预约服务的重要渠道。为了方便患者&#xff0c;许多医院也纷纷开通了微信公众号预约挂号功能。本文将介绍如何在微信公众号上实现预约挂号功能&#xff0c;帮助患者更加便捷地预约挂号。 一、关注医…

HarmonyOS ArkTS List组件和Grid组件的使用(五)

简介 ArkUI提供了List组件和Grid组件&#xff0c;开发者使用List和Grid组件能够很轻松的完成一些列表页面。常见的列表有线性列表&#xff08;List列表&#xff09;和网格布局&#xff08;Grid列表&#xff09;&#xff1a; List组件的使用 List是很常用的滚动类容器组件&…

python接口自动化测试之接口数据依赖

一般在做自动化测试时&#xff0c;经常会对一整套业务流程进行一组接口上的测试&#xff0c;这时候接口之间经常会有数据依赖&#xff0c;那又该如何继续呢&#xff1f; 那么有如下思路&#xff1a; 抽取之前接口的返回值存储到全局变量字典中。初始化接口请求时&#xff0c;…

数据资产入表实务操作的难点及解决方案

在当前数字化的浪潮下&#xff0c;数据已经成为劳动、土地、知识、技术以后的第五大生产要素&#xff0c;“数据就是资源”已成为共识。8月21日&#xff0c;财政部正式印发《企业数据资源相关会计处理暂行规定》&#xff0c;对于符合规定定义和确认条件的数据资产&#xff0c;可…

vue3.0 + qiankun遇到的问题

进入子应用再回到主应用切换动态路由时 TypeError: Cannot read properties of undefined (reading ‘appWrapperGetter’) application ‘plat’ died in status UNMOUNTING: instance.$destroy is not a function 第一个报错是因为子应用切走时没有销毁 vue的实例&#xff0…

麒麟系统开机忘记密码,密码重置

开机后&#xff0c;麒麟系统忘密码了... ... 1.关机状态下&#xff0c;点击电源开机&#xff0c;进入GRUB界面&#xff08;这个得看自己的系统进入GRUB的方式&#xff0c;有的直接进GRUB&#xff0c;有的直接进系统启动&#xff0c;我是按的F2进入GRUB界面&#xff09;&#xf…

深度学习之自监督模型汇总

1.BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding paper:https://arxiv.org/pdf/1810.04805v2.pdf code:GitHub - google-research/bert: TensorFlow code and pre-trained models for BERT Abstract&#xff1a;我们引入了一种名为 BE…

ECharts零基础使用思路 图表案例网站推荐

1、用npm安装echarts npm i echarts -S 2、引入 &#xff08;1&#xff09;可以在mian.js里全局引入 import echarts from ‘echarts’ Vue.prototype.$echarts echarts 将echarts挂载在Vue原型上 用时直接this.$echarts即可 &#xff08;2&#xff09;也可以在组件中按需引入…

OpenAI宫斗,尘埃落定,微软成最大赢家

周末被OpenAI董事会闹剧刷屏,ChatGPT之父Sam Altman前一天被踢出董事会,免职CEO,后一天重返OpenAI,目前结局未知。 很多同学想要围观,缺少背景知识,这里老章为大家简单介绍前因后果及涉及的人物,时间线,让大家轻松围观。 备好瓜子,开始。 1、主角 先看一张图,看一…

SWAT-MODFLOW耦合

耦合模型被应用到很多科学和工程领域来改善模型的性能、效率和结果&#xff0c;SWAT作为一个地表水模型可以较好的模拟主要的水文过程&#xff0c;包括地表径流、降水、蒸发、风速、温度、渗流、侧向径流等&#xff0c;但是对于地下水部分的模拟相对粗糙&#xff0c;考虑到SWAT…