V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
changdy
V2EX  ›  数据库

各位大神, 你们会关注数据库的新功能吗?

  •  
  •   changdy · 2024-01-04 15:43:45 +08:00 · 1174 次点击
    这是一个创建于 375 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天突然发现 mysql 其实在 5.7 就已经支持了虚拟列,和虚拟列索引. 终于能优化系统中的 select * from dual where phone like '%xxx' 这种以尾号进行模糊查询的场景了

    其实最近几年数据库也在不断发展. 但是和一些朋友交流了下,大部分都还在使用基础的 crud 功能.

    比如分区表的升级(特指 pg) ,虚拟列,函数索引,条件索引,数组结构.json 增强,cte,窗口函数等

    尤其是 pg 的一些插件 ,很大程度上能够让数据库承担一部分的复杂操作

    不知道大家有没有尝试去了解和使用这些新功能?

    ps mysql5.7 下的 虚拟列以及虚拟列索引稳定吗?

    10 条回复    2024-01-05 10:31:08 +08:00
    bthulu
        1
    bthulu  
       2024-01-04 15:47:44 +08:00
    从来不用这玩意. 客户提供的数据库千奇百怪, 只用 ef 支持的功能.
    fkdog
        2
    fkdog  
       2024-01-04 15:48:16 +08:00
    现在国内互联网已经不是 10 年前那种百花齐放的时代的,没那么多新增应用去开发。
    更多的是维护现有存量应用,屎山都难维护,更别说重构/关注新功能/关注行业动向了。
    mightybruce
        3
    mightybruce  
       2024-01-04 15:56:45 +08:00
    不要关注 mysql, 多关注 pg 一下。
    第一、互联网用不到多少复杂的 mysql, 在银行、保险等企业才会有大量 sql 以及存储过程这类
    第二、互联网已经退潮了, 多关注一下 IT 除互联网外的行业使用得数据库行情。
    第三、pg 国企还有一些国产数据库开发是比较多的,mysql 屎山太多, 做的扩展和插件远不如 pg, pg 现在通过插件都可以搞向量数据库。
    第四、国家内部国企央企钦定不使用 mysql 5.7 以上的,mysql 现在被 oracle 搞得很不明朗,pg 才算是真正开源
    changdy
        4
    changdy  
    OP
       2024-01-04 15:58:25 +08:00
    @fkdog 这个倒是现况 .18 年项目立项的时候用了 mysql5.7 现在还在用 5.7 挣扎中...因为大家当时对 mysql 8.0 和 pg 都不是很熟悉. 现在还在用 ut8(mb3) emoji 表情都存不了..
    IbukiSuika
        5
    IbukiSuika  
       2024-01-04 16:09:22 +08:00
    @mightybruce #3 mysql 5.7 以上的有什么说法吗,非技术方面的问题?
    mightybruce
        6
    mightybruce  
       2024-01-04 16:35:39 +08:00
    @IbukiSuika 考虑 mysql 逐渐商业化,mysql 社区版和商业版服务差距变大,稳定性等因素。
    另外就是国产数据库厂商和国内评审专家的意见。
    fkdog
        7
    fkdog  
       2024-01-04 17:33:10 +08:00
    @IbukiSuika 国内搞信创工程,要求政府事业单位项目的中间件全面国产化。
    IbukiSuika
        8
    IbukiSuika  
       2024-01-05 09:04:24 +08:00
    @mightybruce #6
    @fkdog #7
    感谢
    changdy
        9
    changdy  
    OP
       2024-01-05 10:19:22 +08:00
    @mightybruce 其他都很赞同.但是对于第一点 表达一些不同的看法.
    之前确实有不少系统把有很多业务逻辑都写在了存储过程里面 .造成了 难以维护 .难以 debug 所以一些大厂吸取教训 ,从此不再使用存储过程. 这个思路我是完全赞同的.

    但是对于普通开发者来说 , 一些中小企业.讲究快速开发. 如果写一些轻量级的存储过程 , 达到一些功能我觉得是完全可行的.
    mightybruce
        10
    mightybruce  
       2024-01-05 10:31:08 +08:00
    那要看业务是否复杂了, 大多数互联网涉及到的数据库操作并不复杂。y 银行到目前为止还有大量存储过程,不过银行用的是 oracle, 完全碾压 mysql, mysql 说实话性能垃圾, 支持的功能也少,像 oracle rac 这类,mysql 就更差了,花钱买的和免费不在一个水平, 不同的业务考虑是不同的,如果看重吞吐量和并发量,那么的确不要使用这些。
    大厂都没有多少复杂的金钱结算一致性非常强的业务, 有这个的都去搞自研数据库了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3462 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:52 · PVG 18:52 · LAX 02:52 · JFK 05:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.