腾讯云实现时序搜索引擎:日志检索性能提升 40 倍
2022年8月26日 - 网易
二分搜索带来的磁盘访问离散化问题在原系统实现中,对于有序时间戳的检索是通过在有序的列存中的二分查找来定位。简单的二分查找对内存数据非常高效,但是对磁盘数据却很容易造成散点访问;这个问题的解决方案是通过引入二级索引来减少对磁盘的访问(磁盘访问从数十次降低为3次)。单向迭代器导致逆序访问需要遍历所...
详情
Redis、Kafka 和 Pulsar 消息队列对比
2021年6月12日 - 网易
当我们要找offset为x的消息在哪个segment时,只需要通过文件名做一次二分查找就行了。比如offset为2879的消息(第2880条消息),显然就在0.log这个segment文件里。定位到segment文件之后,另一个问题就是要找到该消息在文件中的位置,也就是偏移量。如果从头开始一条条地找,这个耗时肯定是无法接受的!kafka的解决办法...
详情
315道Python面试题,欢迎挑战
2020年3月31日 - 网易
49、请用代码简答实现stack。50、常用字符串格式化哪几种?51、简述生成器、迭代器、可迭代对象以及应用场景?52、用Python实现一个二分查找的函数。53、谈谈你对闭包的理解?54、os和sys模块的作用?55、如何生成一个随机数?56、如何使用python删除一个文件?57、谈谈你对面向对象的理解?58、Python...
详情
阿里P8架构师谈:MySQL数据库的索引原理、与慢SQL优化的5大原则
2018年10月19日 - 网易
在内存中用二分查找确定29在17和35之间,锁定磁盘块1的P2指针,内存时间因为非常短(相比磁盘的IO)可以忽略不计,通过磁盘块1的P2指针的磁盘地址把磁盘块3由磁盘加载到内存,发生第二次IO,29在26和30之间,锁定磁盘块3的P2指针,通过指针加载磁盘块8到内存,发生第三次IO,同时内存中做二分查找找到29,结束查询,总计三...
详情