gpt4 book ai didi

relational-database - 'relational' 中的 'relational database' 对我们意味着什么?

转载 作者:太空狗 更新时间:2023-10-30 01:50:30 25 4
gpt4 key购买 nike

我知道,关系数据库是一种数据库,其中一个表中的字段链接到其他表中的行,就像这样。

但我不明白这对我作为网络开发人员意味着什么!

据我所知,具有联接和嵌套选择的查询会降低性能(尤其是具有数十个联接的 drupal 样式查询)。更重要的是,对数据库的任何查询都是瓶颈,然后您有很多用户,您必须缓存每个选择请求。

如果缓存每个选择请求,最好缓存简单的请求而不是复杂的请求。您可以缓存“select * from tbl1 where id = 123”和“select * from tbl2 where id = 456”或“select * from tbl1, tbl2 where ...”,但是如果您选择第二种方式,您将需要缓存对象的每个组合 - 这并不酷。

好的,现在我们只使用非常简单的查询,例如“select * from tbl1 where id = 123”或“select id from tbl1 order by id limit 0, 30”并缓存它们(或者我们可以只缓存第一种查询,无论如何)。查询和简单的 INSERT、DELETE 和 UPDATE 都是我们需要的,也是我们使用的!

正如我们所见,所有的关系逻辑都在应用程序的主要语言中,而不是在 SQL 中。那么,为什么我们需要所有这些相关的东西呢?他们的意思是什么? “关系”类型有什么其他类型没有但又需要的东西?如果我们不使用关系特性,为什么每个人仍然使用 MySQL 或任何关系数据库,即使他关心性能?

这种类型的数据库已经成为一种标准。为什么?我没有任何线索。除了 GAE 中的 on,我几乎没听说过有人使用非关系数据库。

我错过了什么吗?

最佳答案

如果您想了解关系的含义,我推荐 C. J. Date 的书“SQL and Relational Theory ”。

在此上下文中的关系指的是关系。它指的是关系,这基本上就是导致 relational model 的数学理论中所称的表格。 .

关系数据库之所以变得无处不在,是因为它们是组织数据的最通用解决方案,冗余最少。

使用非关系解决方案有充分的理由。他们通常非常好地解决数据管理的特定任务,但在其他领域却很薄弱。而 SQL 和关系数据库达成了妥协,充分解决了更大范围的问题,而弱点更少。

The Next-Gen Databases”中列出了当前可用的不基于关系模型的其他技术。

关于relational-database - 'relational' 中的 'relational database' 对我们意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1689867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com