0

我很想知道更多关于数据库的知识,然后我现在才知道。我知道如何为我碰巧创建的任何 webapp 设置数据库后端,但仅此而已。例如,如果我正在创建三个不同的应用程序,我只需创建三个不同的数据库,然后为特定应用程序配置每个数据库。这都是简单的知识,我现在想更深入地了解数据库的实际工作方式。

假设我开发了一个需要大量空间和处理能力的应用程序。然后,该数据库必须分布在许多机器上。一个数据库究竟如何分布在众多机器上,并且仍然能够写入记录然后检索它们。每个表是否都有自己的机器以及需要什么软件来确保不同的机器都成功地执行了它们的事务。

正如你所看到的,我是一个非常无知的数据库,哈哈。

任何帮助解决这个问题将不胜感激。

4

4 回答 4

1

这是一个相当广泛的话题……您可能想从多主复制高可用性集群大规模并行处理开始。

于 2010-10-15T18:04:36.700 回答
1

我不知道您使用的是什么 RDBMS,但我有两本书的建议。

对于理论(我认为应该首先出现):深度数据库:从业者的关系理论

实施:高性能 MySQL:优化、备份、复制等

我拥有这两本书,它们都非常棒,尤其是第一本书。

于 2010-10-15T17:59:47.670 回答
0

如果您想知道如何在负载不断增加的情况下保持数据库运行,那么这不是一个基本问题。几家知名的网络公司都在努力寻找正确的方法来使他们的数据库具有可扩展性。

如果您的应用程序是读取密集型的,则使用memcached缓存数据库信息是减少数据库负载的一种方法。如果您的应用程序是写密集型的,那么您可能会考虑使用像 MongoDB 或 Redis 这样的 NOSQL 数据存储。

于 2010-10-15T18:09:25.340 回答
0

普通人的数据库设计

如果您没有任何数据库经验,这是关于该主题的最佳书籍。它有历史背景和实际例子。大多数书籍经常跳过历史内容,因为它们假设您知道数据库是什么,或者没关系,并直接跳到实际内容。这本书给你一个完整的画面。

于 2010-10-15T18:20:22.170 回答