现在学Oracle是49年入国军么?
今天周末,不聊技术,聊聊大家说的最多的一个话题
1.说说数据库产品和生态
oracle在整个数据库行业还是领先优势明显,看DB-Engines Ranking的排名Oracle仍旧是遥遥领先

当然国产的数据库也有多优秀的产品,比如我们查看墨天轮数据库排行,至少排在前10的数据库实际使用的人还是不少,相对来说头部的产品可靠度也较高。

但是毕竟Oracle起步早,积累的经验多,就我的使用观察,论产品成熟度,运行速度、系统稳定性来说都是一流(仅个人主观观点,有一定的局限性,至少我没亲眼见到哪个医院、金融系统、制造业的核心数据库用的国产)。
论数据库的生态环境,Oracle可以说是除了源码没开源,剩下的几乎都开源了,学习资料、分享经验、社区活跃度都是十分的高,可以说是想学Oracle除了官方资料,民间的资料、工具一大把,对应的认证培训机构也多如牛毛。只要肯用心,一定能学好。
在这一点上国产数据库可能稍微逊色,前些年想学国产的数据库那就得去原厂培训,搞的价格也十分昂贵,直逼Oracle的培训。现在国产的数据库厂商们也开始积极搞社区,线上免费培训、认证,让很多人也薅到羊毛,学习考个认证,但是有些细节原理还有待考究,有些工具需要官方提供,有些问题解决不了只能找数据库的研发人员来提单子,不像Oracle的问题,总能找到大牛直接解决,各种开源的工具脚本到处都是。
就产品成熟度、生产环境来说,国产数据库和Oracle还是有一定的差距,这个我觉得大家都认了吧?
当然我也遇到过不分应用场景、不懂架构的人无脑鼓吹国产分布式数据库,言论简直逆天,放给大家看看纯属一乐。



2.说说数据库市场占有情况
成立于1977年的Oracle最开始就是搞数据库起家的,从无到有己经累计了大量的经验、客户。医疗、制造、金融等等重要的核心系统里都有Oracle的身影出现。
反观国产数据库,在信创到来之前,一直还处于不温不火的状态,实际在重要领域应用的场景还是相对较少的。这也和投资环境、资本运作有一定的关系(毕竟当时搞国产数据库不怎么赚钱)。
在信创时代到来后,国产数据库瞬间爆发,仅墨天轮收录的国产数据库在这几年就达到290家!但是客户真正被替换的还是低负载、办公系统、周边业务、历史查询数据等不十分重要的系统来进行替换,真正把核心数据库全替换成纯国产的案例目前不是非常的多。即使有这样的项目,也都是厂家直接来做,客户真正敢选择的也就是头部的几家数据库,其它小众国产数据库几乎都停留在宣传阶段,实际案例少之又少。
就我个人观察,短期内重要的核心oltp生产业务系统数据库替换还是有难度,但是信创替代毕竟是大趋势,相信未来会淘汰一大堆来骗钱的产品,真正能留下的也是少数头部产品,他们才是有价值再进一步发展的产品。
3.说说大家比较关心的就业行情
从职业上来说,dba这份工作本身就是个小众职业,从业的人数在整个it圈相对来说都是少数,可以说是小公司请不起DBA,大公司真正的DBA也是屈指可数,这个行业对经验要求极高(如果你请来的人不靠谱,那你的数据就危险了),通常薪资也属于中上等。
以上海为例,就目前看一线城市的dba招聘情况,有工作经验的dba工资都在20k左右,虽说和大厂或者华为传说中动辄年薪百万的职位来说有一些差距,但是这个工资在纯技术的岗位中来说也算中上等了。


抛开上面的公开招聘不谈,也有很多经验丰富的DBA年薪百万,内推的DBA职位工资也十分可观,甚至还有赶上时代风口红利早就财富自由了(这是个例)。
从公开的招聘渠道上来说,大多数都是招mysql/oracle dba,还有一些在招PG的DBA。
就拿某些国产数据库公司dba招聘要求来说,基本都要求你会oracle,你要是有个ocp/ocm认证,他们多半是认可你的。

就我所知,某一线大厂的国产数据库产品己经上到生产使用,但是仍然把Oracle端做为备库同步(可能是以防不测切换吧,这个是我瞎猜的!)。
大多其它国产的头部产品们也做了这种适配同步,Oracle仍然还活在客户的IT系统中。
所以说无论如何,你要是搞DBA,Oracle一定是你不能跳过,总是要会的。
4、总结
1、毕竟国产替代还需要很长一段时间,这不是说换就能立马换的,目前Oracle的相关工作还是有的。
2、就算你是从事国产数据库工作的,学习Oracle之后再学国产数据库我觉得对你还是有很大帮助的,毕竟你搞国产数据库也得和Oracle打交道。
国产的数据库即使是一线头部产品,还是需要不停的打磨,真正的用起来,才能适应各种各样的环境,解决产品问题。就算是Oracle刚起步的时候也是不成熟的产品,也是一步一步发展起来的,也希望国产的数据库越来越好。
相关文章:
现在学Oracle是49年入国军么?
今天周末,不聊技术,聊聊大家说的最多的一个话题 先说明一下,防止挨喷😆 本人并不是职业dba,对数据库就是爱好,偶尔兼职,以下仅个人观点分析,如有不同观点请轻喷,哈哈&…...
【回溯】组合问题||
给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意:解集不能包含重复的组合。 示例 1: 输入: candidates [10,1,2,7,6,…...
【c语言】字符函数和字符串函数(下)
前言 书接上回 【c语言】字符函数和字符串函数(上) 上一篇讲解的strcpy、strcat、strcmp函数的字符串长度是不受限制的 而本篇strncpy、strncat、strcnmp函数的字符串长度是受限制的 欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,…...
基于Java的艺培管理解决方案
✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…...
Python算法题集_实现 Trie [前缀树]
Python算法题集_实现 Trie [前缀树] 题208:实现 Trie (前缀树)1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【定义数据类默认字典】2) 改进版一【初始化字典无额外类】3) 改进版二【字典保存结尾信息无额外类】 4. 最优算法5. 相关…...
pytorch简单新型模型测试参数
import torch from torch.nn import Conv2d,MaxPool2d,Sequential,Flatten,Linear import torchvision import torch.optim.optimizer from torch.utils.data import DataLoader,dataset from torch import nn import torch.optim.optimizer# 建模 model nn.Linear(2,1)#损失 …...
Unity中URP下实现水体(水面高光)
文章目录 前言一、实现高光反射原理1、原理:2、公式: 二、实现1、定义 _SpecularColor 作为高光反射的颜色2、定义 _SpecularIntensity 作为反射系数,控制高光反射的强度3、定义 _Smoothness 作为高光指数,用于模型高光范围4、模拟…...
26.HarmonyOS App(JAVA)列表对话框
列表对话框的单选模式: //单选模式 // listDialog.setSingleSelectItems(new String[]{"第1个选项","第2个选项"},1);//单选 // listDialog.setOnSingleSelectListener(new IDialog.ClickedListener() { // Override …...
五种主流数据库:常用字符函数
SQL 字符函数用于字符数据的处理,例如字符串的拼接、大小写转换、子串的查找和替换等。 本文比较五种主流数据库常用数值函数的实现和差异,包括 MySQL、Oracle、SQL Server、PostgreSQL 以及 SQLite。 字符函数函数功能MySQLOracleSQL ServerPostgreSQ…...
软考笔记--企业资源规划和实施
企业资源是指企业业务活动和战略运营的事物,包括人、财和物,也包括信息资源,同时也包括企业的内部和外部资源。企业资源可以归纳为物流,资金流和信息流。企业资源规划(ERP)是只建立在信息技术基础上&#x…...
React歌词滚动效果(跟随音乐播放时间滚动)
首先给audio绑定更新时间事件 const updateTime e > {console.log(e.target.currentTime)setCurrentTime(e.target.currentTime);};<audiosrc{currentSong.url}ref{audio}onCanPlay{ready}onEnded{end}onTimeUpdate{updateTime}></audio>当歌曲播放时间改变的时…...
java面试题之mybatis篇
什么是ORM? ORM(Object/Relational Mapping)即对象关系映射,是一种数据持久化技术。它在对象模型和关系型数据库直接建立起对应关系,并且提供一种机制,通过JavaBean对象去操作数据库表的数据。 MyBatis通过…...
Java的编程之旅19——使用idea对面相对象编程项目的创建
在介绍面向对象编程之前先说一下我们在idea中如何创建项目文件 使用快捷键CtrlshiftaltS新建一个模块,点击“”,再点New Module 点击Next 我这里给Module起名叫OOP,就是面向对象编程的英文缩写,再点击下面的Finish 点Apply或OK均可 右键src…...
docker build基本命令
背景 我们经常会构建属于我们应用自己的镜像,这种情况下编写dockerfile文件不可避免,本文就来看一下常用的dockerfile的指令 常用的dockerfile的指令 首先我们看一下docker build的执行过程 ENV指令: env指令用于设置shell的环境变量&am…...
nginx高级配置详解
目录 一、网页的状态页 1、状态页的基本配置 2、搭配验证模块使用 3、结合白名单使用 二、nginx 第三方模块 1、echo模块 1.1 编译安装echo模块 1.2 配置echo模块 三、nginx变量 1、内置变量 2、自定义变量 四、自定义图标 五、自定义访问日志 1、自定义日志格式…...
小程序--分包加载
分包加载是优化小程序加载速度的一种手段。 一、为什么进行分包 小程序限制单个包体积不超过2M; 分包可以优化小程序页面的加载速度。 二、启用/使用分包语法subPackages subPackages:下载app.json文件中 root:分包所在的目录 pages&#x…...
R语言【base】——writeLines()
Package base version 4.2.0 Description 向连接写入文本行。 Usage writeLines(text, con stdout(), sep "\n", useBytes FALSE) Arguments 参数【text】:一个字符向量。 参数【con】:一个 connection 对象 或 一个字符串。 参数【se…...
微信小程序-人脸检测
微信小程序的人脸检测功能,配合蓝牙,配合ESP32 可以实现一些有趣的玩具 本文先只说微信小程序的人脸检测功能 1、人脸检测使用了摄像头,就必须在用户隐私权限里面声明。 修改用户隐私声明后,还需要等待审核,大概一天 …...
微信小程序自制动态导航栏
写在前面 关于微信小程序导航栏的问题以及解决办法我已经在先前的文章中有提到,点击下面的链接即可跳转~ 🤏微信小程序自定义的导航栏🤏 在这篇文章中我们需要做一个这样的导航栏!先上效果图 👇👇…...
金融知识分享系列之:五日线
金融知识分享系列之:五日线 一、股票均线二、五日线三、五日线加量能三、五日线案例四、五日线案例五、五日线案例六、五日线案例七、五日线案例八、五日线案例 一、股票均线 股票均线是一种用于平滑股票价格的指标。它是根据一段时间内的股票价格计算得出的平均值…...
【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
什么是VR全景技术
VR全景技术,全称为虚拟现实全景技术,是通过计算机图像模拟生成三维空间中的虚拟世界,使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验,结合图文、3D、音视频等多媒体元素…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
