内存数据库设计要点总结
因为新型存储器件的飞速发展,DRAM内存器件大小越来越大,导致内存数据库(其实还有内存文件系统)需求越来越强烈,原始基于硬盘为主存储结构的数据库设计因此会有哪些变化呢? 传统硬盘数据库设计特点 首先总结下传统硬盘数据库设计特点为: 使用非易失硬盘作为主要存储,使用易失内存做缓存池(涉及内存与磁盘上以“页”为单位的数据同步) 页为单位的索引数据组织(页号、slot号、header、tuple、blo …
因为新型存储器件的飞速发展,DRAM内存器件大小越来越大,导致内存数据库(其实还有内存文件系统)需求越来越强烈,原始基于硬盘为主存储结构的数据库设计因此会有哪些变化呢? 传统硬盘数据库设计特点 首先总结下传统硬盘数据库设计特点为: 使用非易失硬盘作为主要存储,使用易失内存做缓存池(涉及内存与磁盘上以“页”为单位的数据同步) 页为单位的索引数据组织(页号、slot号、header、tuple、blo …
CAS原理 CAS通过调用JNI的代码实现的。JNI:Java Native Interface为JAVA本地调用,允许java调用其他语言。 而compareAndSwapInt就是借助C来调用CPU底层指令实现的。 下面从分析比较常用的CPU(intel x86)来解释CAS的实现原理。 下面是sun.misc.Unsafe类的compareAndSwapInt()方法的源代码: public …