我正在设置CKAN实例。我必须为 CKAN 设置一个 postgres 数据库才能运行。此外,我也必须设置一个数据存储。
我在 stackoverflow 上找到了这个问题,但没有回答我的问题。
一般来说,dataStore 和数据库有什么区别?
我正在设置CKAN实例。我必须为 CKAN 设置一个 postgres 数据库才能运行。此外,我也必须设置一个数据存储。
我在 stackoverflow 上找到了这个问题,但没有回答我的问题。
一般来说,dataStore 和数据库有什么区别?
CKAN 使用两个 PostgreSQL 数据库:
CKAN 的目录数据库,这是安装 CKAN 时要求您配置的第一个数据库。这存储了 CKAN 数据目录的所有数据,例如与数据集和资源(标题、标签等)、用户帐户、组和组织等相关的元数据。
CKAN 的DataStore是一项可选功能,它为上传到 CKAN 或从 CKAN 链接到的文件启用数据 API 和数据预览。这是第二个 PostgresSQL 数据库,data*store* 只是 CKAN 用于此功能的名称。(CKAN 中的 DataStore 与您链接到的 Google App Engine 数据存储概念无关。)
CKAN 还有一个FileStore,如果启用,它用于存储上传到 CKAN 的文件。FileStore 并不是真正的数据库,它只是磁盘上存储上传文件的目录。
到的有点晚...
我将数据库视为一种特殊类型的数据存储。顾名思义,数据存储是存储数据的地方。
您可以使用文件存储系统(例如 Linux 中的 ext4)或数据库(例如 PostgreSQL)将数据存储在硬盘中,其中数据存储在文件中,但这些文件由数据库管理系统管理(访问权限、密钥的唯一性等)。
NoSQL 数据库通常没有内置管理器,因此管理是在应用程序级别完成的。您可能会将它们视为只是一个存储系统。
对我来说,这是同一件事的两个词。
不过,诚然,我主要听到或读到来自 nosql 用户的术语。如果我们接受 nosql 存储作为定义,那么它就是一种面向列的存储——而不是面向行的存储。