SQL Server 2014内存优化表的使用场景
最近一个朋友找到走起君,咨询走起君 内存优化表 如何做高可用的问题 大家知道, 内存优化表 作为In-Memory OLTP功能是从SQL Server 2014开始引入,用来对抗Oracle 12C的In-Memory OLTP选件 不过SQL Server的In-Memory OLTP功能是完全内置的功能,不像Oracle需要额外付费才能获得 由于是比较新的技术,可能大家对内存优化表还是比较陌生,网上也鲜有内存优化表使用场景的文章 朋友公司做的业务是跟 蜂鸟配送 类似的配送业务,整个配送系统平台每天订单量超过30W 坐标问题 系统中某一个部分需要保存跑男的坐标 坐标需要保存到redis和数据库,一旦坐标更新也需要更新redis中的数据 刚开始朋友用传统表来保存坐标数据,但是很快遇到问题,传统表在更新的速度跟不上 后来改用内存优化表,使用了之后 刚开始上传坐标的接口,延迟很大,用了内存表,100毫秒以内,搞定 这些坐标是需要持久化的,而内存优化表是完全支持ACID的,所以也不需要担心数据丢失的问题 内存优化表更新速度快的另一个原因:无锁机制, 并发(如闩锁争用或阻塞)影响的应用程序迁移到内存中 OLTP 时,其性能会显著提高。 大家知道,内存优化表需要有一个非聚集哈希主键索引,大概的表结构是 每个跑男占用一行记录 对应到redis里面大家应该都知道怎麽存储了吧