我们进入下一阶段性能,性能其实大家非常关心的一个点,那么我认为以前 mysql 之所以在中国或者互联网崛起的时代占据一个先机,那么就是在那段时间 pg 并没有专门的去扣性能,而 micco 扣了,所以那时候我承认 micco 在过去的性能确实比 pg 要好, 但是从最近十年来看, p g 的性能已经不输,甚至超过 mexico。 那么我这里引用了 my s q r。 官网的三个,引用的三个报告就是 my s q 在四十八核机器下的一个 suspense 测试, 那么我自己也在 a w s 二使用 c o d matter, 使用这个 c sponge 去同样的规格去压测,那么黄条是 my s q, 蓝条是 p g c 口,可以说两者的性能基本相同啊。在点查上 pg 比 myscale 要好一些,那么在 update 上 myscale 比 pg 要稍好一些。两者在性能上的差距我认为已经在现在这个时代啊,当然特别要强调是 oltp 简单查询的性能表现已经是伯仲之间,各有所长。 而说起比较复杂的分析类查询的话,那么 my s k l 仍然被 post gracile 吊吊吊打,因为 post gracile 的优化器仍然是公认的更好一些。 举个例子,那么在 h tab 的一些场景中呢?如果我们用 t b c h 来看的话, p g 在这个领域还是 可以在比如说五十仓一百仓的 t p c h 下跑出一个相当不错的成绩。那么 my s k l 呢?在分析领域则可以说基本上是我们说原生的 my s k l 基本上是不能打,如果能打的话,也李浩老师也不会专门来为 my s k r 做一个分析引擎了, 所以回到我们的结论就是,我们认为 post grass kill 和 my s kill 在当下的性能在伯仲之间, p p 性能各有所长, a p 性能 y s k l 则被 post grass 要吊打,那么这是我们的一个结论。 李浩老师您有什么看法呢?从 a p 这个来说吧,这个首先要承认这个 p g 的查询优化,呃,它里面的实现的完成度, 对于这个这个优化相当于早期的这个买 sigo 来说,这个是比较优的,尤其是对于这些此查询啊,包括这种这种复杂查询的处理。但是在八点零后,嗯,呃,我从我的角度来看,就是买 sigo 的优化器已经 长足的进步,就是对于对你所说的这个这个这块的 a p 可能说,比如说当前这个版本来说,可能还是还是有一定的差距。这个 这个,呃,但是说在未来的后续的这个版本里,我,我认为这个差距,呃不足以说大到有特别大量级的这个差距。因为呃,从 t g 的这个叉云计划机的代码,包括这个买 cog 的代码,就是, 呃,最近反正我两边都在买,我都,我都在这看。然后我认为这个买 circle 这方面的这个这个进步已经 赶上了 pg 对开,就是你说的那个在 ip 里面的一些这方面的一些差距,已经已经追上了这个在未来后续的这个这个几个版本之内,我,我认为他不是 一个一个特别大的一个一个相对 pg 来说的一个一个优势了,这是我的一个从我的个人的角度来个人的这个这个感官来看,因为呃 就从 pg 这几年的对于这个查询优化来说,他做的一些优化,你比如说对于这种并行查询的优化啊,这些支持来说啊,包括后面一些 呃 p g 里面的一些那个,呃整体的那个常元化的代码,呃在应该在后前几个版本,比如说 十三、十五这几个好像也做过一定的这个,这个相当于类似于大概一个重构这样。那回到这个 myseco 这个来说, myseco 的八点零相对于五点七之前的那个优化器来说,可以说是天壤之别。就从我的这个角度来说,呃 呃 pg 这块的这个所谓的这个 a a p 这块相当于复杂查询的这块优势很快就会被被赶上了, 这块是不不是成为一个一个一个主要的东西?还有一个就是说像 p g 跟买 c 口所谓的这个两者之间竖起步的,在业务上的一个定位来说,呃早期的买 c 口定位可能就是更多的是 在这个 t p 领域。因此说呃从早期的一个出发点来说,对于这块的这个这块的这个工作,我认为呃是由于这个当时的一个一个业务场景来决定,并不能决定。比如说后续的这块 这个这个后续的这个这个所谓的这个啊 ap 方面的一些走势吧。这是这是我的一些一些看法,就是就是总结一句话来说说你说的那些所谓的这些复杂 发现这些优化,呃在后面来说并不是一个特别特别大的一个优势了。让我们期待 misco 在未来 ap 领域的表现,相信十元子数据库肯定是专门做这方面的,肯定会引起一个好奖。也也也不是说是那个吧?因为呃我们这块做的跟 跟那个还是不一样,因为我们这个是 a p 的专用的,是属于一个裂损的。相对来说你像呃 p g 包括买 co 里面它 这块基于行存的这个 a p 的这个这块的更多的是呃基于这个查询优化器的一些能力,你比如说一些复杂查询的一些呃一些的处理等等这一块的一些能力,包括一些一些就是说呃索引啊,包括之类的一些这个统计信息,类似于这样一个基于此类这样一个一个 能力来来做的这个航存跟列存在 a p 这块其实还并不是一个,就是从技术路线来说,还不是一,还不是一个技术路线。李老师,就是比如说您对 p g 有什么样的 challenge 嘛?就是您觉得 p g 在您看来有什么, 或者说在正确性也好,性能也好,在各个方面有什么您觉得值得一提的显著问题吗? 呃,其实这个问题的话,其实就是呃我觉得更多的是主要是在于他,呃底层存储以及这些实现的一些方式。 呃这一块来说,你比说 p g 它是一个黑布表的一个方式,你比说它对于这个,呃这个这个所谓的这个老版本的一些管理的问题带来的一系列的这样一个一个东西,比如说主页缩影二, 所以那些更新的一些效率的问题等等等等这些问题。那么这些问题带来的在实际生产过程中,呃,尤其是在生产库上,我觉得呃还是一个比较大的一个,一个 一个一个考虑吧。就说可能假如说我作为一个一个用户或者一个企业来说,假如说在于,比如说负载特别重的一个环境下,比如说呃会涉及到经常一些更新的一种 呃,尤其是对于这种像,比如说像电商这种场景的话,呃,我可能对于 pg 的使用来说,我可能是 抱有一定的一定的谨慎的一个态度来,尤其是那种呃经常会会发生一种更新操作,那么刚才也说了,就是带来的一个问题,就是说他的一个呃空间的一个暴涨的问题,是吧?还有更新效率的一个问题,那么当然说你这个 呃 pg 对于这种,比如说呃呃某些场景下他有一些这个这个 hot 这种机制,来来来来这个优化这个,但是这种这种场景下使用的这种 呃场景还是还是比较苛刻的,大概我是这样的一个观点吧。当然说还有早期的一个就是说所谓我,我知道你不用放这个这个表, 这个是一个比较是共识的这样一个东西。还有一个就是说早期的或者说是最近 pg 才支持的一个所谓的一个复制的一个能力吧。那么这个带来的一个问题,就是说 你这部分的功能或者能力的这个提供,或者说是 ready 的这个状态来说,会导致我当时我现在这个解决方案,或者说我这个项目的一些周边系统,或者说周边那些工具的一些支持等等这些,这都是假如说 我作为一个企业选择的话,那么这是我所需要考虑的一个点吧。其实像李老师说的正是 myscale 或者其他数据库用户对于 postcarcle 最为诟病的一个点,因此在这里我也借这个机会呢,其实想解释阐述一下, 应该来说 pg 没什么黑点,在以前可能最大的黑点是不流行,招不到人,现在这个问题解决了,那么唯一剩下的我认为是算半个缺陷的点就是这个 mvcc 表膨胀语是我 id 回卷, 但是考虑到其实 p g 的 m v c c 实现带来了一系列的好处,比如说 d m l 不阻塞查询,毒和血互相补锁,然后无需昂度,那么对于大事物的支持也相对买这个来说更好一些。比如说你 不会担心撑爆回滚回滚断的问题,你不用担心回滚,一个大事务非常长的问题,你不用担心提交一个长事务,提交一个大事务产生巨大的主从延迟的问题,那么相比于这些收益来说,磁盘空间和内存空间的一个浪费对于现代情况下 已经并不是一个非常重要的考虑了。呃,这些都属于啊,他其实并不是简单的一个空间的问题,他带来的一个问题还有一个就是 sid, 对,还有一个是 x i d 的问题。那么就目前来说呢, p g 社区对于这个问题的解决方案是自动垃圾回收, 我们在一些生产环境中做过一些测试,十三十四版本使用默认的 auto y com 参数级一个固定的规则,那么基本上在跑了一两年也没有需要人工介入的这么一个场景。所以, 所以我认为其实炒作的一个表膨胀问题,或者说 x i d 事物回卷问题,在现代硬件条件下已经是已经是一个运为可解的问题。 呃,我不同意这个观点啊,我我我认为当前的这个就是当前的这种技术条件下, io 还是一个比较宝贵的一个系统资源,而且是一个容易造成一个系统的一个瓶颈所在。 但我不知道像李老师您针对的环境啊,就是是使用什么样的磁盘硬件,是 h d d 还是 s s d 还是 n v m e 的 s s d? 因为我感觉现在这个时间点,那么根据就各种报价来看, s s d 的单位价格马上就要 跌破超过比 h s d 更 h d 力更低了。那么在这种情况,如果大家都有 s s d 的情况下, 我认为这种 vacuum 的速度已经不是一个生产中实践的问题了。 auto vacuum 已经可以很好地利用好现在硬件下的 i o p s。 举个例子, s s d h e d 的 i o p s 这才多少 s s d 的 i o p s。 现在一千几百万的 l p s 都有了, 对于这样性能的硬件来说, nikem 还会是一个问题吗?我认为不是,现在无论是消费级硬件还是些主流数据中心,都已经普及了这样的硬件,那么在这样的硬件基础下,我认为数据库在操心这些问题其实是 其实有点多余了,因为现在我们观察到的真正瓶颈往往是在 cpu 本上 ok, 那么关于可维护性,其实我们就想说这么多, ok, 现在我可以发言了吗? 他说的那个刚才你提到那个就是 cpu 作为一个当前是一个是一个,应该说就是一个比较比较宝贵的一个一个资源吧,是吧?当然说,但是现在这个问题来说,就当前的情况下,呃,从我的角度来说, 呃,还没有一个数据库可以把这个 cpu 去,就是在在在普通的场景下就是能充分的利用账 这个东西来说,就是无论是你比说你像,你像像像 pg, 你比如说你开启了并行还是等等,这种场景下他其实并没有把 cpu 的这个资源 去,就相当于是可以去完整的利用到。从我的这个这个认知来看,其实当前来说,呃, cpu 这块其实还并不是一个, 当然说是一个优化的一个点,比如说利用这个多核能力来提升这个这个计算这块是现在大家都在做的这个这个主要这个点,但是说这块的提升 我觉得还是相对来说收益,或者说是这个需要做的工作。从底层的这个,比如说存储机制来说,能得到这个这个收益还需要去去花更多的时间或者是精力去做这个事情吧?所以没错,我特意强调的是在现现代硬件条件下, 呃,那这样的话就就回到这个,如果现在的硬件条件下,相同的这种这种存储引擎来说,呃,买 sco 的 iot 这种这种所谓的这种这种结构来说应该是更占有一定的优势的。 为什么呢?因为,呃,李浩老师您是精通 pg 和 maysco 内核架构的专家,那么从理论上来说, mayscale 英东 d b 引擎我写了一条记录,我应该要写 redo, 写 on do, 然后写 bellock, 然后呢?我还要在索引组织表里面去把它放到合适的位置。而 postgrad scale 呢?它只需要写一个 vlog, 然后还要放在堆表里面,按照道理来说,那么应该是 postgrad scale 性能更好才对。 但是就是就是,如果是你没有,所以的话,你不需要维护,所以开销的话肯定是堆表这种判的这种方式,是吧?这种你比如说这就是插入一条新的记录,这种方式是来的更快一点。这个是,我是同意的这个观点, 但是就是说假如说你这上面有一些,呃,所以你需要维护的话,他可能去维护的开销来说就相对来说比较比较多一点。这也就是为什么这个,这个,这个安定那边,是吧?写了一篇文章来诟病这个,这个,为什么说这个, 呃,这个这个这个 the word 是吧?这个 mvcc, 哈哈哈,是吧?就是对他说 the word part of postcars。 对,是的,我同意您的观点。这也是为什么在性能比较这里,我特别强调 my skl 在很多缩影的 update 下,相对 postcarcell 还是有一些优势的。 那么其实关于可扩展性也就是这些,就前面讲到性能吗?对吧?讲到 tp 和 ap 吗? 我先说一下 a p a p 的优化器,呃, p g 比买 c 扣强,我承认, 我承认。 but, 谁会用 p g 去做大数据的存储和分析呢?我们不是应该用 clear house 或者是 have 嘛?我要至少在苹果我们是这么做的,至少在我, 我们大厂,在中国的互联网大厂里面,我们用的是大数据的这个平台,对吧?你比买机构强,我承认,但是用的更广的是大数据的这些平台, ok, 这是我的一个观点。第二点是关于 t p 的这样的一个性能。 t p 的性能,你前面说这个数据是引用官方的, 其实我不太清楚这数据在哪里,但是正好今天买秀官方的同学也在线上嘛,也在线上,其实我觉得你们可以去看一下这个数据 这情况是不是对的,如果是对的,那我们就应该好好的去优化他,如果有人在这里是做了这些手脚,那我们就应该拿起我们的这个法律的武器去捍卫自己这个权利,对吧?这个我觉得是我,我想表达一个观点,但是另外一个观点我想 想说的是,如果谈到性能的话,我们不是应该看 t p c c 的这样的一个性能的榜单吗?在这样的一个更符合真实场景的这样的一个呃,榜单之下, 我只知道现在排第一的是基于买 c 口的这个体系的 t d c 口,而并不是 p g。 如果你说 pg 的这个数据库性能很强,那么我觉得至少在前前三里面应该是可以看到 pg 的身影,那么为什么我们看不到呢? pg 的性能真的像你说的这么好吗? 我们真正要用的并不是 suspension, 而是类似 t p c c 这样的一个事物的场景。 好,姜老师表达了 t p c c 是性能的一个衡量标准,我相信这一定是因为腾讯的这个 t d c 扣啊,在 tbcc 上打了个榜一,刚把阿里的这个欧神被子给打下来。但不管是哪一个,我都要说 tbcc 已经是一个三十年前的半尺标准,已经是相当过时的一个标准,而且还可以通过堆积器的方式来累积。我承认,我承认你说的都对,那么为什么 pg 不堆积器啊? 为什么没有厂商去参加这样的跑分?你是因为这我觉得这是一种人傻钱多,给美国评测标标准机构送钱的 sb 行为。所以你觉得腾讯和 ob 和蚂蚁是 ob 的行啊,是 sb 的行为是吧? 我觉得为了你的直播间,你在直播间这样说都是有录屏的好吧。嗯,然后一,你是否定了 d b engines 这样的这个这么多年的这个排行。二,你又否定了 t p c c 这样的一个权威的这个测试,那我觉得这个就是你的这个结论吗?其他我是没有问题了,在我觉得你这个帽子安的有点不对,马西口是是是,是不如 pg 的,但是 应用就是另外一回事情了,对吧?这就是我的观点。好的,那关于这点我没有意义,您可以这么说啊,您可以认为我认为 d b c c 是一个过时的标准。
粉丝4362获赞4.0万

汤老师,有粉丝面试被问到 pgc 狗这个数据库和 masca 数据库的对比和区别,你能给总结一下吗?好的,在此之前啊,我对 pgc 狗呢了解的其实也并不多,那么见有粉丝问到这个问题呢,我还特意去查阅了一些资料,就这个机会呢,我给大家介绍一下。先说一说 pgc 狗的一个特点吧。 第一个呢,就是 bc 股呢,它自称是最先进的光线数据库,我认为呢,它并不是这种单纯的光线数据库。 为了帮助大家在这个求职旺季顺利上岸,我特意整理了一份佳瓦程序员求职突击手册,包含五十万字的高频面试题点列模板和学习路线图,大家可以去评论区的字典中领取。 那其实它支持很多非关系型数据库的一些特征,比如说 noseco, 它的一些数据类型,再比如说 q v 队啊,以及接神啊等等。第二个呢,它是一个叫做偏 全站的一个关键数字库。那么什么叫偏全站呢?就是他的使用场景呢,非常的丰富,而且呢支持非常便捷的一个扩展性,比如说数据类型呢,非常丰富,他也支持收处理。再比如说他提供了非常丰富的一个数据分析工具, 虽然它的定位是对向关系型数据库,但是呢,它对于 c 口的兼容性也比 mac 口要完善很多。 比如说包括紫砂石的支持啊,窗口函数的支持啊,以及 gu 地理位置的存储啊,还有数据仓存的能力啊,这些他都是有支持方案的。第三个呢,也是很多人经常提到的一个高管用方案,比如说 pgc 口啊,他能够支持集群,支持副本人, 也支持内置的这个组成同步,那么他内置的是一种二进制同步的复制方式,在 大部分情况下呢,他比卖 c 果的并 logo 的独步方式可靠性还要更高一些。第四个呢,就是 ptc 果呢,遵循了 bsd 的一个开源协议,那么这是一个非常非常自由的协议,离合度也非常大,也就是说你可以基于 pcc 果呢去做一些二次开发,然后呢,可以变成你自己的一个商业版本。 像现在市面上很多号称是云原生的关键数据库呢,基本上都是基于 bgc 口去进行二次开发的,而且呢, bgc 口的一个开源社区也非常的活跃。最后第五个呢, bgc 口的扩展性也非常强,因为它是基于陆陆驱动进行扩展的,他可以非常灵活的在里面去添 添加一些新的数据类型,类似函数等等。那么这种方式呢,它的弹性就非常高,就不需要在中间去做一些变异的插座。所以呢,我们可以利用 pcco 这一个特性呢, 可以非常方便的去自定义的一些数据类型,推荐 co 这么多特点,那他跟 myco 对比具体有哪些区别呢?好的,在这里呢,我就这个机会就给大家总结几个点吧。那第一点呢, mysco 他是基于开源的 gpl 协议,所以呢,他的社区也比较活跃,但是是因为有甲骨文字 大公司在后面做支持,所以呢,他的商业化呀,其实做的并不是很好。第二点呢,就是 mac 口呢,也是有很多纯属引擎的,那么除了 interdb 啊,比如说 ndb 啊,那么他其他的引擎呢,是不支持思路的, pcc 果呢,他说是只有一个事物引擎,这就省去了我们去选择的烦恼,同时呢, pcc 果呢,还帮我们考虑了一些均衡性的问题。第三点呢, pcc 果对于 c 果的兼容性会更好一些,比如说紫砂巡呐,复杂的一些连表 查询呢等等。那么 pcco 的表现比 macco 要更好一些。第四点呢,就是 pcco 他对于客户的支持语言啊,也比 mcco 会更丰富一点,以及一些内置的数据类型比 mcco 呢也更加丰富,比如说像节省啊, chamel 啊, pcco 呢,都是能够支持的。 第五点呢, mac 口跟 pgc 口的性能方面对比,那么 pgc 口的整体的性能表现比 mcc 口会更好一点,因为 pgc 口呢,在一些并发毒血和 ddl 执行的时候呢,他省去了很多繁琐的一些操作,但是呢, 在一些特定场景下,比如说小数据量的这种高并发的东西,买 c 口可能还是更有优势一些。所以呢,对一些中小企业来说,如果分不分表,会带来更大的维护成本,而且呢,单本数据呢,又比较大,并且呢有大量的这种复杂的。这个紫砂群, 建议大家呢,可以选择 pcc 口号更好一些,当然这其实也符合比较大众的企业的一个真实情况。 那么对于病房量比较高的场景呢, macco 整体来说,他想要的内存呢,会更小一点,因为 ptcco 呢,他设计的是进程管理,也就是说一个客户端对应的是一个进程,而 macco 呢,他是一种现存管理,也就是说一个请求啊,只对应一个现存, 那么这种进程管理的设计对于这种的消耗呢,当然会更大一点。所以呢, djc 口啊,对于这种小数据量的高配发动机时, 他需要通过一些其他的手段来保证。以上呢,就是我关于飞机 circle 和 mac circle 的一些对比和总结,感谢大家的关注和点赞,各位同款们,如果你们还有需要补充的话,可以在评论区留言。

随着 postgers sql 的发展势头愈发强劲,在 postgers sql 和 my sql 之间做选择变得更难。如果看安装数量, my sql 可能仍是全球最大的开源数据库, postgers sql 则自序为全球最先进的开源关系型数据库。 可能是由于历史原因, my s q l 在开发者中更流行一些。事实上, post pro s q l 直到八点零才官方支持了 windows 系统。 my s q l 一直也用于读取密集型工作附加的极快数据库而闻名。 过去, posters s q l 的性能更加平衡,读取通常比 my s q l 慢,但它能够更有效地写入大量数据,并且更好地处理并发现 my s q l 和 poster s q l 之间的性能差异在最近的版本中已基本消除。

今天我分享这个问题,绝对是面试过程中面试频率最高的一种面试类型。我相信这一类问题啊,至少难倒了百分之八十以上程序员,让他们失去了一个比较好的 offer。 嗨,大家好,我是麦克, 有十四年的 java 开发架构经验,现在是鼓炮科技的联合创始人。一个工作三年的粉丝问了我一个面试题, pgcc 数据库对于 micco 之间的一些对比,今天就给大家分享一下这个面试题的考察意图和背后的工作原理。 最后呢,我会给出一个完整的回答,如果你需要这个问题的文字版本,我把它整理到了一个三十五万字的大成面试指南中。如果你需要的话,可以在我的评论区的置顶中去免费领取。 在我们的日常开发中,数据存储和管理是一个非常重要的环节。 myseco 和 pgcco 都是目前广受欢迎的开源关系数据库,他们在许多方面呢,有相似的特点,比如说 acid, 事物都有稳定的性能和高可用性,然而在一些细节和特性上,他们又存在一些差异。那么这些差异可能会影响到我们根据特定项目的需求去选择合适数据库。而在选择数据库的时候,我们必须要权衡许多因素,比如说性能、可靠性、特性支持等等。 所以面试官提出这个问题,一方面,他希望了解你对两种不同数据库系统的理解程度,是否清楚他们的特性和适用场景。另外一方面,他也可能希望看到你对技术具有深度思考的能力,也就是如何根据项目需求去做技术决策,而不是盲目的跟随某种技术。下面我们来看一下这个问题的回答。 首先,我认为 myseco 和 petco 都是非常优秀的数据库系统,我会根据具体项目需求来选择使用哪一个,下面我就针对这两种数据库区别进行一个简单说明。第一, 特性层面, p g c 口提供了一些高级特性,比如雾化视图、公共表、表达式和窗口函数等等,而 mic 口在一些外表开放中表现更加优秀。第二特性, 总体来说啊, myc 口的性能更加突出,特别是在独密集音的场景中,而 p g c 口在处理复杂查询和写密集音操作时候更有优势。第三,一致性和数据完整性。 p g c 口更严格遵循 c 口标准,提供了全面的 a c i d 支持。而 mic 口呢,虽然也支持 a c i d, 但它的知识程度会受到所使用存储引擎的影响。 四、扩展性。 p t c 口支持多种制定扩展,比如说自定数据类型、操作服等等,而 my c 口呢,则是在分区等方面表现更好。对于 p t c 口和 my c 口的选择,有几个方面的考虑因素,第一,从应用范围来说, p t c 口更适合具有频繁 写入操作和复杂查询的企业经用程序。但是如果想要创建用户较少的内部用程序,或者创建具有更多读取次数和较少数据更新的信息存储引擎,那么就可以使用 myseco。 从学习的难易程度来说, myseco 更适合初学者,他的学习曲线更短, 从头开始构建新的数据库项目所需要的时间更少。 pgc 口对于新手来说可能更具有挑战性,因为他通常需要更加复杂的基础设置和问题排查经验。 第三,从性能方面来说,如果应用程序需要频繁更新数据,则 pc 口是一个更好的选择。但是如果需要频繁的读取数据,则首选 myst 口。 在数据写入层面, myc 口使用写锁来实现真正的并发性。而 p c c 口呢?内置了多版本并发控制,支持没有读写锁定。如果要进行频繁并发的写入操作, p g c 口数据库的表 表现会更加优异。在数据库读取层面, p g c 口会创建一个新的系统进程,为每个连接到数据库的用户分配大量内存。而 mac 是为多个用户创建一个单一进程。因此,对于主要向用户读取和显示数据的应用程序, my c 口数据库要比 p g c 口要更好一点。 以上就是我对这个问题的理解,希望我的回答对你有所启发。如果你有更多关于加油的问题,记得留言告诉我,我是麦克,我们下次再见!

数据量大,用 pg 好还是买搜狗好?直播的时候有个兄弟在问这个问题,这个问题得看情况,第一种情况,对于简单的查询,并且有所引,那么这两个数据库的性能其实差不多,如果没有说引走全标扫描,那么 pg 的性能是碾压买搜狗的。 第二种情况,对于复杂的查询, pg 的性能是比买思考好很多的。买思考对于复杂的查询知识的不太好,特别是买思考五点七只有千岛循环八点零这个版本会好些,增加了哈欠连接,所以只针对这个问题,我觉得还是选用 pg 好一些。

麦瑟沟的统治地位不保了,被 postgosql 干翻在地上了。这几天,斯泰欧国弗洛欧发布了二零二三年年度开发者调查报告,全球呢,超过九万多名开发者参与了调查,调查内容包含了像编码、技术、工作以及 ai 等等各个方向。在最受欢迎的数据库这个单项当中, postgoresql 首次超越麦搜狗,成为了全球开发者最爱用的数据库, 占比高达百分之四十五点五五,而我们熟知的 release 连前五都没进去。 post grace q l 和 matheco 一样,都是关形数据库,基本上我们在常用的 innodb 引擎当中支持的,像事务 m a, c c, 锁引、约束等等这些它都是支持的。并且呢,它对于 soco 标准的支持其实是更加完备的,它支持了很多 matheco 不支持的特性, 你比如说他支持更多的类型,像书组啊,杰森等等,而且他还能在这些类型上面去创建,所以并且他的查询功能也很强大,他支持像窗口函数,低规查询这样的高级特性,而且还支持 u d f。 而他在性能上的优势呢,也是很多人抛弃麦瑟沟的一个主要原因,而且他带 在高性能的同时,也并没有牺牲他的高可用性,同样是多表的转或者多维度的聚合 pose q l 要比麦森狗快很多,当然他也不是一点缺点都没有,你比如说他的那种 mvcc 的机制,需要定时的触发 vacuum, 会带来一些额外的 io 和锁的开销, 以及他没有单独的慢色购日志等等。但是不管怎么说,他现在已经越来越流行了,日后大家在做数据库选型的时候,真的可以多考虑一下他。

poce gracehop 和 misco 都是常见的关系型数据库管理系统,他们都有着各自的优劣势。首先,我们来看看 pocecresco 的优势。投 cecresco 是一款功能非常强大的数据库管理系统,它支持多种数据类型,包括数组这三等非常灵活的数据类型。 此外, poce grace 后还支持高级的 sql 语言特性,如窗口、函数、 con 等,这些特性在数据分析和处理方面非常有用。另外, coc grace 后还支持事物的 s 的属性,这使得它非常适合处理高并发的事务型应用。接下来我们来看看 miss 的优势。 米错是一款非常流行的数据库管理系统,它有着非常好的性能和可靠性。米错在处理大量数据时非常高效,而且它的存储引擎非常灵活,可以根据不同的应用场景选择不同的存储引擎。此外,米错还有着非常好的兼容性, 可以与多种编程语言和操作系统进行集成。此外,密斯扣还有着非常丰富的社区资源和文档,这使得初学者可以很快的上手使用密斯扣。当然,破碎个人死扣和密斯扣也都有着各自的劣势。 比如 poce gresso。 相对于 misso 来说,在处理大量数据时可能会出现性能瓶颈,而 miss 在处理复杂查询时可能会出现性能问题。

在选择关系数据库时,您可能会发现自己正在比较两个选项, postcar sql 和 masquel。 这不是一个容易的决定,因为他们之间有很多相似之处。但请给我几分钟时间,我想我可以引导您走向正确的方向。哦哦,我还有一个关于 postcarsql 和 mysql 的笑话要分享,是人工智能写的, 你不会想错过他的。因此,在探讨他们有何不同之前,我们先简单问一下, postcar sql 也称为 postcars, 和 mysql 有何相似之处。因为他们确实有许多相似之处, 例如,两者都是关系数据库管理系统关系数据库管理系统 r d b m s。 这意味着他们将数据组织成表, 两者都依赖于 c 口或结构化查询语言,它是与管理系统交互的标准语言。 使用 sequel, 分析师不需要知道给定表,例如订单表的位置。我们不需要知道他驻留在磁盘上的位置或者如何执行查找已在该表中查找特定订单,或者如何将该订单表连接到另一个表,例如客户表,因为数据库会变异,查询并找出所有正确的数据点, 并且两者都支持 g s o n。 这就是用于存储和传输数据的 javascript 对象表示法 and post praise sql 和 masq l 提供了根本不同的价值主张。 因此, post grace 是当今最合规、最稳定、最成熟的关系数据库之一,它非常适合复杂的查询。 post grace 是对向关系型的,它对负责管 理、在线受处理的企业数据库管理员很有吸引力,那就是 o o t p o o t p 牢牢地属于 sequel 进度列,它为电子商务、客户关系管理和财务分类账等业务活动提供了这些协议。 它还非常适合管理、接收、创建和生成的数据的分析。现在这是为什么呢?首先, post grace 的一些优点与性能和可扩展性有关。 因此, post grace 具有许多性能和可扩展性功能,包括跨多种数据类型的广泛数据分析, 还有 n, b, c, c 极多版本并发控制。它可以同时发生写入操作和读取操作。 还有业务连续性支持 post press, 并通过跨服务器的翼步或同步复制方法提供高可用性的服务。 如果您需要处理具有多种数据类型知识的复杂查询,并且您正在寻找具有出色并发控制能力的数据库,那么 post grace 应该是您的首选。另一方面, mysql 是一个已经存在很长时间的开源关系数据库管理系统。 它已经非常成熟了,它以易于使用且速度非常快而文明,这是其成为 web 应用程序的热门选择。 masql 通常用于较小规模的 wave 应用程序,这些应用程序不需要与企业应用程序相同级别的性能和复杂性, 尽管有时也会使用它。 mysql 的其他一些好处就是易于使用。这是一个非常易于使用的数据库系统, 而且它也经过了非常非常快的优化,可以快速启动,运行和启动。这确实涉及到我的下一点,那就是速度。因此,对高速部分锁引的支持全文锁引以及独特的内存缓存可以带来卓越的数据库性能,而且还有支持 通过 mysql 实现可扩展性,支持无限的存储增长和较小的占用空间。如果您正在为中小型外应用程序寻找快速、易于使用的数据库,那么 mysql 是一个不错的选择 哦。是的,我不想忘记由生成是预训练变压器创建的人工智能生成的。笑话。基本上是这样的,有 一位 mysql 数据库管理员,他们正在他的办公室里展示一位 post grace 数据管理员。于是 mysql 管理员带他参观了服务器机房,里面堆满了服务器。 postcars sequel 管理员对此印象深刻。然后 mysql 管理员带他参观了存储备份的房间, 货架和存储架。 post grace 管理员说非常令人印象深刻。最后, mysql 管理员带他去了开发人员工作的房间。 post grace 管理员惊讶的发现,只有一名开发人员在那里工作。为什么你们只有一名开发人员?他问,因为 mysql 管理员回答说,有了 mysql, 我们就不再需要任何东西了。 也许只有我这么认为,但我确实看到了其中的幽默之处。因为 msql 功能强大,而且易于使用,他不需要大量的开发资源。 因此,从广义上讲,如果您需要一个可以处理复杂查询和多种数据类型的企业应用程序数据库,您可能需要使用 post grace。 如果您需要一个快速、易于使用的数据库来用于中小型外应用程序,您可能会选择 masquel。

postgo cycle 很强大,为何 my cycle 成为主流? postgo cycle 区居二线呢? postgo cycle 是一个对象关系数据库,具有表继承和函数仲载等功能, 可以处理复杂的查询和大型数据库。 mystical 是一个纯粹的关系数据库,相对易于建立和管理,快速可靠且易于理解。 开发人员为什么选择 miceco? miceco 是开源数据库,用户可以免费使用,并且容易安装和配置。它具有良好的可扩展性和性能,适用于小型和中型应用程序, 也可以与大型企业系统集成。 m y s t o l。 比, post 个 cycle 更加广泛地应用于 y b。 应用程序,具有更好的毒性能和更高的可伸缩性。 my cycle 拥有一个非常庞大的社区, m y s t u l。 有非常丰富的开源工具和第三方应用程序,可以方便用户进行管理和维护。 my sequel 的学习曲线相对较低,因为它的语法非常简单,易于学习和使用。 开发人员为什么选择 post 个 cycle 更好的许可? post 个 cycle 采用类似 m i d 的许可协议,允许开发人员做任何事情,包括在开源或闭源产品中商用 更好的数据一致性。 postcar cycle 会在数据插入和更新之前进行严格的验证,确保数据合法才会进行相应的操作, 更好的扩展性。 postco circle 支持自定义数据类型,支持多种语言编写自定义函数,包括 c c 加加 job network, p y t h o m r u b y t c l o d, b c 等。 post a cycle 比 my circle 强大?在那些方面? post a sequel 比 myself 更严格的遵守 sequel 标准 post a sequel 比 massacre 更好的处理并发性 post a sequel 比 myself 具有更好的数据一致性。 post a sequel 为什么在国内没有 myself 流行? 对比最新版本的 miceco 和 postgocco, postgocco 的性能实际上要更强大一些。但之所以没有 miceco 流行,主要原于以下三方面,第一, miceco 使用起来更简单, 在 windows 平台上安装比较容易。早期的 postgo cycle 没有提供 windows 平台的版本,需要自己编译。第二,学习 myself 更加容易,开箱急用 已入镜用户连接非常简单,但是配置 postcoco 创建用户等等操作比 mecco 要复杂。第 第三, master 始终有公司背书,创建了社区和配套产品的生态系统,无论是在线文档还是论坛都比 post circle 丰富。不论选择哪种数据库, 给大家推荐一款免费高效的数据库开发与管理工具, cycle studio。 cycle studio 是一款可创建多个链接的外版 cycle 开发工具,让你从单一应用程序 可同时连接 postco circle, my circle circle light circle server oracle 达梦人大金仓等。数据库安装配置简单,对新手很友好。

my sql 和 post crisco 是两个最流行的开源关系型数据库管理系统,他们都是为了满足企业及应用程序的高级数据存储需求而设计的。然而,尽管这两个开源数据库系统都是很优秀的产品,但是 post crisco 却一直默默无闻, 没有像卖 sql 那样成为业界的主流数据库。那么,为什么 post graceco 不如 mysql 流行了?这其中有哪些差距呢?让我们来从以下几个方面探讨一下。一、 post graceco 更加强调对 sql 标准的支持, 特别是对于复杂的查询和数据类型,他提供了更加严格和完整的支持。与之相比,卖 sql 更加强调性能,因此在某些情况下,卖 sql 比 squasco 更快速。因此,如果你需要一个高性能的数据库, mysql 可能看起来更加适合你的需求。二、 posqusco 的社区规模比 mysql 小很多,因此 mysql 更容易入门和上手,而且更加受到商界的广泛支持。 许多商业应用程序和企业更喜欢 myspvo, 因为他有更多用户、更广泛的技术社区和更多的商业支持。 相比之下, pose crisco 虽然在某些方面更加完善,但是很多人会认为它的使用门槛较高。三、 mysql 对于 wifi 开发特别友好。 它可以轻松的与 p、 h、 p 等交本语言集成,这让 my s q l 成为了 wave 开发人员的首选关系型数据库。另一方面, posquesco 对存储过程和函数的实现更完善,这使得他更适合于一些需要处理复杂数据的应用场景,例如数据挖掘和 gis。 虽然 mysql 和 posquesco 在关系型数据库管理系统中都有着广泛的应用,但两者仍然有一些差距。 mysql 更加侧重于性能,社区规模也更加大,适用于 will 开发中的应用场景。而 post grasco 则更加强调对 sql 标准和数据完整性的支持,适用于需要处理复杂数据和事物处理的应用场景。 因此,选择合适的数据库系统,需要根据具体的业务需求和性能要求进行权衡和判断。你在用哪个数据库?你对国产化的数据库了解吗?请在评论区分享。

开源关系数据库中最值得信赖的名字。他的开发可以追溯到一九八六年,在加州大学伯克利分校 michael stone breaker 的指导下。与其他纯关系数据库一样,他以表列行的形式存储数据,并使用结构化查询语言来读写数据。 然而, post chris 从技术上讲是一个对象关系数据库,这意味着它可以创建自己的自定义数据类型来存储具有属性的对象,并支持继承和多态性等高级功能。 写入数据时,他运行完全符合 s a 的事物,但还添加了自己的特殊降脂,成为多版本并发控制。他为每个事物提供数据库的快照,允许多个事物同时运行,而不会出现流量堵塞或锁定的情况。 开发人员也喜欢他的可扩展性查询,可以通过编写存储过程来重用。他甚至支持 c 库尔之外的语言,如 python 和 c。 它拥有强大的扩展生态系统,例如 post g i s。 为 over 等应用程序提供地理空间数据或 satis 来将数据库分片和分发到任何规模,或者 p g in bed 定位人工智能聊天机器人,提供长期记忆, 而这样的例子不胜美举。首先,您可以在本地下载并安装它,或者更好的是使用像 nian 这样的免费云数据库。它提供开箱即用的自动缩放功能和一个漂亮的 ui 来管理您的数据。 除了一些其他高级功能例如分支之外,创建一个新数据库,然后转到 cco 编辑器运行您的第一个查询,或者使用 cco toos 等扩展将其连接到您的 id。 我们可以从创建一个新表开始,但因为这是一个对象关系数据库,所以我们首先创建一个自定义数据类型,他定义具有相应属性和类型的对象的结构。不过 post grace 的厉害之处在于 我们有更多奇特的数据建模选项,就像可以通过在类型前面放置括号来使用数组,然后通过添加另一组括号使其成为二维数组。我们还有 g, s, o, n 数据类型来处理非结构化数据,甚至还有带有 stir 等扩展的建制队。 现在我们有了这种自定义类型,我们可以在一个或多个表中使用它,例如一个用于程序员的表,另一个用于设计人员的表。创建表后,我们可以使用插入语句像其中添加异形数据。请注意,使用双冒号将字符串转换为 jso one 或 store 类型。 现在最后,我们可以使用 slect 语句读取数据,该语句使用点表示法来访问自定义对象的属性。每个表都有一个唯一的主件,我们可以通过将一个表中的主件存储为另一个表中的外件来创建关系,就像程序员可能拥有许多 number 一样。 然后我们可以通过执行连接查询,将程序员的 id 与 number 的所有者 id 进行比较来找到这些 number。

上节课我们对收纳 toppo 做了详细的介绍,这节课的话我们先来安装一下数据库,那我们的这个呃收纳 toppo 的话,他支持的数据库。上节课我们也讲到了,就是他支持的数据库,就包括 pgsoco、 soco、 slove、 audico。 其实呢,这个 刷到酷狗的话,他也支持一个啊,内存数据库。 hr, 你在安装这个刷到酷狗的时候,你不安装数据库也是可以的,他会使用内存数据库, hr 数据库。那我们为了完整的学习这个刷到酷狗的话,所以他我们来安装一下数据库,我们选择的是这个呃开眼的数据库。第一收口, 因为这这个呃收购社保以及奥利口的话,他是商业的,所以的话我们就选这个呃开言的也是一个非常强大的数据库,这个数据库的话他也 也是知识非常丰富的数据类型,比如这一审呢,这一审逼啊,数组啊,以及一些既定义的数据类型,那他的这个官网的话我也给出来了,然后他我也打出打开了。那他这个呃 p 四口的话,我们 知道他会支持很多的操作系统啊,比如我们的这个冰斗石啊,骂骂死啊,以后另一只啊,以及我们的其他的。就是啊,冰斗石的话也分这个六十四位跟三十二位啊,我们 根据自己的操作系统去下载我们的对应的一个数据库版本,那我们正常的开发人员的话,使用的大部分都是运动操作系统啊,然后的话现在也是大部分的操作系统都是六十四倍的,那你就下载六十四倍的。以后的话我们只有一些大厂,比如像阿里啊、腾讯啊这些 大厂,可能的话他才会有呃机会去安。就是呃使用这个 max, 那我们就下载这个三十二位,那下载三十二位的话也要根据我们的这个呃送到科普所支持的一个呃版本来下载, 我这里的话已经提前下载了他的这个版本,那我们下载的话我下载了一个十一和十四,那这里面支持的话没有十四,那我们就安装十一就好了。 安装也是非常简单,就是我们双击以上有多少安,根据他的向导马上安装就好了,那我们双击一下 转一下的话,他会弹出一个呃,呃,就是这个安装向导对话框,那这安装向导对话框的话,我们就一步一步的往上安装。他这个过程的话其实的话也是有点慢的,因为的话这个呃安装包 他是有点大,差不多有一级哈,就是他安装下来我们就点下一步这个选一个安装目录,再点下一步,那他这个的话就是说我们要安装的一些呃软件, 只要我们不要安装这个,这个好像没什么用,这个要比我没比 us 图单落这个什么的话,这个我不要他,而且的话在影响我们就只安装这个。呃 pe 的 solo 以及这个科目赖就是他的命令航工具以及这个 pg 啊,里面这个是的话应该是一个啊土型化界面。 嗯,下一步那这个就是他的数据目录点下一步,那这里面的话就是有一个啊他的超级用户就是 pose pose 过来,那这个的话我们要记住,不然的话到时的话你就不知道他的用户的这个呃 用户名是什么?那我们就用用这个啊,用户五幺的密码也是用这个叫做 pose 输进去,然后点,那时候他他有个端口就是五四三二,那这个的话他也是要记住的,因为他我们到时要连他这个服务器,只要用到用到这个端口。好,我们 然后呢这个的话,我们啊用的时候就可以了啊,这个的话就是说现在的 logo 图比又是白的牛背心啊这个集群,那我们其他是默认的,不需要额外的线就点亮,然后再就点换装就可以了 啊,他就说上面的话,他就提示说这那那地图比例你做啊。这个 pg 收口往 有恐怖的就是开机安装这个,呃, pg 数据过的话,到我们的这台电脑上面去,等电视台就开始安装,那这个有点慢,那这要等这滚动条滚到最后才行。那我们现在就先等一下,让他慢慢的安装 这个滚动条的话,他滚动的时间确实要比较久,然后的话我刚才暂停了一下了一下,然后的话我们,呃等他安装完了这个的话,那就等于已经把这个呃 pg 收口的话已经就安装完毕了。 好,我们再等一下哈,那他安装完了之后的话,我们啊这个就是安装完了,安装完 之后的话我们就可以啊来看一下他的目录,那这个呃安装的话我们是安装了到这个目录上面去,因为他我们是一个默认目录,那他里面的话有两个目录。呃,我看一下 他这个的话就是他的数据库目录啊,他他的这个软件目录,到时的话如果你创建了数据库的话,他会在这个目录的话会产生一个低糖目录,那这个就数字软件目录,那大家要注意了,如果你在呃去卸载这个呃 p c 口的时候的话,你要把这个 我对他目录手动去删除啊,因为的话他卸载的时候的话,他是不会帮你去啊删除这个对他目录的。好,我们再来往上看,那我们安装完了之后的话,呃,他是有一个呃,从这里应用程序里面看的话,我们是可以找到 他的,他这边应该是有一个啊命的航工具,我看一下 啊,这里面你看到装了这里面的话,他就有很多,这个他有个图形化界面,有的话,呃,还有一个收腹效,那这个的话就是他的一个命令航工具, 然后的话也有就是说啊,还有其他的,那他还有一个图片画界面,但是这个图形画界面的话,我觉得的话可能没有第三方的好用,那我们到时候来介绍。另外一个就是说他这里面不是也有一个 pg 的面试吗?这个应该是一个图形画的界面 啊,是可以连接到我们的这个服务器的,我们打开了也来看一下,他也是有点。 那这个的话就是我们的命令行工具啊,这个是连上去了,我们的第一个连上去由他的密码 啊,我们按了回收键之后的话,他就会连到我们的这个啊默认的端口五四三二。然后的话他跟我说这个用户是 pose 过来留到我的密码,刚才也说过了是 pose 啊, pos 机啊, a s 就 pos 过来说,那这个的话你就连到他服务器上面去了,那到时候的话你也可以在这个命令行里面去啊,对税务进行操作,创建数据户,因为你只要选择数据户命令就可以了。另外的话你也可以通过啊,这个 我们的 pgo 的命这个图图形化工具也是可以的。那我们看到这个他有个密码,我们也是把这个密码输进去, 我们不是设了这密码,我们直接把这密码粘贴一下,把它附进去,看看能不能连上去啊?还是可以连上去的啊?他他他这个还是我密码不能确是吧 啊?他也是连上去了,那也是没问题的,那的话你通过在这里面普通话找做这个数据户也是可以的。 那我们还来另外介绍一种方式,就是说我们使用这个 navika 里面的话,我是比较喜欢弄这个 navikanavika 的话,是一种一款强大的可视网啊数据化管理工具啊,可可用一方面的管理,就是说 这个买烧烤啊,奥利扣啊、皮 polobase 烧烤啊,以及一个利特拉啊,以及烧烤收啊啊,已经卖了, dp 等等,他都是支持的。他的官网是这个我就不打开了,但是的话这个软件 是一个啊,商业软件,他是收费的,有的话你可以通过一些其他的手段可以啊使用啊,这个大家都懂的哈,就是用一些其他手段就可以啊,把它给啊,不用花钱也可以用哈。那我们 看到我这个大家如果没有上来到这个的话,也可以就说,呃,到时候我共享给大家,那你把它打开之后的话,他也是一个呃可视化工具,那他是 比如他他他他这里面的话我先把他删掉,那你也是可以啊,创建一个,新建一个数据户,那你就选择这个 pose 过来收口, 那选择他你就输链接名,那链接名的话肯定是我们啊这个随便起个名字,那我们先起个名叫做啊收纳 coup 啊,他这个数据库啊, 然后他这个是默认端口,那这个都不用说了,然后他这个是他的超级用户,那我们也是啊,输入他的密码,我的密码跟这个啊用户名是一次的啊,这个说实话数据库是默认的,你就不用管他,他,他会创业一个这样的啊, 默认的这个天布雷的一的这个啊数据库,那我们测试下链接他是可以连通的,那你点确定他就可以连上去啊?我这里面也有一个,那我们也先把它删掉, 那这个的话就是我们啊这个超级用户的这个数据库,这里面数据库是什么的还没有的,那我们这个呃 pg 收口就安装完毕了。哎, pg 收口的话并不是我们安装这个收纳酷狗的必要条件,因为的话我们开发人员的话,呃也是可以使用这个内存数据库的, 只是为了完成随时这个送到酷狗的一个呃呃学习链,所以的话我们就安装这个送到酷狗的这个所需要的数据户批示收口。好,这节课的话我们就先讲到这里。

同是开源数据库,为什么 mysql 的使用比 post rascal 更为广泛呢?这涉及到多个因素,一、历史和市场地位 mysql 在市场上的推出早于 post rascal, 这使得 mysql 能够在网站和应用程序开发中先占据一席之地。二、简单易用性。 mysql 以其简单易用的特点而闻名,使得新手在开始使用数据库时更容易上手。 三、社区和支持。 mysql 拥有庞大的开发者社区和支持体系,这意味着有大量的文档、教程和技术资源可供学习和参考。大家觉得未来哪个数据库会更受欢迎呢?

my cycle 能干大部分事,还有什么必要使用商业数据库或者 post a cycle? 是因为需要背锅侠吗?先来看一个真实案例,某年某央企千万级用户,百亿金额的上股系统用的 site based 数据库,在一次常规规当的时候,意外遇到一块硬盘损坏, 负责硬件的小哥没有和正在进行规当的团队充分交流,顺手联系厂家换了新硬盘,做了 read 的磁盘,更换后会有一段同步数据的时间, 恰好这个时候数据库规当进入最为关键的时点,于是数据库挂了之前已经向社会发布公告,原定二十四小时对外公布,四十八的停机时间一下子超时了, it 经理通宵加班的时候顺便准备好了词承。 mythical 是一个开源的关系型数据库管理 系统,还支持多用户多现场和多个存储引擎,如 in now d b, my is a m 等。 postgar cycle 是一个免费的关系数据库, 在灵活的 bsd 许可证下发行 postgar cycle 相对于 my cycle 有哪些优势呢? postgar cycle 比 my cycle 更严格地遵守 cycle 标准。 my cycle 是一个完全关系型数据库,而 postgar cycle 是一个对象关系型数据库。 这意味着 post girl's cycle 具有表继承和函数重载等功能,这些功能在某些应用程序中很有用。 post girl's cycle 比 my cycle 更好地处理并发性, 主要体现在以下三个方面, post girls 实现没有读索的多版本并发控制。 post girls 支持可以使用多个 c p u 内核的并行查询计 话。 postgers 可以以非阻塞方式创建所引,它可以创建部分所引 postger cycle 比 my cycle 具有更好的数据一致性,主要体现在对编程语言的支持。对比 数据库选择重要,一款得心应手的数据库开发与管理工具同样重要。今天给大家安利的是中国版 navikat cycle studio, 是一款可创建多个连接的 web 版数据库管理开发工具。接下来我们一起看一下它有什么功能。亮点, 首先是免费,谁不喜欢白嫖呢?免费的基础上支持几乎所有主流数据库,不仅有 my cycle or recycle post cycle 等国外数据库,还支持武汉达梦、人大金仓等国产数据库。此外呢, cycle still deal 是 web 版工具,一次部署,团队成员都能 使用,只要有可登录的软件链接和账号密码,任意设备随时可用。这款工具省去了繁琐的工具安装、配置和升级的过程,可视化管理系统配置的界面, 给予用户极大的自主性。大家觉得 cycle still deal 怎么样呢?还有什么好用的 cycle 工具推荐吗?欢迎在评论区讨论,今天的分享就到这里了,感谢观看。

说人话,重视站,讲干货。你好,欢迎来到 it 老师的架构六百讲。我是你们的艾瑞私人顾问老齐。到现在我已经录制了十多门与编程架构相关的最新课程,同时还会提供简历优化、模拟面试、 offer 选择、课程指导、工作建议等多种服务。总之,只要我有经验的事情,一定会提供建议和帮助。有兴趣的小伙伴可以看一下评论区 从一个小热点啊。嗯,在前一阵子的评选中呢,呃, postgrad circle 呢,打败了 mecicle, 成为了最受欢迎的开源数据库。那这里边背后到底是什么原因呢?今天呢,我们就来分享一下。 在目前来说,呃,整个开源的关系性数据库呢,分成了两大派系,一个呢,就是以 postgrad c 口呢为主的这个派系,另外一个就是我们买 c 口为主的派系。这两者呢,在世界上用的人数都是非 非常非常多的。那在二零二三年呢,呃, post gracicle 呢发力呢,已经超过了 mecicle 的这个受欢迎的程度。那这里我们就要对比一下,为什么 post gracicle 的话,它成长的速度会这么快。那 post gracicle 呢,它的性能要比起 mecicle 要好一些。那 究竟底层有哪些特性给予了支撑呢?来,我们就来分析一下。呃,这篇文稿呢,呃,我呢从多个维度呢,给将两个数据库呢来进行比较。 那为了说起来不咬嘴呢,我们就用这个呃 p c 口呢来进行替代啊。啊, p c 口和 mac 口呢,他们在对比的时候,首先 p c 口呢,应用场景会更加的丰富,支持的数据类型呢,也是更多种的,包括这个数值类型和 j、 c、 b 的类型都是支持的。那么作为日常 常应用中,如果是相对简单的处理呢, my c 口是胜任的。但是复杂的场景呢,作为 p c 口的话,会更为呃有优势。 那第二点呢,就是呃地理空间的支持。这两者呢,啊,他们都支持,但是呢, p c 口呢,提供更为强力的空间数据的一个描述和支持。在这方面呢,买 c 口呢,是做的是比较弱的。 而第三者呢,就是锁引。上锁引是我认为 p c 口更受欢迎的一个非常重要的原因。在 mac 口中,如果使用默认的一诺 d b 引擎,使用的是 b tree, 也就是 b 加数码。 那么作为 p c 口的话啊,它呢哎定义的这个锁引的类型呢,会更为细节。也就是说可以针对各种不同的呃查询的场景呢,我们使用不同的锁引类型,你比如说我们标准的这个呃 b tree, 还有广义搜索术和呃广义反向缩音等等等等。这些的话,为我们不同场景的查询呢,提供了更细力度的这个支撑,以及更多的优化的选项。作为 pc 口,在复杂查询的场景下呢,他呢比起买 c 口要好很多很多。 第四项呢,就是复制。这两种呢,都支持主从的复制,但是复制的选项和复制的原理呢,是不一样的。作为 pc 口呢,它会更加的包容,支持更多的三方扩展。而 myc 口的话,它呢也在不断的迭代, 像早期的异部的复制,然后在现演化到现在呢,哎,更多的时候出现了像这个 mgr 的组复制,也就是全同步复制,都是一个比较好的一种设计。那作为 pc 口呢,它使用了更先进的事物的管理方式 啊,个事物隔离级别啊,事物原子性,还有保存点这些机制呢。啊,相比起这个 myseco 呢,更为的细致。所以在并发控制上, pcco 呢,呃,要比起 myseco 呢,拥有更好的力度,锁定的范围呢,也更小。 那之后呢,便是存储过程,还有扩展。这两个呢,和我们日常工作呃结合不大,所以大家了解一下。也是呢,就是 pcco 在性能上比新麦 cco 呢要更好一些。 在下方呢,我也给大家列出来的这样的一个表格,是从很多个不同的维度来表达的,是我们两种数据库他们的特性。如果有兴趣的话,可以啊在视频里边或者拿到文档呢,自己来进行分析啊。这个说明了非常非常多的细节。那 除了刚才我们提到的数据类型一些基本的特性以外,那我们再来看一下其他的维度上。作为呃, p c 口呢,它对于数据捕捉的原理呢,和买 c 口是完全不同的。买 c 口呢,是采用 blog, 也就是二进制日志来进行数据的变更的捕捉。而这个 p c 口呢,则使用的是 w a l 预写日志的方式呢。他们虽然呃实现的 细节不同,但是大的方向也都是基于日志的方式呢,来说明我们做了什么事,然后基于日志呢来实现的数据的主从的复制。 在性能方面呢,这里他们两者呢就其实有着各自的应用场景。作为单纯的,如果我们 myseco 使适用于独密集型的工作,他会更优秀。而且 myseco 呢,天然呢,针对于比如说茶 查询密集型的,然后他呢呃这个拥有更好的连接的控制,以及更高的并发量。 但是呢,如果遇到那种读写混合,一边读一边写的操作呢,因为买 c 后本身的 m v c c 的特性也好,还是它的这个锁力度,采用的是间隙锁的锁力度,都会导致这个锁的征用,导致性能的下降和一些并发性的一些阻塞问题。所以呢, myseco 我们说到的数据查询的时候,哎,它的性能会更好。可是问题来了, myseco 它呢默认只支持毕加数和哈西,所以这两种方式, 那适用的场景也是比较有局限性的。所以在复杂查询的时候的性能呢,你可以想象是相对来说比较差的。尤其是在这个呃基于毕加数来进行多条件的动态查询的时候,我的天呐, 简直是一种灾难。所以呢,在业务开发的时候,很多时候我们如果底层数据库呃使用了 myseco, 还要额外的自己去构建所以系统,或者去引入像 electrix 这样的专用的 啊检索引擎来帮助我们进行锁引的处理,这是一件得不偿失的事儿。而 p c 口呢,在这方面显得更加的多元化。如果单看这个并发量和这个呃读写的操作来说,可能单项他不如买 c 口。但是呢,作为 p c 口,他因为 提供的特性是越来越多的,从开发的体验上来说,比起买 c 口要好很多很多。那总简单总结一下, p c 口呢,相比起买 c 口来说,他有更先进的检索的引擎,所以呢,更适合复杂场景。但是如果 是简单的数据的提取的话, myseco 效率会更高一点啊。仅仅是一点。那从可扩展性的角度来说,两者呢,都是支持扩展的。 但是两者的倾向点不一样。 mecco 的话是更倾向于水平扩展,也就是通过向数据库直接集群增加更多的节点来进行横向的扩展。而 pcco, 它呢是以垂直扩展, 也就是说在单个节点上增加更多的计算资源来进行。当然呢, pc 口底层也支持像分片技术,把我们的数据的 集群呢打到不同的节点上,做成一个内置的一个分布式的一个管理。当我们面对海量数据处理的时候, p c 口的优势要比起买 c 口要大很多很多很多啊。那最再再有一个额外的,就是从使用成本上来。 这也是我这么多年来一直心有余悸的事情。 pc 口呢,是社区驱动的,到现在为止呢,也没有一些所谓的大的资本注入,靠这个呃全世界工程师用外发电来撑起来的。 那么作为 mecco 呢,不一样。大家知道这个在中国 oracle 坏事做尽啊,这个在二零一零年收购了,以这个 mecco ab 公司以后的话,那整个呢这个 mecco 呢,其实就变成了呃一个 oracle 类似的附属产品。 然后或者说呢,就是他呃在精简了很多原本应该买 cco 支持的东西,然后是为了这个 oracle 的这个数据库商业变现。所以买 cco 未来怎么样,我们自己说了不算,得看 oracle 的。因此呢,在这个原始的分支基础上,像原有的这 这个 mycco 的作者呢,又独立开发了马瑞 idb 以及著名的这个 bocona, 但是这些数据库,它的热度远没有这个 mycco 来的要高啊。再相比起 pcco 呢,更不是一个量级上。所以呢,如果从未来的可靠性的角度来说,我认为 pcco 是一个好的选择。 那说了这么多 pc 和他的好的地方呢,他的问题在哪呢?他不是完美的。首先呢,作为 pc 口来说呢,他的呃使用上的一些积累的东西,一些文档啊,一些异常的处理啊,他远没有买 c 口八来的成熟研究的人呢,也远没有买 c 口来的多 啊。另外呢,就是他因为买 pc 口呢,这个结构啊,架构更加的复杂,所以呢,维护的呃人员的要求呢,也自然会变得更高。同时呢, p c 口,它这里因为自身机制的原因呢,使用需要比买 c 口更多的内存和 c p u 方面的一些支持。同时呢啊,它尤其是对于内存方面,因为 p c 口它是对于每一个客户的连接,是采用子进程的方式,注意是子进程的方式。 每个呃连接的话,大概需要占用十兆内存。而这些损耗呢,在这个呃 mycco 中是不存在的。所因此呢,这个 pcco 比起 mycco 要占用更多的内存,尤其是内存方面,他提出了更多的要求。 最后呢,就是 pcco 呢,呃,它设计的比买 cco 更加的规整。而买 cco 的话,呃相对来说更为轻量级。因此,我们在业务开发的时候,简单的场景下,往往呢它的性能不如买 cco。 但是呢, 正是因为 pc 口,它有着很多的这种高级应用的特性和场景。因此在复杂业务系统查询的时候, no 它的优势会比买 c 口变得更大。 包括我也是。如果没有历史的负担,我会毫不犹豫的选择 pcco 作为关系性数据库业务数据的首选,而不是 mecco。 好。以上呢,就是我的一些看法和经验,希望呢能对你有帮助。