国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

postgresql 源碼結(jié)構(gòu)分析

這篇具有很好參考價(jià)值的文章主要介紹了postgresql 源碼結(jié)構(gòu)分析。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

 

  • 專欄內(nèi)容:postgresql內(nèi)核源碼分析
  • 個(gè)人主頁:我的主頁
  • 座右銘:天行健,君子以自強(qiáng)不息;地勢坤,君子以厚德載物.

目錄

前言

源碼下載

源碼結(jié)構(gòu)

核心代碼目錄

結(jié)尾


前言

本文對postgresql源碼目錄結(jié)構(gòu)進(jìn)行介紹,以及核心代碼目錄介紹,對pg內(nèi)核感興趣的朋友請關(guān)注本專欄內(nèi)容。


源碼下載

在下面官網(wǎng)可以下載源碼包

PostgreSQL: File Browser

也可以在github/gitee/gitcode上找postgres的源碼倉庫進(jìn)行克隆到本地,這樣就可以不斷更新到最新代碼修改。

github不是很穩(wěn)定,下面是csdn的gitcode的鏡像倉庫

mirrors / postgres / postgres · GitCode

源碼結(jié)構(gòu)

postgres源碼根目錄下結(jié)構(gòu)如下

[senllang@localhost postgres]$ ll

total 1180

-rw-r--r--.? 1 senllang develops??? 490 Feb? 9? 2021 aclocal.m4

drwxr-xr-x.? 2 senllang develops?? 4096 Feb? 9? 2021 config

-rw-r--r--.? 1 senllang develops 427787 Apr 21 19:29 config.log

-rwxr-xr-x.? 1 senllang develops? 39999 Apr 21 19:29 config.status

-rwxr-xr-x.? 1 senllang develops 568656 Feb? 9? 2021 configure

-rw-r--r--.? 1 senllang develops? 82388 Feb? 9? 2021 configure.in

drwxr-xr-x. 57 senllang develops?? 4096 Feb? 9? 2021 contrib

-rw-r--r--.? 1 senllang develops?? 1192 Feb? 9? 2021 COPYRIGHT

drwxr-xr-x.? 3 senllang develops???? 87 Feb? 9? 2021 doc

-rw-r--r--.? 1 senllang develops?? 4278 Apr 21 19:29 GNUmakefile

-rw-r--r--.? 1 senllang develops?? 4278 Feb? 9? 2021 GNUmakefile.in

-rw-r--r--.? 1 senllang develops??? 277 Feb? 9? 2021 HISTORY

-rw-r--r--.? 1 senllang develops?? 1665 Feb? 9? 2021 Makefile

-rw-r--r--.? 1 senllang develops?? 1213 Feb? 9? 2021 README

-rw-r--r--.? 1 senllang develops??? 721 Feb? 9? 2021 README.git

drwxr-xr-x. 16 senllang develops?? 4096 Apr 21 19:29 src

主要目錄說明

doc

????????文檔目錄,可以編譯出pdf,html格式的手刪文檔

contrib????????

插件源碼目錄,沒有包含在內(nèi)核代碼中,插件在使用時(shí)通過create extension進(jìn)行加載

src

postgres 數(shù)據(jù)庫的源碼目錄

核心代碼目錄

我們看下src下的目錄結(jié)構(gòu),它里面就是postgresql內(nèi)核的代碼了。

drwxr-xr-x. 28 senllang develops? 4096 Feb? 9? 2021 backend

drwxr-xr-x. 21 senllang develops? 4096 Feb? 9? 2021 bin

drwxr-xr-x.? 3 senllang develops? 4096 Feb? 9? 2021 common

-rw-r--r--.? 1 senllang develops?? 173 Feb? 9? 2021 DEVELOPERS

drwxr-xr-x.? 2 senllang develops? 4096 Feb? 9? 2021 fe_utils

drwxr-xr-x. 31 senllang develops? 4096 Apr 21 19:29 include

drwxr-xr-x.? 4 senllang develops??? 47 Feb? 9? 2021 interfaces

-rw-r--r--.? 1 senllang develops? 1842 Feb? 9? 2021 Makefile

-rw-r--r--.? 1 senllang develops 34174 Apr 21 19:29 Makefile.global

-rw-r--r--.? 1 senllang develops 34512 Feb? 9? 2021 Makefile.global.in

lrwxrwxrwx.? 1 senllang develops??? 31 Apr 21 19:29 Makefile.port -> ../src/makefiles/Makefile.linux

drwxr-xr-x.? 2 senllang develops? 4096 Feb? 9? 2021 makefiles

-rw-r--r--.? 1 senllang develops 15338 Feb? 9? 2021 Makefile.shlib

-rw-r--r--.? 1 senllang develops? 6392 Feb? 9? 2021 nls-global.mk

drwxr-xr-x.? 6 senllang develops??? 78 Feb? 9? 2021 pl

drwxr-xr-x.? 2 senllang develops? 4096 Feb? 9? 2021 port

drwxr-xr-x.? 2 senllang develops?? 142 Feb? 9? 2021 template

drwxr-xr-x. 16 senllang develops? 4096 Feb? 9? 2021 test

drwxr-xr-x.? 4 senllang develops? 4096 Feb? 9? 2021 timezone

drwxr-xr-x. 10 senllang develops? 4096 Feb? 9? 2021 tools

drwxr-xr-x.? 2 senllang develops? 4096 Feb? 9? 2021 tutorial

主要目錄介紹:

backend

數(shù)據(jù)庫服務(wù)端源碼

bin

客戶端和服務(wù)端工具代碼

common

通用算法源碼,如md5,sha2,json,base64等等

fe_utils

客戶端常用結(jié)構(gòu)和處理

include

頭文件目錄

interfaces

提供的libpq,ecpg等開發(fā)接口庫

pl

過程語言接口和語法處理,如plpgsql,plperl,plpython等開發(fā)接口

port

libpgport公共庫

template

提供不同編譯平臺下的編譯參數(shù)

test

測試程序,通過make check開始測試

timezone

時(shí)區(qū)相關(guān)公共接口

tools

對工具使用的使用建議或配置,如win下編譯,ci,editor,還有valgrind等等

tutorial

使用postgresql的基本SQL和步驟例程

結(jié)尾,謝謝瀏覽!


結(jié)尾

作者郵箱:study@senllang.onaliyun.com
如有錯(cuò)誤或者疏漏歡迎指出,互相學(xué)習(xí)。大家有什么想要了解的,歡迎留言或發(fā)郵件,您的關(guān)注是我繼續(xù)分享的最大動(dòng)力。

注:未經(jīng)同意,不得轉(zhuǎn)載!文章來源地址http://www.zghlxwxcb.cn/news/detail-423215.html

到了這里,關(guān)于postgresql 源碼結(jié)構(gòu)分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • PG-DBA培訓(xùn)07:PostgreSQL體系結(jié)構(gòu)深入與源碼解析

    PostgreSQL體系結(jié)構(gòu)深入解析,PostgreSQL數(shù)據(jù)庫源碼解析,initdb源碼解析 PostgreSQL數(shù)據(jù)庫體系架構(gòu) PostgreSQL數(shù)據(jù)庫存儲(chǔ)結(jié)構(gòu) PostgreSQL數(shù)據(jù)庫進(jìn)程結(jié)構(gòu) PostgreSQL數(shù)據(jù)庫內(nèi)存結(jié)構(gòu) PostgreSQL數(shù)據(jù)庫源碼解析 使用gdb跟蹤分析PostgreSQL源碼 PostgreSQL源碼解析之initdb初始化過程 PostgreSQL源碼解析之PG啟動(dòng)

    2024年02月15日
    瀏覽(25)
  • postgresql 內(nèi)核源碼分析 btree索引的增刪查代碼基本原理流程分析,索引膨脹的原因在這里

    ? 專欄內(nèi)容 : postgresql內(nèi)核源碼分析 手寫數(shù)據(jù)庫toadb 并發(fā)編程 ? 開源貢獻(xiàn) : toadb開源庫 個(gè)人主頁 :我的主頁 管理社區(qū) :開源數(shù)據(jù)庫 座右銘:天行健,君子以自強(qiáng)不息;地勢坤,君子以厚德載物. 在postgresql最常用的索引就是btree,它支持范圍和等值查詢。 本文主要介紹

    2024年02月11日
    瀏覽(24)
  • postgresql 內(nèi)核源碼分析 btree索引插入分析,索引頁面分裂流程,多舉措進(jìn)行并發(fā)優(yōu)化,對異常進(jìn)行保護(hù)處理

    postgresql 內(nèi)核源碼分析 btree索引插入分析,索引頁面分裂流程,多舉措進(jìn)行并發(fā)優(yōu)化,對異常進(jìn)行保護(hù)處理

    ? 專欄內(nèi)容 : postgresql內(nèi)核源碼分析 手寫數(shù)據(jù)庫toadb 并發(fā)編程 ? 開源貢獻(xiàn) : toadb開源庫 個(gè)人主頁 :我的主頁 管理社區(qū) :開源數(shù)據(jù)庫 座右銘:天行健,君子以自強(qiáng)不息;地勢坤,君子以厚德載物. B樹索引在PostgreSQL中得到了廣泛應(yīng)用,它是一種自平衡樹數(shù)據(jù)結(jié)構(gòu),可以維

    2024年02月08日
    瀏覽(34)
  • Postgresql源碼(110)分析dsm動(dòng)態(tài)共享內(nèi)存分配與共享內(nèi)存mq實(shí)例(dsm/toc接口備忘錄)

    相關(guān) 《Postgresql源碼(90)共享內(nèi)存申請CreateSharedMemoryAndSemaphores》 《Linux內(nèi)存映射函數(shù)mmap與匿名內(nèi)存塊》 《Linux共享內(nèi)存與子進(jìn)程繼承》 用dsm框架的流程 評估共享內(nèi)存大?。憾啻斡胹hm_toc_estimate_chunk、shm_toc_estimate_keys向estimate中增加數(shù)據(jù)結(jié)構(gòu),最后用shm_toc_estimate得出剛才增加

    2024年02月14日
    瀏覽(28)
  • 【三十天精通 Vue 3】 專欄內(nèi)容介紹

    【三十天精通 Vue 3】 專欄內(nèi)容介紹

    全網(wǎng)最火Vue3專欄 歡迎來到全網(wǎng)最火的 Vue 3 專欄,一場深度探索 Vue 3 前端框架的盛宴正式開啟!無論你是 Vue 新手還是經(jīng)驗(yàn)豐富的開發(fā)者,這里都將成為你深入學(xué)習(xí)和掌握 Vue 3 的不二之選。我們帶你踏上一段令人激動(dòng)的學(xué)習(xí)之旅,從入門到高級,逐步揭開 Vue 3 的神秘面紗。

    2024年02月09日
    瀏覽(22)
  • postgresql 內(nèi)核源碼分析 表鎖relation lock的使用,session lock會(huì)話鎖的應(yīng)用場景,操作表不再困難

    postgresql 內(nèi)核源碼分析 表鎖relation lock的使用,session lock會(huì)話鎖的應(yīng)用場景,操作表不再困難

    ? 專欄內(nèi)容 : postgresql內(nèi)核源碼分析 手寫數(shù)據(jù)庫toadb 并發(fā)編程 個(gè)人主頁 :我的主頁 座右銘:天行健,君子以自強(qiáng)不息;地勢坤,君子以厚德載物. ================================================================== 當(dāng)表打開,或者操作表時(shí),都需要對表relation 進(jìn)行加鎖,表鎖定義了8種級互

    2024年02月16日
    瀏覽(24)
  • 源碼分析——ConcurrentHashMap源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    源碼分析——ConcurrentHashMap源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    1. 存儲(chǔ)結(jié)構(gòu) Java 7 中 ConcurrentHashMap 的存儲(chǔ)結(jié)構(gòu)如上圖,ConcurrnetHashMap 由很多個(gè) Segment 組合,而每一個(gè) Segment 是一個(gè)類似于 HashMap 的結(jié)構(gòu),所以每一個(gè) HashMap 的內(nèi)部可以進(jìn)行擴(kuò)容。但是 Segment 的個(gè)數(shù)一旦 初始化就不能改變 ,默認(rèn) Segment 的個(gè)數(shù)是 16 個(gè),你也可以認(rèn)為 ConcurrentH

    2024年02月13日
    瀏覽(24)
  • Vector-CAPL 自動(dòng)化探索 專欄內(nèi)容介紹

    Vector-CAPL 自動(dòng)化探索 專欄內(nèi)容介紹

    ?? 歡迎來到 “Vector-CAPL 自動(dòng)化探索” 專欄,我是陳書予,將帶您踏上一段充滿創(chuàng)新的旅程,深入探討如何利用Vector-CAPL(vTESTStudio)實(shí)現(xiàn)自動(dòng)化測試的無限可能。 vTESTstudio測試用例概述: 狀態(tài)圖編輯器: 測試表編輯器: CAPL編輯器: 追溯矩陣效果圖: ?? 專欄亮點(diǎn): 在這

    2024年02月13日
    瀏覽(26)
  • 【SA8295P 源碼分析】14 - Passthrough配置文件 /mnt/vm/images/linux-la.config 內(nèi)容分析

    【源碼分析】 因?yàn)橐恍┰?,本文需要移除?對于已經(jīng)購買的兄弟,不用擔(dān)心,不是跑路, 我會(huì)繼續(xù)持續(xù)提供技術(shù)支持, 有什么模塊想學(xué)習(xí)的,或者有什么問題有疑問的, 請私聊我,我們 +VX 溝通技術(shù)問題,一起學(xué)習(xí),一起進(jìn)步 接下來,我一一私聊已經(jīng)購買的兄弟添加V

    2024年02月12日
    瀏覽(17)
  • 源碼分析——HashMap(JDK1.8)源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    源碼分析——HashMap(JDK1.8)源碼+底層數(shù)據(jù)結(jié)構(gòu)分析

    HashMap 主要用來存放鍵值對,它基于哈希表的Map接口實(shí)現(xiàn),是常用的Java集合之一。 JDK1.8 之前 HashMap 由 數(shù)組+鏈表 組成的,數(shù)組是 HashMap 的主體,鏈表則是主要為了解決哈希沖突而存在的(“拉鏈法”解決沖突).JDK1.8 以后在解決哈希沖突時(shí)有了較大的變化,當(dāng)鏈表長度大于閾

    2024年02月13日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包