I'm looking to manage a large collection of recorded voicemail messages, which come along with machine generated transcripts and to which I have added my notes. I also have text messages and letters in odt format. I need to associate tags with these objects and then search on both the text and the tags.

In other words, I'm looking for something like a large "spreadsheet" in which I can insert mp3's/associated transcripts & notes, odt's and txt messages, associate tags with those objects, and then search. I'll also need to export subsets of that "spreadsheet" selected out via a search.

Am I looking for a database, and if so what kind? I'm looking at MongoDB right now, but still not clear if it can do what I'm looking for. "Documents" in MongoDB are just text strings.

  • Sounds like something that Evernote (and its Ubuntu equivalent NixNote) should be up to. Have you considered anything like that? – Jos Apr 11 '16 at 16:24
  • @Jos - thanks. I used to use Evernote and canned it due to the extensive bugs. Also, for this project I'm also not interested in something that's cloud based. This is just to be run on my machine. – Diagon Apr 11 '16 at 16:48
  • @Jos - after searching around, I found that if I were to approach the problem this way, I would probably use the note taker/task manager called "zim". (I've looked at most of these, and it's far and away the best.) It allows attachments, tags, and a reasonble search function, so it could work. The problem with that solution is that I've got enough data that I need to script it into the database, which would be impossible unless I go for a full blown database with a cli. So that's what I'm going to do (see my own answer, below). – Diagon Apr 12 '16 at 8:06

It seems I'm in an awkward situation in which I've got enough data with enough structure that it's too big for the standard spreadsheet, but it's barely big enough to warrant my learning database design. I've decided to plunge ahead anyway, since learning it'll no doubt come in handy at some point.

One thing I think I have cleared up is that databases only hold text data. They may link via a URI to some more complex objects, like videos or graphics, but their "records" (or so-called "documents" in the case of a "Document Store" database like MongoDB) are just glorified csv's. There is one exception in that some DB's allow for inserting images, but even then it slows things down and makes the database large and bulky, so better to keep them separate and link to them.

Finally, the database itself is separate from the client which interacts with the database. The interface could just be a shell/cli, but there are also many GUI's out there, like Robomongo for MongoDB, or DBeaver which is a "universal" client that can interact with many different kinds of DB. LibreOffice Base is itself a simple client which is packaged with a front end that offers the option to create an instance of a few different kinds of DB.

I got a lot more to learn, but I think I've at least got the tour guide map to get me going. If anyone's got anything to add, I'd certainly appreciate it!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.