1.4K Star 7.6K Fork 1.9K

GVP狮子的魂 / ip2region

 / 详情

B-Tree 只能检索前34W数据怎么办?

已完成
创建于  
2018-05-11 20:31

IP地址超千万memory、binary、btree都不能检索到了,百万左右的数据btree只能检索到347991行,不知道是我编译环境的问题还是jar包的问题! :sob:

评论 (7)

youhun00 创建了任务

原始数据有多少行,最后生产的db文件有多大?这个问题需要更改下生成jar包,github也有几个人提到了这个问题,另外把属于相同地址的连续的ip段合并,这样会很大程度减少db文件大小,如果db文件过大会O(logn)级别的减少查询性能。

@狮子的魂 原始数据1千万+ 生成DB 17M左右,其实我觉得性能在减小也比去找API强!

@youhun00 生成数据前先合并相同地址的连续ip段,这样会小很多!
17M的db文件是有问题的,需要把生产的配置更改下,我找个时间把生成源码开源下!
我当初写ip2region就是为了免去调用不稳定的api

@狮子的魂 嗯,我知道是没合并的 但是就是要用这些数据 :cry: 感谢开源

@youhun00 合并不影响使用也不影响精度,这是一种必要的优化!两个ip段地域信息一样,合并成一个就少了一条记录,得到db文件就会小一些,你可以理解为减少冗余数据!

@狮子的魂 嗯,明白,但是大数据依然是存在这个问题的啊,希望您能修复一下。

用新的 xdb 即可

狮子的魂 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
5187 lionsoul 1578914315
C
1
https://gitee.com/lionsoul/ip2region.git
git@gitee.com:lionsoul/ip2region.git
lionsoul
ip2region
ip2region

搜索帮助