具有单个表的数据库



我正在创建一个工具,它为某些标准刮Craigslist帖子。如果有新的帖子,它会发送一封电子邮件。该工具最终将使用cron定期运行。

起初,我考虑将帖子内容(链接、标题、内容)存储在数据库中。然后,对于该工具的每次调用,它将抓取它能找到的所有帖子,并根据数据库检查它是否确实是新的。

这意味着数据库只有一个表(posts)和四列(id、link、title、content)。对于这个应用程序来说,这是不是太过分了?对于单个表,没有关系,因此关系数据库的使用受到限制。平面文件会更好吗?

如果您只需要知道该帖子是否是新的,那么您可以将该帖子内容的散列值存储到文件中。重新扫描新帖子时,计算它们的哈希值,如果值不在文件中,则为新值。当你发送完邮件后,将该散列添加到文件中。

为了防止文件变得太大,您可以在值上加上日期,并在一定时间后丢弃它们。更优雅的方法是丢弃在最近一次运行中没有再次找到的所有散列值。

相关内容

最新更新