Pergunta

I’m in the process of setting up a CKAN instance. I have to setup a postgres database for CKAN to be operated. Additionally I have to set up a dataStore too.

I found this question on stackoverflow but didn’t answer my question.

How to think in data stores instead of databases?

In general what’s the difference between a dataStore and a database?

Foi útil?

Solução

CKAN uses two PostgreSQL databases:

  1. CKAN's catalogue database, this is the first database that you're asked to configure when installing CKAN. This stores all the data for CKAN's data catalogue, e.g. the metadata associated with datasets and resources (titles, tags, etc.), the user accounts, the groups and organizations, etc. etc.

  2. CKAN's DataStore is an optional feature that enables a Data API and data previews for files uploaded to or linked to from CKAN. This is a second PostgresSQL database, data*store* is just the name the CKAN uses for this feature. (The DataStore in CKAN has nothing to do with the Google App Engine concept of data store that you linked to.)

CKAN also has a FileStore which, if enabled, is used to store files uploaded to CKAN. The FileStore isn't really a database, it's just a directory on disk that stores uploaded files.

Outras dicas

Arriving a little bit late...

I see a database as a special type of datastore. A datastore is, as the name indicates, a place where data is stored.

You can store data in a hard disk using a file storage system (e.g., ext4 in Linux) or in a database (e.g., PostgreSQL), in which the data are stored in files, but those files are managed by the database management system (access permissions, uniqueness of keys and etc.).

NoSQL databases usually don't have a builtin manager, so the management is done in the application level. You may see them as just a storage system.

To me it's two words for the same thing.

Though, admittedly, I mostly hear or read the term coming out of nosql users. If we accept nosql store as the definition, it's a column-oriented store -- as opposed to a row-oriented one.

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

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top