Re-implementing the CKAN API for performance

CKAN, an open source data portal platform, provides an API for fetching everything from datasets to individual records. Here we look at how CKAN's architecture allows developers to transparently re-implement the datastore API, and how this was used to improve performance by switching all searches to using a Solr backend.

Read more...

Implementing a CKAN permission plugin

CKAN implements a permission system based on roles, permissions and authorization functions which can be overridden by plugins. I used to this to implement the ckanext-userdatasets plugin. The aim of this plugin is to allow certain types of users to create datasets in an organization without having the permission to edit or delete other users' datasets. Here I describe how I went about implementing this plugin.

Read more...