巧用方式提升查询效率

时间:2021-12-30 14:27:01

背景:我们项目有一部分自己的app,另外接入了百度手机助手接口.我们运营需要定时和百度数据对比,因此我们需要记录app的下载地址

需求:百度app下载,回调地址是一个非常长的下载链接(有几百个字符吧),其中,有个查找要根据url来查找,这样的话效率非常低,数据量大了查询特别慢.

通常我们提高这种查询,最快的方式是使用key-value数据库但是为了一个功能引入一个key-value数据库,似乎不明智. 下策.我提供了一种更为便捷的方式:对每个下载链接进行md5, so easy! 当然要注意一点,用md5查询时候可能不是唯一的,科学实验表明md5是有碰撞的,也就是说A的md5值和B的md5值可能相同,概率极低,但是也要预防,
另外你甚至可以直接设计出hash,把他变成一个无符号int类型,进一步提升效率.hash思想在效率提升上有极大用处.