程序员过了35岁没人要?“这行越老越香”

程序员35岁失业?参加完OceanBase开发者大会,我又悟了!

周六参加了OceanBase2024 开发者大会的现场,来之前我其实挺忐忑的,我觉得一个数据库产品的发布会,能有什么新鲜的东西?

踏入酒店的那一刻,发现自己错了.....

现场会很多招聘机会、免费的自助餐、免费的活动奖品,以及近距离接触从业超过30年大佬的机会,体验到了寓教于乐的快感,也打破了程序员35岁危机的说法。

不枉我凌晨4点多就爬起来火速买了去上海的火车票, 倒也不是想白吃白拿找工作,主打一个热爱学习。

现场交流氛围很好,有招聘集市、互动打卡的游戏区域、也有互联网老兵的线下交流沙龙,对开发者和创业者都很友好。大会随手拍一张,居然发现了OceanBase的首席科学家阳老师(图最右)。

诶这个10岁的小鬼,你是怎么进来的,年纪太小不建议写代码哟,因为这样对我们打击太大了555

现场还有工作超30年,现场5位总共超过100年开发经验的资深前辈分享...

最重要的是在这次活动中,收获了许多技术的知识点,对我以后的工作有许多的帮助,下面说几个这次大会主要的收获和帮助。

大会见闻与收获

OceanBase 是由蚂蚁集团完全自主研发的国产原生分布式数据库,当前已助力超过1000家客户实现关键业务系统升级。

下面这张图大家可以看到OceanBase的发展历程,从10年开始,到现在的逐步的提升自己在行业的影响力。

另外本次开发者大会的主题主要是OceanBase 4.3产品的发布升级,在现场听了一些分享和OceanBase的工作人员进行交流后,针对当前的一些业务特点,个人的一些收获。

TP&AP 一体化,轻松实现PB级数据实时分析,驱动业务创新

TP(Transaction Processing,事务处理)模式 业务中需要需要实时给用户反馈的部分

AP(Analytical Processing,分析处理)模式 而对于可以容忍一定延迟、需要大量数据分析的部分

TP&AP在大部分公司都是单独设计的,TP 使用MySQL,再将实时数据单独建立一条链路将数据同步到HoloGress或者ClickHouse,进行实时数据分析 这部分就是AP。

用户通常使用 MySQL 等关系型数据库来处理 OLTP 工作负载,而使用 HoloGress 等专门的 OLAP 数据库来处理复杂的分析查询。

这种架构虽然在一定程度上解决了不同场景下的数据处理需求,但也带来了数据同步、系统切换等问题,影响了分析的实时性和一致性。

同时导致每次方案设计都要写MySQL的代码、Flink的代码(同步的代码)、数据分析的代码,还是挺复杂的。

OceanBase 4.3最新推出了列式存储引擎,进一步提升了AP场景下的性能,极大提升了OLAP实时分析的能力。也就是未来可支持OLTP、HTAP、OLAP不同场景的需求。

用户不再需要在 MySQL 和 HoloGress 等多个数据库之间进行数据交换和同步,而是可以在一个统一的 OceanBase 系统中完成所有的数据处理工作。

这不仅简化了架构复杂度,降低了运维成本,同时使得用户能够对实时生成的业务数据进行即时分析,大大提高了分析的时效性。

下图是一个传统链路和使用OceanBase链路的简单示意:

他能做到这样的原理是因为 OceanBase采用了独特的"行列混存"模型,同时支持行存和列存,在OLTP场景下发挥行存的优势,在OLAP场景下发挥列存的优势。

再加上智能的查询优化器、高效的编码压缩、并行计算等一系列优化手段,使得OceanBase在HTAP方面做的非常好。

关于分析能力的性能,CTO 杨传辉大会现场,在同等硬件条件下,OceanBase 4.3 同业内一流的列存大宽表数据库进行跑分 PK。

结果显示,在大宽表场景,OceanBase 的查询性能与其处于同一水平。

弹性扩容&无限扩展,解放分库分表

OceanBase 4.3.x仍然保持了极强的弹性扩容能力,可以在云上自动的弹性扩缩容。

我们可以在不影响业务的情况下,随时调整数据库的规模,从容应对高峰期的海量请求。

想想自己现在在设计数据库的时候,每次都要进行用户量的预估,进行分库分表的设计,当实际容量和预估容量不一致,某一天由于某个热点导致突然业务量爆炸增长的时候,都要苦哈哈的维护数据库的稳定性,重新在备份数据,分库分表,用了OceanBase之后,我们只需要关注领域模型本身,对一些未来到底多少容量就不需要再额外的进行分库分表的设计。

其实我个人觉得分库分表本身就一种权衡和折中的设计,不是一个好的设计方案,虽然现在很多业务都在用这种方案,业务发展的不确定性导致很难准确预估未来的数据量和访问量,一旦预估不准,就可能导致分库分表的方案难以应对实际情况。

分库分表把原本的大表拆分成了多个小表,一些跨表的查询、事务等操作变得非常困难,需要应用层自己实现,对开发人员的能力要求高,等等一系列问题吧。

这次参加大会,发现OceanBase把这种长期存在互联网设计中的痛点问题解掉了,OceanBase 采用了一种原生的分布式架构,数据可以自动分片并均匀分布在多个节点上。

这种分布式设计使得 OceanBase 能够横向扩展,通过增加节点来线性提升系统的存储容量和处理能力,而无需修改应用程序代码,也就避免了传统的分库分表。

如果以后再遇到分库分表的场景,真的可以考虑下使用OceanBase。

开发者友好,无缝兼容MySQL,丰富文档

OceanBase带来了这么多的好处,原本在想是不是又要学习一套新的数据库概念,理论等等。

但发现OceanBase还是比较关注用户体验,可以做到与MySQL完全兼容,支持所有MySQL语法和协议。

我在现场就用MySQL的语法现在进行了开发,完全无感知,连驱动都是MySQL的db驱动,甚至支持非关系数据库数据的写入,再用sql的方式查询数据。

Java、Python、Go主流的开发语言和框架也完全兼容,云上来说阿里云、华为云、腾讯云、AWS 、GCP没错也完全完全兼容。

它的官方网站资料、文档也很全,我觉得在开发者体验这一块确实是拉满了,他们还和AI做了结合,文档回答速度和准确度都非常高。

总结

其实关于这次大会我最深的感触,就是终于可以打破一些外界对程序员的年龄偏见了,因为在现场来来往往不少都是35+的研发人员,大家依旧保持着学习的热情和对行业的探索欲。

另外也确实收获到了关于数据库行业的诸多知识点,扩展了我的视野,对个人的工作也有了一定的启发,当然也了解到了像OceanBase这么优秀的产品。

一天下来,我真切地感受到,数据库领域一样正在发生翻天覆地的变化。云计算、分布式、一体化等新技术,正在颠覆我们对传统数据库的认知, 同时也有AI技术浪潮铺面而来~

作为程序员,要紧跟时代的步伐,我们和OceanBase一样,拥抱变革,学习创新。只有这样,才能在这个瞬息万变的数字时代立于不败之地!

年龄永远不会成为阻碍。我们的价值不应随着年岁增加而减少,保持年轻的心态,学习新事物,并将其应用到实践中,我们就能不断创造价值。

这一次我看到的远不止于技术层面的升级,是实实在在的业务价值和发展机遇,是关于开发者的无限可能。

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

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

相关文章

HORROR SYSTEM

HORROR SYSTEM是一个创新的工具包,允许开发者在Unity3D中创建独特的原创恐怖游戏。 HORROR SYSTEM是一款强大而灵活的工具,旨在基于Unity3D引擎创建沉浸式第三人称恐怖游戏。 这项资产易于使用且直观,可以让任何经验水平的开发人员将他们的想法付诸实践,创造出高质量、充满…

Git 保姆级教程(一):Git 基础

一、获取 Git 仓库 通常有两种获取 Git 项目仓库的方式: 1. 将尚未进行版本控制的本地目录转换为 Git 仓库; 2. 从其它服务器克隆 一个已存在的 Git 仓库。 两种方式都会在你的本地机器上得到一个工作就绪的 Git 仓库。 1.1 git init(本地…

Linux的学习之路:19、进程信号(1)

摘要 今天这张说一下信号的一部分知识 目录 摘要 一、信号 1、生活角度的信号 2、技术应用角度的信号 3、注意 4、用kill -l命令可以察看系统定义的信号列表 5、信号处理常见方式概览 二、产生信号 1、通过终端按键产生信号 2、调用系统函数向进程发信号 3、由软件…

JAVA toString方法详解

hi,我是程序员王也,一个资深Java开发工程师,平时十分热衷于技术副业变现和各种搞钱项目的程序员~,如果你也是,可以一起交流交流。 今天我们来聊聊Java中toString方法~ toString方法的定义 在Java中,toStri…

boa.conf配置详解

boa的配置文件路径:/etc/boa/boa.conf Port 80 # 监听的端口号,缺省值是80 若80被占用,可修改监听端口为其他未占用端口(如:88) Listen 192.68.0.5 # 绑定调用的IP地址,一般注释掉,…

人工智能热度攀升市场广阔 业内:人机协同将成发展主流

以下文章来源:央广网 今年以来,人工智能产业热度持续攀升。文生视频软件Sora、文生音乐软件Suno等人工智能应用不断涌现,带给人们冲击的同时,也在影响着千行百业。本报今起推出“聚焦人工智能发展”系列报道,围绕人工智…

【JAVA进阶篇教学】第六篇:Java线程中状态

博主打算从0-1讲解下java进阶篇教学,今天教学第六篇:Java线程中状态。 理解并掌握线程的休眠、停止和挂起等操作是多线程编程中的重要内容。下面我将详细说明这些操作,并提供相应的代码案例。 目录 一、线程休眠(Thread Slee…

Hadoop格式化namenode出错

​ 我们在对Hadoop进行格式化时 很有可能会出现以下错误 输入命令:hadoop namenode -format 报错信息:-bash:hadoop:command not found 我们总结的最主要原因有三个 Hadoop的环境变量是否配置 配置以后是否使其生效 vim /e…

java中线程池的简介及使用方法

目录 介绍 优点 运行原理 线程池的使用流程 基本使用步骤: 代码示例: 介绍 线程池是一种并发编程的技术,用于管理和复用多个线程以执行异步任务。它通常由两部分组成:任务队列和一组线程。任务队列用于存储待执行…

el-select下拉框远程搜索且多选时,编辑需要回显的一个简单案例

前端业务开发中不管使用vue2~3,还是react,angular各种前端技术栈,经常会遇到这种业务。一个下拉框Select中,不仅需要需要支持远程模糊搜索,还需要支持多选。并且在编辑时,还能正常把已经多选好的内容回显到…

视频改字祝福 豪车装X系统源码uniapp前端源码

uniapp视频改字祝福 豪车装X系统源码 全开源,只有uniapp前端,API接口需要寻找对应的。 创意无限!AI视频改字祝福,豪车装X系统源码开源,打造个性化祝福视频不再难! 想要为你的朋友或家人送上一份特别的祝福,让他们感受到你的真诚与关怀吗?现在, 通过开源的AI视频改字…

如何进行制造设备数据汇集,发挥数据的价值?

数字化转型正深刻推动制造企业实现远程监控、提高生产效率、降低生产成本、优化产品质量及明晰精细化方向。并且工业互联网的发展离不开工业数据的应用,而制造设备数据汇集正是应用的基础。但制造设备数据汇集存在以下难点及痛点: 1、安全把控难 关键的…

如何创建默认的docker0网桥

背景 重启docker服务之后,发现并没有创建默认的docker0网桥,所以导致端口无法映射,容器内IP为127.0.0.1。重启服务后,仍然没有docker0网桥的出现。 分析 docker0网桥是docker默认创建的虚拟网桥。但是有时候会发现,d…

56-FMC连接器电路设计

视频链接 FMC连接器电路设计01_哔哩哔哩_bilibili FMC连接器电路设计 1、FMC简介 1.1、FMC介绍 FMC(FPGA Mezzanine Card)是一个应用范围、适应环境范围和市场领域范围都很广的通用模块。FMC连接器连接了由FPGA提供的引脚和FMC子板的I/O接口。最新的…

机械校准件

机械校准件 校准 精度高 重复性好 涵盖多种同轴、波导校准件 校准件是矢量网络分析仪的测试附件,可大幅提高矢量网络分析仪的测试精度。 国产思仪机械校准件包含N型、3.5MM、2.92MM、2.4MNM、1.85MM全频段校准件以及特殊要求的校准件,可满足矢量…

python爬虫 - 爬取html中的script数据(zum.com新闻信息 )

文章目录 1. 分析页面内容数据格式2. 使用re.findall方法,编写爬虫代码3. 使用re.search 方法,编写爬虫代码 1. 分析页面内容数据格式 (1)打开 https://zum.com/ (2)按F12(或 在网页上右键 --…

【工具】录屏软件Captura安装使用及ffmpeg下载配置

开启技术视频创作,录屏软件林林总总,适合的、习惯的最好。 录屏软件Captura的使用及ffmpeg下载配置 1.Captura下载、安装2.FFmpeg下载、配置3.Captura屏幕录制试用、录制视频效果 1.Captura下载、安装 Captura主要是一个免费开源的录屏软件&#xff0c…

西电超算使用方法-简易版

一、引言 西电超算不错,我很喜欢。本文仅供自己学习使用。 二、环境搭建 搭建环境需要有一些依赖库,但是其实西电超算说明手册并没有写的非常清楚。因此,这次实战演示一下,写一个运行sh文件脚本并提交作业。 1、选择GPU还是CP…

kontron触摸屏维修控创工控机TN1015-OC-19DCA11-XXX

德国Kontron控创工控机维修维修包括:Kontron人机界面、Kontron显示终端、Kontron工业控制计算机、Kontron处理器板、Kontron低功耗处理器、Kontron强固处理器板、Kontron图形板卡、Kontron核处理器板、Kontron工控机电源、Kontron主机故障等 kontron工控机维修常见…

【C语言刷题系列】交换整数的奇数位和偶数位

目录 一、问题描述 二、解决思路 三、函数实现 四、宏实现 五、总结 个人主页: 倔强的石头的博客 系列专栏 :C语言指南 C语言刷题系列 一、问题描述 使用C语言代码实现:将一个整数的奇数位和偶数位交换 二、解决思路 在C语…