Final Thoughts
We’ve explored many different third-party storage solutions in this chapter and looked at one home-brew implementation done right. Many different tools are available to meet many different types of needs. We’ve also covered the primary concerns when choosing a tool, and provided a basic outline for how to build your own storage driver interface. The concepts covered in this chapter, applied well, will allow you to create a flexible storage facility capable of handling millions of records. Implementing an efficient storage mechanism is one of the most critical steps in creating an efficient spam filter. If the data can’t be accessed with enough reliability, the spam filter will become unreliable. Locking, recovery, and concurrency are all important aspects of creating a reliable storage implementation. Speed and performance are both important to the practical usefulness of it.