暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

SQL 50 岁:结构化查询语言的下一步是什么?

121

点击上方蓝字关注我们



即使生成式AI将SQL隐藏在幕后,SQL也将继续在我们与数据交互和使用数据的方式方面发挥关键作用。


1974年5月,Donald chamberlin和Raymond boyce发表了一篇介绍Sequel的论文。Sequel是一种用于管理和排序数据的结构化查询语言。由于另一家公司拥有Sequel这一名称的版权,该语言不得不更名。


在1970年代末期,结构化查询语言(SQL)被Oracle等数据库公司采用,并与其创新的关系数据库产品一同推出。


SQL由此诞生,正如他们所说,其他的技术都成为了历史!


对于一种已经使用了50年的语言,SQL在开发人员中的声誉好坏参半。在多其他语言来来去去的情况下,SQL为什么还在使用?为什么SQL还有确定的光明的未来?




1.SQL50年创造新历史


现在SQL已经有50年的历史了。根据 Stack Overflow的数据,SQL是专业程序员经常使用的第三大最受欢迎的语言。


2023年,IEEE指出,SQL 由于可以与其他编程语言结合使用,是开发人员在找工作时最常用的语言。


SQL是围绕数据库设计并采用的,并且作为一种管理和与数据交互的方式不断发展壮大。


像COBOL(1959年推出)和FORTRAN(1958年首次编译)这样的语言也仍在继续。虽然它们可以带来高薪职位,但主要是因为它们与现有的遗留部署相关联,而不是与新的和令人兴奋的新项目相关联。


另一方面,SQL仍被用作围绕 AI、分析和软件开发的工作的一部分,仍然是我们每天如何与数据交互的标准


随着业务系统日益复杂,数据库结构越来越庞大,开发人员编写SQL查询的难度也在增长。面对繁杂的数据库表结构和连接条件,开发人员经常需要花费大量时间来设计查询逻辑、编写SQL语句。如何才能减轻开发人员的SQL编写压力,使其更专注于业务本身而非技术细节?


现在很多AI大模型提供数据库管理工具,使用自然语言处理技术来自动生成SQL,极大地降低了开发成本。开发人员只需使用自然语言描述查询需求,即可自动转换为正确的SQL语句。


现在这样的产品越来越多了。星环科技基于在SQL编辑器的多年技术积累,推出了大数据分析大模型SoLar“求索”。取义“路漫漫其修远兮,星环科技将上下而找新路子”。SoLar“求索”可以帮助用户通过自然语言,生成可成功执行的SQL或Cypher,从而快速获取查询的结果,能够快速降低用户的使用门槛。



2.为什么SQL仍然如此重要?


当你看到SQL时,你可能会问为什么它能存活这么久,甚至还茁壮成长?


先来看看SQL固有的毛病:


一方面,SQL当然不容易学习,因为它有一种特殊的语法,很多时候都不是简单就可以学会的。


另一方面,对于新开发人员来说,围绕SQL的用户体验可能具有挑战性。


除此之外,每个数据库供应商都必须支持 SQL,但每个供应商在如何实现这种支持方面都有自己的怪癖或细微差别。因此,针对一个数据库的方法可能无法轻松转换为另一个数据库,从而导致更多的工作和更多的支持需求。


更糟糕的是,在SQL中很容易犯错误,这些错误可能会产生真实且可能灾难性的后果。例如,如果指令中缺少一个子句,可能会导致您删除整个表,而不是执行所需的事务,从而导致数据丢失和恢复工作。检查你的逻辑并了解事情在实践中是如何运作的是必要的要求。


那么,为什么SQL在首次设计和发布50 年后的今天仍然是处理数据的主要方式呢?


SQL基于强大的数学理论,因此它可以继续有效地执行,并支持其设计的用例。


事实是,当您将SQL与关系数据库相结合时,您可以以可靠、有效和可扩展的方式,将您创建的数据以及如何管理这些数据映射到许多业务实践。简单地说,SQL是有效的,并且没有替换选项。


例如,SQL是第一种为每个请求返回多行的编程语言,这样可以更轻松地获取有关一组数据中发生的情况的数据,因此可以更轻松地获取业务及其应用程序中发生的情况,然后将其转换为业务可以使用的内容。


同样,SQL可以更轻松地将信息划分和隔离到不同的表中,然后将这些表中的数据用于特定的业务任务,例如将客户数据放在一个表中,将制造数据放在另一个表中。执行事务的能力是当今大多数流程的支柱,而 SQL大规模实现了这一点。


SQL成功的另一个重要原因是始终与时俱进。多年来,从其关系根开始,SQL 增加了对地理信息系统(GIS)数据、JSON文档以及XML和YAML的支持。这使 SQL 能够跟上开发人员与数据交互的方式。


现在,SQL 可以与向量数据相结合,使开发人员能够使用 SQL与数据进行交互,但对生成式 AI 应用程序执行向量搜索。


另外,很多数据库企业在SQL编译上有自己创新技术。例如星环科技经过多年的研发,积累了多项核心技术,主要体现在分布式技术、SQL编译技术、数据库技术、多模型数据的统一处理技术、基于容器的数据云技术以及大数据开发与智能分析技术六个方面。


其中自研的编译技术将SQL语句自动翻译为分布式计算任务,从而实现SQL应用程序的分布式运行,大幅提升应用的性能;同时实现了用统一的SQL语言操作不同模型(如表、文档、图等)的数据。


星环科技的SQL 编译技术达到业界先进水平,支持绝大部分ANSI92、99、2003 SQL标准,兼容传统关系型数据库方言,如Oracle、IBM DB2、Teradata等,支持存储过程。SQL编译技术大幅降低了大数据应用开发的难度和成本。



3.SQL的未来是什么?


一直有人认为,SQL必须消失。


因为SQL让事情变得更糟的 9 大原因,包括:


·表格无法缩放;


·SQL不是JSON 或 XML 原生的;


·封送处理是一个很大的时间消耗;


·SQL 不做实时;


·JOINS 是一个令人头疼的问题;


·柱子(“柱子”通常指的是表中的列(Column))是浪费空间;


·优化器有时只会有所帮助;


·非规范化将表视为垃圾;


·随插即用的想法可能会破坏您的数据库等。






过去曾有人尝试替换SQL。


NoSQL(不仅是SQL)数据库的开发是为了取代关系数据库,并摆脱了大规模处理和管理数据的传统模型。


然而,这些数据库并没有取代 SQL,而是添加了自己的类似SQL的语言,这些语言复制了SQL已经根深蒂固到开发人员工作方式中的一些方法和途径。


NewSQL数据库,即新型的关系或SQL数据库,能够像NoSQL数据库那样水平扩展而不放弃ACID保证。然而,这类数据库,如SingleStore、NuoDB(现属于Dassault Systems)和VoltDB(由Stonebraker创造),并未流行起来。主要原因是现有的数据库已经足够好,企业不愿意冒险迁移到新系统。


过去,自然语言处理的倡导者呼吁采用新的方法,摒弃SQL的标准化和笨拙的方法。然而,这些尝试最终得到的方法与他们试图取代的方法一样笨拙,导致他们被边缘化或忽视。


生成式AI 可能会为开发人员承担更多编写SQL的任务,因为大型语言模型在训练过程中已经接触到大量的SQL代码。虽然这种方法可能会随着时间的推移而发展并变得更加流行,但它仍然依赖于SQL与这些数据集进行实际交互,并将结果返回给用户。如果有的话,这可能会使SQL在未来变得更加重要,而不是更少,即使它对开发人员的可见度降低。


即使SQL最终被抛在幕后,它仍将继续在我们如何与数据交互和使用数据方面发挥关键作用。由于我们所有 IT 系统中有如此大比例的依赖数据来运行,因此 SQL 不会很快消失。因此,让我们庆祝 SQL 50 周年,并考虑我们将来如何继续开发和使用它。


因为市场已经发声了


SQL是许多人的首选,即使有更新的、可以说是更强大的选项。从最小的网站到最大的大型公司,世界各地的开发人员都了解SQL。他们依靠它来保持所有数据的组织有序。


SQL的表格模型如此占主导地位,以至于许多非SQL项目最终添加了SQLish接口,因为用户需要它。对于NoSQL运动来说也是如此,它的发明是为了摆脱旧的范式。最后,看起来SQL赢了。


SQL 的局限性可能不足以将其扔进垃圾箱。开发人员可能永远不会站起来并将所有数据从 SQL 中迁移出去。、


但是SQL的问题是真实的,足以给开发人员带来压力,增加延迟,甚至需要对某些项目进行重新设计。


专家也发声了。


迈克·斯通布拉克,图灵奖得主,在过去半个世纪里以惊人的速度推动数据库设计的发展。他在数据库领域的早期贡献,如Ingres和Postgres,为他赢得了声誉。斯通布拉克不仅满足于创建了世界上最受欢迎的数据库之一PostgreSQL,还继续创立了Vertica、Tamr和VoltDB等数据库产品和公司。他的最新项目是面向数据库的操作系统(DBOS),旨在颠覆传统的计算模式。


斯通布拉克以其对数据库行业的坦率而闻名,他不惧于挑战现有的观念。例如,在2014年Hadoop达到顶峰时,他指出Google已经放弃了MapReduce,转而使用BigTable。


尽管斯通布拉克对NoSQL技术持保留态度,但他一直是关系数据模型和SQL的坚定支持者,并认为这两者是关系数据库管理系统的核心。

关系模型与SQL的持久性:尽管新的数据模型和查询语言将不断涌现,试图满足新兴应用领域的需求,但关系模型和SQL的结合仍然难以被击败。尽管会有不断地尝试,但这些新的尝试不太可能取代现有的关系模型。


参考资料:


·https://www.infoworld.com/article/2337457/sql-at-50-whats-next-for-the-structured-query-language.html


·https://mp.weixin.qq.com/s/6ZWF1Qn877ruXwMvMkcMKw


·https://www.infoworld.com/article/2335455/9-reasons-sql-has-got-to-go.html


·https://mp.weixin.qq.com/s/rFI4EMdFYeJKcTp36C98RQ


·https://www.infoworld.com/article/2336219/why-sql-still-rules.html


相关文章


·数据库创新力量系列值数据库Redis更改开源协议遭反噬,面临替代风险与商业机遇流失


·数据库创新力量系列OpenAI收购数据库初创公司Rockset背后逻辑5大原因、3大作用、4大协同方向


·数据库创新力量系列GQL图查询语言国际标准登场,撬动图数据库市场?


·数据库创新力量系列AI+数据,再次将数据库送上一个高位,这些巨头这样做!


·数据库创新力量系列数据与分析领导者的秘密,向量数据库的5个W:为什么?是什么?玩家是谁?谁用?用在哪儿?


·数据库创新力量系列MySQL 5.7 EOL,超过50%的用户该怎么办?只有4个月时间!





识别图中二维码

关注我们



END




文章转载自Hadoop大数据应用,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论