论大数据服务化发展史

文章目录

  • 引言
  • 正文
  • 单一指令阶段
  • 脚本化阶段
  • 用户界面操作阶段
  • 大模型+AIOPS阶段
  • 总结

引言

一直想写一篇服务化相关的文章,那就别犹豫了现在就开始吧

正文

作为大数据基础架构工程师,业界也笑称“运维Boy”,日常工作就是在各个机器上部署以及维护服务,例如部署Hadoop、Kafka、Pulsar这些等等,用于给公司业务提供数据导入、存储、分析服务。这些事情在经历了十多年已经演变出以下几个阶段,今天就以唠嗑的形式进行展开说说
在这里插入图片描述

单一指令阶段

这是最原始的阶段,在机器/操作系统上的所有事情都要由大数据SRE通过一条条执行进行操作,举个简单的例子。当公司需要你新搭建数仓时,也就相当于要搭建以下三层

  • 存储层:搭建Hadoop、Hive、HBase集群等,这是用于将所有公司数据包括用户数据的存储
  • 导入层:搭建FlinkCDC、Flume、Kafka/Pulsar等数据导入服务,这是用于将数据导入到存储层
  • 分析层:搭建Doris、ClickHouse、Presto、SpringBoot等服务,这是用于将存储层的数据按照预期的想法进行计算出最终可直接用于分析的结果,例如庞大的公司昨天赚了多少钱?分别是各个城市赚了多少?相比上个月多了多少等等

换算到真正要做的事情,那大致流程就是,先申请机器(物理机或者云服务)、初始化环境例如搭建SSH等等,然后下载各个组件的安装包上传到对应的机器,针对对应的组件进行配置修改以及各个组件启动的前置动作,最后再根据具体的启动指令来挨个启动机器等等。如果机器只有几台,你不会觉得什么,但是如果有三四十台的时候,你会觉得手软以及抱怨。大致抱怨以下几点

  • 工作量大:要靠人工登陆每台机器重复执行那么多的步骤
  • 容易出错:这类动作重复多次容易出现人工操作失误导致影响
  • 体验差:这类事情做多了对于SRE来说是煎熬,并不会有太多技术上的成长,最后沦为只会执行这几个指令的“工具人”

脚本化阶段

人类历史发展本质上就是对资源的利用,为了更合理的利用资源因此衍生出了各种革命,例如第一次工业革命通过蒸汽替代人力,第二次工业革命通过各种能源燃料更大幅代替人力,第三次也就是最近几十年的互联网革命,本质上也是省资源避免大量的重复劳动。

上面这段话想表达的是, 互联网行业可以说90%以上的重复劳动都是没啥意义的,就相当于在一辆豪华的汽车🚗内是有人在里面蹬三轮,这不是很滑稽吗。因此如果你发现自己的工作中还存在大量 单一指令阶段的事情,那么务必要想办法进行脚本化。脚本本质上就是一本操作指南,给“操作系统”看的,举个例子如果你是一个果园园主,你雇了30个人进行水果采摘,你肯定不会去给每一个人讲解如何识别水果、水果具体的采摘的流程是怎么样子的,要用手托住果子在用剪刀轻轻减哪个部位之类的话。因为这样不仅耽误大量你的时间,并且每年水果成熟时你都要重复一遍,因此更高效的方式是花上一天时间写一本“水果采摘指南”,后续的每一个采摘的人直接看下指南即可知道该怎么做,这个指南就是脚本。

那么工作中也是一样,可以将下载组件包、解压包、更改配置、服务启动/重启等操作直接封装成脚本,然后将可能会变的东西作为参数传进来,这样的话无论是针对多少台机器进行操作,你只需要在这些机器上执行一下脚本即可。在这个基础上还能做二次优化,就是在所有机器配置SSH后,你只需要在执行脚本时传入要做变更机器的标识例如IP,执行的机器就会自动将这些“逻辑”分发到各个机器上进行执行,这样的操作方式是不是更加舒服?或者说这是不是才是一个相对成熟的流程?

那么此时大家觉得这个流程是否还存在问题?可以思考🤔一会再继续往下看。其实也很简单,就是对开发人员的专业能力是比较高的,换成是上面的例子来解释就是,果园园主不想花时间去学习写“水果采摘指南”,或者说所有果园园主单独写指南从上帝视角看本质上就是资源的浪费,要怎么解决这个问题呢。也不复杂,直接让上帝提供几份“水果采摘指南”,各个果园园主只需要选择适合自己的直接用岂不美哉?那么就引出了用户界面操作阶段

用户界面操作阶段

在读这篇文章的你相信对网站操作也不陌生了,例如咱们不需要知道网络底层是怎么操作,代码是怎么编写的,就能完成多人跨网络、跨时空的沟通,这些本质上要归功于用户界面操作阶段, 因为这些东西已经包装成了几个按钮。大数据SRE的工作内容其实也是可以作成几个按钮来大幅提升效率的,例如要在某些服务上搭建数仓,那么只需要在Web页面上勾选要部署服务的机器标识例如IP,然后选择想要安装的服务,然后点击确定即可完成安装,然后安装完后在Web页面就有这个服务的专门管理页面,例如服务启动、配置更改、使用情况监控等等,是不是一下子觉得高级了起来?

更重要的是,你发现甚至你都不用掌握过多的SRE的知识也能完成这份工作?并且即便后续在更大的场景例如要在几百台、几千台机器进行部署维护你也不怕了?这就是互联网的魅力,所以说互联网革命也是人类历史上对资源利用的一大进步,如果咱们深处互联网时代,甚至从事互联网工作,而不具备互联网思维,那岂不是一种倒退吗或者形象点就是一个远古人生活在21世纪还在钻木取火,这就挺奇怪的。

在这个阶段是否还有能改进的地方,接下来是我的设想或者是YY时间也就是 大模型+AIOPS阶段

大模型+AIOPS阶段

最近几年随着大模型的爆发,有不少企业以及个人已经用它来提升和改进自己的工作效率。那么以后是否还有这样的一种模式,就是我们只要跟机器人,或者说是一位“虚拟同事”发送 给我搭建一套数仓指令是否就可以了?它会自动接续这条自然语言的语意,咱们进行各个流程的操作,在一些关键流程我们人类只需要进行审批确认没问题即可,剩下的事情交给机器去做就够了。

在这个基础上,运维人员也不用天天盯着监控告警了,我们可以将历史发生过的事故数据以及专业知识喂人工智能,并训练它针对具体事情该做出怎样的决策,举个简单的例子比如某台机器的CPU过高,那么自动排查问题并进行修复,最后再将排查的结果以及修复的流程发给人类即可,这岂不美哉?而人类过多的做这些事情本质上还是一种资源的浪费,因为存在过多过多重复劳动、过多没有太多价值的事情,如果一个人的一辈子都在做这种事情,那本质上我们还是几万年前那个吭哧吭哧钻木头🪵的原始人,一切的一切都从来没有变过。

总结

以上是我对大数据服务化粗糙的认知,输出出来是希望能引发一些思考🤔,当然写的过程中也引发了我自己的不少思考。这个过程中虽然存在一点批判,但绝不是针对具体的个人,而是针对目前常见的一些流程设计,单纯觉得有些设计可以变得更“美”一些。如果对服务化感兴趣的伙伴可以去针对性的学习专业的知识来改善工作内容,本篇文章仅仅是唠嗑,存在很多瑕疵,但我始终相信,多人沟通讨论可以构建设计一个更加完美的设计,因此如果能引发其他人的共鸣或者不同想法💡其实都是好事。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024 年广东省职业院校技能大赛(高职组)“云计算应用”赛项样题 3

#需要资源(软件包及镜像)或有问题的,可私聊博主!!! #需要资源(软件包及镜像)或有问题的,可私聊博主!!! #需要资源(软件…

C语言文件操作1

1.文件的基础知识 ⚀文件 ▶︎概念◀︎ 文件是指存储在外部存储器上的数据集合。 常见的有:磁盘、U盘等等。 ▶︎作用◀︎ 保存数据 ▶︎文件名◀︎ 文件是指文件的标识符号,每个文件都有一个文件名。 文件名主要由三部分组成:文件路径文件名字文件后…

JSP课设:学校招生系统(附源码+调试)

Java web学校招生系统 Java web学校招生系统功能概述 (1)登录模块:学校招生系统提供管理员和考生两者登录角色,分别对应不同的功能,登录信息存储在数据库中。 (2)前台浏览:学校招生…

医药行业痛点以及OKR解决方案

一、背景 随着医药行业的快速发展和市场竞争的加剧,企业面临着前所未有的挑战和机遇。为了在激烈的市场竞争中立于不败之地,某知名医药企业决定引入OKR(Objectives and Key Results,目标与关键成果)管理模式&#xff0…

【多线程】进程process(进程的管理+进程的调度+分时复用(并发)+PCB)

文章目录 进程一、计算机的组成:1.指令(Instruction) 二、浅谈操作系统1.日常的操作系统1.操作系统内核内核:进程的隔离性: 三、进程(process)1.进程的概念2.进程的管理1.管理的两个角度&#x…

NAT网络地址转换原理解析

NAT(Network Address Translation),即网络地址转换,是一种在1994年提出的地址转换技术。它的主要目的是在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址。NAT实际上是为解决IPv4地址短缺而开发的技术。NAT…

基于javassm实现的旅游景点线路网站

开发语言:Java 框架:ssm 技术:JSP JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.…

基于JAVA+SpringBoot+UniApp+Vue的前后端分离的手机移动端图书借阅平台

一、项目背景介绍: 随着社会信息化的快速发展,图书馆作为知识传播和学术研究的重要场所,扮演着不可替代的角色。然而,传统的图书馆借阅方式存在一些问题,如人工操作复杂、排队等待时间长、信息交流不便等。为了提高用户…

STL库 —— vector 的编写

一、成员变量 二、容量成员 2.1 size 函数 我们在定义私有成员时就会发现,其中 _finish 相当于 string 中的 size 的地址, _endofstorage 相当于 string 中的 capacity 的地址,所以 size 函数和 capacity 函数其实基本没有改变。 size_t s…

蓝桥杯备赛合集

蓝桥杯 - 穿越雷区 解题思路: dfs 方法一: import java.util.Scanner;public class Main {static char[][] a;static int[][] visited;static int[] dx { 0, 1, 0, -1 };static int[] dy { 1, 0, -1, 0 };static long min Long.MAX_VALUE;static …

DtDay1

1.导图 2.mywidget.cpp源码 #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//设置窗口大小this->resize(900,700);//设置窗口标题this->setWindowTitle("玄冥科技");this->setWindowIcon(QIcon("C:\\Users…

3D打印技术引领压铸模具制造新变革

随着工业4.0浪潮的席卷,3D打印技术以其独特优势,正逐渐成为新一轮工业革命中的璀璨明星。这一技术不仅为“中国制造”向“中国智造”的转型提供了强大动力,也为压铸模具这一铸造行业的重要分支带来了前所未有的变革。 压铸模具,作…

day02 51单片机

51单片机学习 1闪烁LED 1.1 需求描述 这个案例,我们要让P00引脚对应的LED按照1秒闪烁1次。 1.2 硬件设计 1.1 软件设计 1)LED闪烁的代码 想让LED闪烁,就需要P00的值不断在0和1之间循环变化。实现这一功能的代码也很简单: #include <STC89C5xRC.H> //包含STC89…

[lesson10]C++中的新成员

C中的新成员 动态内存分配 C中的动态内存分配 C中通过new关键字进行动态内存申请C中的动态内存申请是基于类型进行的delete关键字用于内存释放 new关键字与malloc函数的区别 new关键字是C的一部分malloc是由C库提供的函数new以具体类型位单位进行内存分配malloc以字节位单位…

Linux - mac 装 mutipass 获取 ubuntu

mutipass &#xff1a;https://multipass.run/docs/mac-tutorial mutipass list mutipass launch --name myname mutipass shell myname 获取 root权限&#xff1a; sudo su

Lesson1--数据结构前言

1. 什么是数据结构&#xff1f; 2. 什么是算法&#xff1f; 3. 数据结构和算法的重要性 4. 如何学好数据结构和算法 5. 数据结构和算法书籍及资料推荐 1. 什么是数据结构&#xff1f; 数据结构(Data Structure) 是计算机存储、组织数据的方式&#xff0c;指相互之间存在一…

UWB 雷达动目标检测

1. 静态载波滤除 1. 首先对所有接收脉冲求平均得出参考接收脉冲 [Cir数据为二维数组64*n&#xff0c; 其中n为慢时间域采样的数据帧数] 2. 接着利用每一束接收脉冲减去参考接收脉冲就可以得到目标回波信号&#xff0c;参考接收脉冲的表达式为 2. RD 谱 对雷达回波做静态载波滤…

局域网配置共享文件夹,开机自动共享

设置文件夹共享 选择文件夹&#xff1a;首先&#xff0c;确定你想要共享的文件夹。共享文件夹&#xff1a;右键点击文件夹&#xff0c;选择“属性”&#xff0c;然后切换到“共享”标签页。点击“高级共享”&#xff0c;勾选“共享此文件夹”&#xff0c;并设置共享名称。 配置…

基于yolov9来训练人脸检测

YOLOv9是一个在目标检测领域内具有突破性进展的深度学习模型&#xff0c;尤其以其在实时性与准确性上的优秀表现而受到广泛关注。针对人脸检测这一特定任务&#xff0c;YOLOv9通过其架构创新和算法优化提供了强大的支持。 YOLOv9在继承了YOLO系列&#xff08;如YOLOv7、YOLOv8&…

大模型系列——解读RAG

上篇大概说了几个优化方向&#xff0c;包括提示词&#xff0c;RAG等。那么RAG到底是什么呢&#xff1f;RAG 是2023年最流行的基于 LLM 的应用系统架构。有许多产品几乎完全建立在 RAG 之上&#xff0c;覆盖了结合网络搜索引擎和 LLM 的问答服务&#xff0c;到成千上万个数据聊天…