12

我正在设置CKAN实例。我必须为 CKAN 设置一个 postgres 数据库才能运行。此外,我也必须设置一个数据存储。

我在 stackoverflow 上找到了这个问题,但没有回答我的问题。

如何在数据存储而不是数据库中思考?

一般来说,dataStore 和数据库有什么区别?

4

3 回答 3

5

CKAN 使用两个 PostgreSQL 数据库:

  1. CKAN 的目录数据库,这是安装 CKAN 时要求您配置的第一个数据库。这存储了 CKAN 数据目录的所有数据,例如与数据集和资源(标题、标签等)、用户帐户、组和组织等相关的元数据。

  2. CKAN 的DataStore是一项可选功能,它为上传到 CKAN 或从 CKAN 链接到的文件启用数据 API 和数据预览。这是第二个 PostgresSQL 数据库,data*store* 只是 CKAN 用于此功能的名称。(CKAN 中的 DataStore 与您链接到的 Google App Engine 数据存储概念无关。)

CKAN 还有一个FileStore,如果启用,它用于存储上传到 CKAN 的文件。FileStore 并不是真正的数据库,它只是磁盘上存储上传文件的目录。

于 2013-12-12T09:37:39.863 回答
3

到的有点晚...

我将数据库视为一种特殊类型的数据存储。顾名思义,数据存储是存储数据的地方。

您可以使用文件存储系统(例如 Linux 中的 ext4)或数据库(例如 PostgreSQL)将数据存储在硬盘中,其中数据存储在文件中,但这些文件由数据库管理系统管理(访问权限、密钥的唯一性等)。

NoSQL 数据库通常没有内置管理器,因此管理是在应用程序级别完成的。您可能会将它们视为只是一个存储系统。

于 2017-07-23T22:54:31.290 回答
2

对我来说,这是同一件事的两个词。

不过,诚然,我主要听到或读到来自 nosql 用户的术语。如果我们接受 nosql 存储作为定义,那么它就是一种面向列的存储——而不是面向行的存储。

http://en.wikipedia.org/wiki/Column-oriented_DBMS

于 2013-12-11T09:24:58.643 回答