首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Postgresql源码(136)syscacherelcache 缓存及失效机制

    相关 《Postgresql源码(45)SysCache内存结构与搜索流程分析》 0 总结速查 syscache:缓存系统表的行。通用数据结构,可以缓存一切数据(hash + dlist)。...syscache使用CatCache数组,定义了一些常用查询的结果集缓存,数据放到CatCache里面的dlist中存放。...syscache查询接口 SearchSysCache系列接口时,key须按照cacheinfo的定义来查询 pg_class支持where relname = ?...2 系统表缓存 系统表是需要被高频访问的,所以PG为系统表设计了两种进程级缓存: syscache:缓存系统表tuple → 缓存行数据。...3 syscache(catalog cache) syscache 以一个数组的形式存放在内存中,每一个数组位置存放一个CatCache,每一个CatCache直观上可以看做一个固定SQL的结果集,具体的数据结构参考这里

    22710

    PostgreSQL可拔插存储引擎表定义机制

    2、如果创建表时没有指定使用表访问方法,那么会使用默认的表访问方法,即heap 3、调用get_table_am_oid根据表访问方法名获取对应的oid,即pg_am的oid字段: 1)先从SysCache...pg_am表 4、调用函数heap_create_with_catalog进行初始化表访问方法、创建磁盘物理文件、向pg_class系统表插入一条元数据tuple: 5、需要先判断创建的表是否已存在:从SysCache...初始化表访问方法 2、RELKIND_SEQUENCE、系统表的函数handler ID为heap的:relation->rd_amhandler = HEAP_TABLE_AM_HANDLER_OID 3、从SysCache...或者pg_am顺序扫描,得到表访问方法的handlerID 4、fmgr_builtins[]数组为内置函数元数据,若是内置则&fmgr_builtins[amhandler]得到finfo信息 5、SysCache

    1.4K10

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券