Return to Digital Photography Articles
Keywords within Database or Images?
Most photo catalog programs rely on a centralized database that stores the links between each individual image and the categories within which it has been assigned. This offers the benefit of fast searching on keywords and easy maintenance. A completely different approach is one that relies on each individual image containing a list of the assigned categories, with no need for a centralized database.
Comparison of Methodologies
| Location of Tag Data | |
|---|---|
| Database-based | Image-based |
| Within central database | Stored within each image |
| Open architecture Defines ease of moving from one catalog program to another |
|
| Database-based | Image-based |
| No. Database usually proprietary | Yes. Tags are easily extracted. |
| Speed of locating photos within a category | |
| Database-based | Image-based |
| Fast. The database can be queried for all entries that contain that tag. Then, the paths to each matching photo can be recalled. | Slow. The program must walk through all directories to locate each image, then process the image-based tags and check for match. Then, the next file is searched. Note that it is FAR slower to walk through seperate files than it is to walk through multiple entries within a single database file. |
| Ease of renaming a category | |
| Database-based | Image-based |
Simple. All databases contain a lookup table that matches a numerical code to a particular category name. Each entry in the image database then contains a list of the codes corresponding to the categories that the photo is assigned to. Thus, the name of a particular keyword or category only appears once in your entire system -- the category lookup table. Show example of category lookup table and photos with lookup indices For example, let's assume that 30 images in the database have been assigned to the category UncleBob. One day you realize that UncleBob is actually UncleRob and he hates being called Bob. So, you decide to update your database to reflect his correct name. All you need to do is simply select the category and rename it. Behind the scenes, all the computer has to do is find the entry in the category lookup table and change code 132 from UncleBob to UncleRob. Now, whenever you click on one of his photos, the computer looks up code 132 in the lookup table and then displays UncleRob. |
Very difficult. As the category name itself is
stored with each file, there is no centralized means of making updates.
Taking the prior example, one would have to find every file that
has been tagged with UncleBob (which
in itself involves opening up all files in all folders). Then, if
it is a match, it rewrites the Keywords
field of the image file with UncleRob
Doesn't work for offline photos! Will get out of sync! |

Reader's Comments:
Please leave your comments or suggestions below!