您好我正在搜索有关我的Webcrawler项目的数据库(mysql)的建议(在java中)。
我正在Twitter上收集有关不同频道(约2000)的信息,有些有很多推文,有些则少。总之,我只需要存储每个推文的频道信息(名称,ID)和一些基本信息(id,时间,喜欢,转推)。
我的第一个想法是拥有一个Table"频道"每个频道都有一行,并且每行都有一个BLOB字段"推文"包含所有推文(从10到10000)。 现在这个版本在查询单个推文或特定时间跨度时有点不灵活。 但是当所有推文都有一个单独的表时,我害怕性能问题,我。即在大约1000000条推文的列表中搜索200个元素..
我如何解决这种情况?我没有能力测试两种性能情况,这就是为什么我要问:/
感谢您阅读!
答案 0 :(得分:1)
两张桌子
频道:id | channelId |名称
推文:id | tweetId | channelId |时间|喜欢|转推
id是数据库中的内部数据库ID(不是推文或通道ID)。 tweets表中的channelId指的是它所属频道的内部数据库ID(外键)
答案 1 :(得分:0)
过早优化是万恶之源。
单独使用表格。