现在学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、人脸检测使用了摄像头,就必须在用户隐私权限里面声明。 修改用户隐私声明后,还需要等待审核,大概一天 …...

微信小程序自制动态导航栏
写在前面 关于微信小程序导航栏的问题以及解决办法我已经在先前的文章中有提到,点击下面的链接即可跳转~ 🤏微信小程序自定义的导航栏🤏 在这篇文章中我们需要做一个这样的导航栏!先上效果图 👇👇…...

金融知识分享系列之:五日线
金融知识分享系列之:五日线 一、股票均线二、五日线三、五日线加量能三、五日线案例四、五日线案例五、五日线案例六、五日线案例七、五日线案例八、五日线案例 一、股票均线 股票均线是一种用于平滑股票价格的指标。它是根据一段时间内的股票价格计算得出的平均值…...

【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...

恶补电源:1.电桥
一、元器件的选择 搜索并选择电桥,再multisim中选择FWB,就有各种型号的电桥: 电桥是用来干嘛的呢? 它是一个由四个二极管搭成的“桥梁”形状的电路,用来把交流电(AC)变成直流电(DC)。…...

【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...

一些实用的chrome扩展0x01
简介 浏览器扩展程序有助于自动化任务、查找隐藏的漏洞、隐藏自身痕迹。以下列出了一些必备扩展程序,无论是测试应用程序、搜寻漏洞还是收集情报,它们都能提升工作流程。 FoxyProxy 代理管理工具,此扩展简化了使用代理(如 Burp…...
前端调试HTTP状态码
1xx(信息类状态码) 这类状态码表示临时响应,需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分,客户端应继续发送剩余部分。 2xx(成功类状态码) 表示请求已成功被服务器接收、理解并处…...