过去10年关系数据库有哪些创新
关系数据库的 SQL 实现以其当前形式已经存在了大约 25 年(自 System R 和 Ingres 以来)。 即使是主要的(松散遵守的)标准 ANSI-92(尽管后来有更新)也已经有 15 年的历史了。
在过去十年左右的时间里,您能想到基于 SQL 的数据库有哪些创新。 我特别排除 OLAP、列式和其他非关系型(或至少非 SQL)创新。 我还想排除“应用程序服务器”类型的功能和捆绑(如报告工具)
虽然基本方法仍然相当静态,但我可以想到:
- 可用性
- 处理更大数据集的能力
- 易于维护和配置
- 支持更高级的数据类型(blob、xml、unicode 等)
您还能想到其他类型吗?
The SQL implementation of relational databases has been around in their current form for something like 25 years (since System R and Ingres). Even the main (loosely adhered to) standard is ANSI-92 (although there were later updates) is a good 15 years old.
What innovations can you think of with SQL based databases in the last ten years or so. I am specifically excluding OLAP, Columnar and other non-relational (or at least non SQL) innovations. I also want to exclude 'application server' type features and bundling (like reporting tools)
Although the basic approach has remained fairly static, I can think of:
- Availability
- Ability to handle larger sets of data
- Ease of maintenance and configuration
- Support for more advanced data types (blob, xml, unicode etc)
Any others that you can think of?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
RANK 等分析函数
Analytic functions like RANK
我不确定您是否想要包括特定于供应商的创新(我也不完全确定其他数据库引擎已经不能做到这一点),但 SQL Server 2005 在其语言中添加了递归 transact-sql 查询。 我发现它们对于迭代分层数据非常有用。 我相信 2008 年添加了一些与分层数据相关的新功能,但我还没有仔细研究过。
I'm not sure if you want to include even vendor-specific innovations (and nor am I entirely certain that other database engines can't already do this), but SQL Server 2005 adds recursive transact-sql queries to their language. I find them amazingly useful for iterating over hierarchical data. I believe 2008 adds some new functionality related to hierarchical data, but I haven't looked that closely.
窗口函数非常适合执行加权平均值等操作以及以前需要游标的其他操作。
Windowed functions are awesome for doing things like weighted averages, and other things that previously required CURSORS.
好吧,有人可能会说,15 年缺乏动向不仅是缺乏创新的标志,而且是数据库近乎完美的标志! 许多人尝试用代码做一些事情,而这些事情在数据库中做得更好,自 20 世纪 60 年代以来,这些数据库已经经过改进,可以尽可能快速、高效地运行。
Well one could possibly suggest that a lack of movement for 15 years is not just a sign of lack of innovation, but a sign that databases are almost perfect! Many people try to do things in code that are better done in databases that have been refined since the 1960's to run as fast and as efficiently as possible.
我想说,过去十年(1998-2008)已经见证了开源 RDBMS 产品在主流部署中变得可行。 大多数财富 500 强公司现在在其组织中的某个地方使用 MySQL 或 PostgreSQL 或其他开源 RDBMS,即使他们也使用商业闭源 RDBMS 品牌之一。
这不是一项技术进步,但仍然值得注意,因为稳定的开源 RDBMS 引擎的可用性使许多其他创新项目成为可能。
我意识到 MySQL 和 PostgreSQL 早在 1995 年就已经可用,但我认为在那之后的几年里它们都不是主流。
I would say the last ten years (1998-2008) have seen open source RDBMS products become viable in mainstream deployments. Most Fortune 500 companies now use MySQL or PostgreSQL or another open source RDBMS somewhere in their organization, even if they also use one of the commercial, closed-source RDBMS brands.
This isn't a technical advancement, but it's noteworthy nevertheless because the availability of a stable, open-source RDBMS engine enables many other innovative projects.
I realize that both MySQL and PostgreSQL were available as early as 1995, but I would argue that they weren't mainstream for several years after that.
除了更高级的数据类型(blob、xml、unicode 等)列表之外,您还应该包括空间类型。
PostgreSQL 的 PostGIS 扩展于 2001 年推出,但现在所有主要供应商都实现了空间对象和空间 SQL。
随着 Google 地图、Bing 地图和 OpenLayers 的兴起,无需中间件即可显示地理空间数据和运行空间查询的能力对网络和数据分析产生了巨大影响。
Along with your list of more advanced data types (blob, xml, unicode etc) you should include spatial types.
The PostGIS extension for PostgreSQL came out in 2001, but now all the major vendors have implemented spatial objects and spatial SQL.
Along with the rise of Google Maps, Bing Maps, and OpenLayers the ability to display geospatial data and run spatial queries without middleware has had a huge effect on the web and data analysis.
我认为大部分进展都在性能领域——查询分析器和集群。
I think most of the progress has been in the realm of performance - query profilers and clusters.
我认为最大的创新领域可能是数据复制——可用性和可靠性。 大多数其他领域都是增量的。 通过指定十年,您可以省略 ORDBMS 的内容——可扩展性; 1997年出现的。
I think that the area of biggest innovation has probably been in data replication - for availability and reliability. Most of the other areas are more incremental. By specifying a decade, you omit the ORDBMS stuff - extensibility; that appeared in 1997.