Re: Actually in many cases
Well in this case there is just a single table with 3 columns, number/prefix, start date and operator. There is only one "index" that would make sense, and that's the prefix. To query that database, there already is a highly optimized pseudo in memory database (it uses mmap on a prepared read-only file). That's actually several hundred times faster than MySQL. That's actually the only part of the whole process which is not in plain text.
The rest of the operation, essentially adding updates to that dataset, is much quicker to do with plain text. Even our first prototype, done by an inexperienced programmer can do the task in about half an hour.
Again if you are doing random queries, or if you have multiple interconnected tables, a relational database system is right for you. If you are just storing rows and rows of numbers (e.g. temperatures, statistical data, etc...) it might be wise looking into something else. It's always better to use the right solution, not the only one you can think of.