我知道,关系数据库是一个数据库,其中领域在一个表格链接到行中的其他人,像这样的东西。

但我不明白是什么意思我作为一个网络开发!

我所知,查询与联接和嵌套的选择可以降低性能(尤其是推风格的查询与几十个加入).甚至更多,任何查询的数据库是瓶颈问题,然后你有很多的用户要的高速缓存的每一选择的请求。

如果你的缓存的每一选择的要求,这是更好地缓简单的请求,而不是复杂的。你可以高速缓冲存储器"select*from tbl1where id=123"和"select*from tbl2where id=456"或"select*from tbl1,tbl2在那里...",但是如果选择第二种方法,则需要高速缓冲每个组合的对象-这不是很酷。

Ok,现在我们只使用非常简单的查询,如"select*from tbl1where id=123"的"select id from tbl1order by id限制0,30"和高速缓冲存(或者我们可以缓仅第一类型的查询,无论).有查询并不那么简单插入、删除和更新都是我们所需要的和所有我们用什么!

我们可以看到,所有的逻辑关系的是在主要语言的应用程序,不在SQL。因此,我们为什么需要所有这些关系的事情?他们是什么意思?什么"关系"类型有什么另一个类型还没有但这是必要的?如果我们不使用关系特征,为什么大家仍然使用MySQL或任何关系数据库,甚至如果他关心的性能比较?

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

我失去了一些东西?

有帮助吗?

解决方案

如果您想了解什么关系的手段,我建议书“ SQL和关联理论”由CJ日期。

关系在此上下文中的参照关系。它是指为关系这是基本上是表被称为在数学理论,导致了的关系模型

这关系数据库已经变得无处不在的原因是,它们是用于与最小冗余组织数据的最通用的解决方案。

有使用非关系的解决方案的有效理由。他们往往解决数据管理的具体任务非常好,但是在其他方面都是薄弱。而SQL和关系数据库达成妥协,解决更大的一组问题的充分,有弱点较少的区域。

这不是基于关系模型当前可用的其他技术在“所列下一代数据库“。

其他提示

我被你的问题混淆。否则怎么给你建议你跟踪问各种表格互相关联?

例如,我有车的名单,以及人的名单,我需要连接的人拥有每一辆汽车,所以我在人数据库中的car_ID列。如何将建议跟踪这些关系的

另外,你说你要缓存“的所有查询都瓶颈”,你只需要缓存“简单”的查询。不过,我90%肯定这使得多个小查询将更资源不是让几个较小的查询密集。你也不必隐藏每个组合中,只有实际存在的人。在我的例子,什么是错的,像这样的查询?

SELECT person.*, car.* from person left join on car where person.car_ID = car.ID

关系数据库已成为事实上的数据库,用于一些原因。

  1. 设立初级、国外和独特的限制强制执行某些业务规则,在最低水平,有助于确保数据integrety,并使得数据库的关系很容易理解任何级别的专业。

  2. 适当设计的关系数据库是事实上的更快的场景背后的许多进程(不是所有)。

  3. 所查询的关系数据库是相当快的学习,并且容易做到的。

  4. 关系数据库有助于限制数据的重复,并从一种数据工程的角度来看,这是一个美妙的事情。

和许多其他人,但是这些都是一些。

如果你不使用的关系,你需要在一个巨大的表存储一切与众多的列数。或者你可以使用一个数据立方体(我想?)

它可以让你一定要规范你的数据,并删除redanancy。而不是存储在一个平的表中的所有数据(例如Excel电子表格),则存储在单独的表不同的数据,然后将它们之间的相互关系。

例如,可以存储在一个表中的用户的用户和产品中的产品表,然后使用一个关系表,以涉及哪个用户订购了产品。

  

用户A - >产品A

     

用户A - >产品B

     

用户B - >产品A

     

用户C - >产品B

使用归一化的数据,这意味着,如果数据发生变化时,只需要在一个地方进行更新。如果用户更改他们的名字,只有该用户记录更改。如果产品价格有待提高,只有产品记录的更改。你不必冲刷的平坦表寻找重复的数据来代替。

Valya,如果将不被添加在应用程序中的数据,更新或删除,那么高速缓冲存储器是搜索并显示它的最快方式。我很想知道这个数据是每个人都在这样一个急于看,但不会更新?也许某些细节会有所帮助。 我知道谁存储他的整个数据库在内存中写式高速缓存,是的,它飞!他是我所知道的谁可以拉这一关的唯一开发商。也许你需要重塑火箭发动机,也许你不知道。

关系是用于表的数学字。列是相互关系,否则他们不在同一个表中。

例如,两个数字是在相互关系如果它们不同的3的倍数。让我们写几个下来的:(0,0),(1,4),(2,-1),等你看行的集合出现,这是一个表。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top