Baloo: Difference between revisions

From KDE Community Wiki
m (w)
(some refinement)
Line 11: Line 11:
Given these shortcomings and the many lessons learned over the last years the Nepomuk developers decided to drop RDF and rechristen the project under the name of Baloo. You can find more [http://community.kde.org/Baloo/Architecture technical background and info on its architecture here].
Given these shortcomings and the many lessons learned over the last years the Nepomuk developers decided to drop RDF and rechristen the project under the name of Baloo. You can find more [http://community.kde.org/Baloo/Architecture technical background and info on its architecture here].


= Migrating from Nepomuk to Baloo =
= Migrating data from Nepomuk to Baloo =


Nepomuk was used to store the tags, ratings, and user comments in Files. This data can be migrated by running the <tt>nepomukbaloomigrator</tt>. Nepomuk was also used to store indexed information about Files, Emails and Contacts. Baloo shall reindex this information directly from the source.
Nepomuk was used to store the tags, ratings, and user comments in Files. This data can be migrated by running the <tt>nepomukbaloomigrator</tt>. There is no continuous synchronization between Baloo and Nepomuk. Nepomuk was also used to store indexed information about Files, Emails and Contacts. Baloo shall reindex this information directly from the source.


= Running Nepomuk and Baloo together =
= Running Nepomuk and Baloo together =
Line 20: Line 20:


Tags, ratings and comments will be not be synchronized between Nepomuk and Baloo after the initial migration.
Tags, ratings and comments will be not be synchronized between Nepomuk and Baloo after the initial migration.
Applications relying on Nepomuk will have to migrate to Baloo. Their progress can be tracked over here - http://community.kde.org/Baloo/NepomukPort


= Baloo, Nepomuk, KDE Platform 4 and KF5 =
= Baloo, Nepomuk, KDE Platform 4 and KF5 =
Line 27: Line 25:
The Nepomuk project will not be ported to Qt5 and KF5. The Baloo project will be ported to KF5. This ported version of Baloo will continue to use the same database as the KDE Platform 4 version and will be completely compatible.
The Nepomuk project will not be ported to Qt5 and KF5. The Baloo project will be ported to KF5. This ported version of Baloo will continue to use the same database as the KDE Platform 4 version and will be completely compatible.


= Porting your Application =
= Porting your Application to use Baloo =
 
Baloo is not a drop in replacement for Nepomuk. Applications relying on Nepomuk will have to port to Baloo. Their progress can be tracked on http://community.kde.org/Baloo/NepomukPort


Baloo is not a drop in replacement for Nepomuk. The majority of Nepomuk applications just rely on tags, ratings and comments. Baloo offers a simple asynchronous API for modifying that file metadata. This metadata is now stored with the extended attributes of the file instead of storing it in a separate database.
The majority of Nepomuk applications just rely on its tags, ratings and comments features. Baloo offers a simple asynchronous API for modifying that file metadata. This metadata is now stored with the extended attributes of the file instead of storing it in a separate database.


Baloo also offers a search API which is similar to that of Nepomuk in some ways.
Baloo also offers a search API which is similar to that of Nepomuk in some ways.

Revision as of 23:17, 1 February 2014

Baloo is the next generation of the Nepomuk project. It's responsible for handling user metadata such as tags, rating and comments. It also handles indexing and searching for files, emails, contacts, and so on. Baloo aims to be lighter on resources and more reliable than its parent project.

Why change Nepomuk?

The Nepomuk project started as a research project in the European Union. The goal was to explore the use of relations between data for finding what you are looking for. It was build completely on top of RDF. While RDF is a great from a theoretical point of view, it is not the simplest tool to understand or optimize. The databases which currently exist for RDF are not suited for desktop use.

The Nepomuk developers have tried very hard over the last years to optimize the indexing and searching infrastructure, and they have now come to the conclusion that Nepomuk cannot be further optimized without migrating away from RDF.

RDF also heavily relied on ontologies. These ontologies are a way to describe how the data should be stored and represented. They used the ontologies from the original EU research project - Shared Desktop Ontologies. These ontologies were not designed in a time when it was not very clear how they would work and have sub-optimal performance and ease of use. They are quite vague in certain areas and often duplicate information. This leads to scenarios where it takes forever to figure out how the data should be stored. Additionally, since all the data needs to be stored in RDF, one cannot optimize for one specific data type.

Given these shortcomings and the many lessons learned over the last years the Nepomuk developers decided to drop RDF and rechristen the project under the name of Baloo. You can find more technical background and info on its architecture here.

Migrating data from Nepomuk to Baloo

Nepomuk was used to store the tags, ratings, and user comments in Files. This data can be migrated by running the nepomukbaloomigrator. There is no continuous synchronization between Baloo and Nepomuk. Nepomuk was also used to store indexed information about Files, Emails and Contacts. Baloo shall reindex this information directly from the source.

Running Nepomuk and Baloo together

Nepomuk and Baloo can both coexist without issues. However, it may not be the best idea to run both of them on the same system as they both would then be indexing your files, emails and other data and taxing the system heavily, populating their databases.

Tags, ratings and comments will be not be synchronized between Nepomuk and Baloo after the initial migration.

Baloo, Nepomuk, KDE Platform 4 and KF5

The Nepomuk project will not be ported to Qt5 and KF5. The Baloo project will be ported to KF5. This ported version of Baloo will continue to use the same database as the KDE Platform 4 version and will be completely compatible.

Porting your Application to use Baloo

Baloo is not a drop in replacement for Nepomuk. Applications relying on Nepomuk will have to port to Baloo. Their progress can be tracked on http://community.kde.org/Baloo/NepomukPort

The majority of Nepomuk applications just rely on its tags, ratings and comments features. Baloo offers a simple asynchronous API for modifying that file metadata. This metadata is now stored with the extended attributes of the file instead of storing it in a separate database.

Baloo also offers a search API which is similar to that of Nepomuk in some ways.