跳表

请问大家,为什么基于跳表的数据库写操作要比读操作快呢

全部评论
我的理解可能是因为 写入刚开始是从0个节点开始写的,耗时从小到大,读的话一开始就是logn复杂度,耗时始终保持最大。
2 回复 分享
发布于 2023-10-18 12:09 上海
写是append,读是二分,而且也不一定写比读快,看场景
2 回复 分享
发布于 2023-10-08 18:48 北京
读是不是要合并多个节点的数
点赞 回复 分享
发布于 2023-10-09 16:25 江苏
只可能你插入的是排序数据,O1复杂度
点赞 回复 分享
发布于 2023-10-08 16:38 湖南
基于跳表的数据库写操作比读操作快的原因主要有以下几点: 1. 数据结构特性:跳表是一种动态的数据结构,可以方便地进行插入、删除和更新操作。在写操作中,只需要修改相应节点的指针即可完成操作,而不需要像读操作那样需要进行查找和遍历操作。 2. 并发写操作:基于跳表的数据库在支持并发写操作时,可以通过锁机制或者乐观并发控制等方式,对写操作进行并发处理,提高写操作的并发能力,从而加快写操作的速度。 3. 顺序写入:在很多情况下,基于跳表的数据库写操作是基于顺序写入的,即将新的数据追加到跳表的末尾。这样的写入方式可以减少随机写入的开销,并且跳表的顺序结构有利于提高写操作的效率。 4. 磁盘写入优化:基于跳表的数据库在磁盘写入时,可以通过批量写入或者异步写入等方式进行优化,将多个写操作合并成一个较大的写操作,减少磁盘IO的次数,从而提高写操作的效率。 总之,基于跳表的数据库写操作比读操作快,主要得益于跳表数据结构的特性、并发写操作的支持、顺序写入的方式以及磁盘写入的优化等因素的综合作用。
点赞 回复 分享
发布于 2023-10-08 16:37 北京

相关推荐

01-15 13:45
门头沟学院 Java
牛客92772631...:boss招聘挂岗位是要花钱的,花了钱不挂白不挂,别那么焦虑,但是也要做好跳槽的准备
找实习记录
点赞 评论 收藏
分享
01-05 09:14
同济大学 Java
心碎一号线:我要是9✌🏻我就选保研,保研了大四再找实习,实习之后,如果觉得自己不适合互联网工作模式,还能有其他选择,如果实习后决定了走互联网,也能提升学历提高竞争力
点赞 评论 收藏
分享
评论
3
7
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务