導航:首頁 > 物理學科 > 如何理解物理存儲結構

如何理解物理存儲結構

發布時間:2023-08-17 15:24:42

㈠ 請問硬碟的物理存儲結構是怎樣的磁軌\柱面\扇區是什麼概念

硬碟的物理結構
1、磁頭
硬碟內部結構磁頭是硬碟中最昂貴的部件,也是硬碟技術中最重要和最關鍵的一環。傳統的磁頭是讀寫合一的電磁感應式磁頭,但是,硬碟的讀、寫卻是兩種截然不同的操作,為此,這種二合一磁頭在設計時必須要同時兼顧到讀/寫兩種特性,從而造成了硬碟設計上的局限。而MR磁頭(Magnetoresistive heads),即磁阻磁頭,採用的是分離式的磁頭結構:寫入磁頭仍採用傳統的磁感應磁頭(MR磁頭不能進行寫操作),讀取磁頭則採用新型的MR磁頭,即所謂的感應寫、磁阻讀。這樣,在設計時就可以針對兩者的不同特性分別進行優化,以得到最好的讀/寫性能。另外,MR磁頭是通過阻值變化而不是電流變化去感應信號幅度,因而對信號變化相當敏感,讀取數據的准確性也相應提高。而且由於讀取的信號幅度與磁軌寬度無關,故磁軌可以做得很窄,從而提高了碟片密度,達到200MB/英寸2,而使用傳統的磁頭只能達到20MB/英寸2,這也是MR磁頭被廣泛應用的最主要原因。目前,MR磁頭已得到廣泛應用,而採用多層結構和磁阻效應更好的材料製作的GMR磁頭(Giant Magnetoresistive heads)也逐漸普及。
2、磁軌
當磁碟旋轉時,磁頭若保持在一個位置上,則每個磁頭都會在磁碟表面劃出一個圓形軌跡,這些圓形軌跡就叫做磁軌。這些磁軌用肉眼是根本看不到的,因為它們僅是盤面上以特殊方式磁化了的一些磁化區,磁碟上的信息便是沿著這樣的軌道存放的。相鄰磁軌之間並不是緊挨著的,這是因為磁化單元相隔太近時磁性會相互產生影響,同時也為磁頭的讀寫帶來困難。一張1.44MB的3.5英寸軟盤,一面有80個磁軌,而硬碟上的磁軌密度則遠遠大於此值,通常一面有成千上萬個磁軌。
3、扇區
磁碟上的每個磁軌被等分為若干個弧段,這些弧段便是磁碟的扇區,每個扇區可以存放512個位元組的信息,磁碟驅動器在向磁碟讀取和寫入數據時,要以扇區為單位。1.44MB3.5英寸的軟盤,每個磁軌分為18個扇區。
4、柱面
硬碟通常由重疊的一組碟片構成,每個盤面都被劃分為數目相等的磁軌,並從外緣的「0」開始編號,具有相同編號的磁軌形成一個圓柱,稱之為磁碟的柱面。磁碟的柱面數與一個盤面上的磁軌數是相等的。由於每個盤面都有自己的磁頭,因此,盤面數等於總的磁頭數。所謂硬碟的CHS,即Cylinder(柱面)、Head(磁頭)、Sector(扇區),只要知道了硬碟的CHS的數目,即可確定硬碟的容量,硬碟的容量=柱面數*磁頭數*扇區數*512B。

㈡ 什麼叫數據的物理結構和邏輯結構

物理結構,就是在計算機內存中的存儲關系。
比如數組,在計算機上的存儲是一段連續的內存塊。鏈式存儲,是在計算機中不連續的內存使用間接尋找方式連接的,是物理內存的表現。

邏輯結構是指數據的邏輯關系,比如二叉樹,我們知道內存是不會分叉的。那麼二叉是什麼哪。是我們對數據的邏輯關系。物理上就是個指針(間接定址)

㈢ 文件的物理結構有哪3種,分別具備什麼優缺點

一、順序結構

優點:

1、支持順序存取和隨機存取。

2、順序存取速度快。

3、所需的磁碟尋道次數和尋道時間最少。

缺點:

1、需要為每個文件預留若干物理塊以滿足文件增長的部分需要。

2、不利於文件插入和刪除。

二、鏈式結構

優點:

1、提高了磁碟空間利用率,不需要為每個文件預留物理塊。

2、有利於文件插入和刪除。

3、有利於文件動態擴充。

缺點:

1、存取速度慢,不適於隨機存取。

2、當物理塊間的連接指針出錯時,數據丟失。

3、更多的尋道次數和尋道時間。

4、鏈接指針佔用一定的空間,降低了空間利用率。

三、索引結構

優點:

1、不需要為每個文件預留物理塊。

2、既能順序存取,又能隨機存取。

3、滿足了文件動態增長、插入刪除的要求。

缺點:

1、較多的尋道次數和尋道時間。

2、索引表本身帶來了系統開銷。如:內外存空間,存取時間等。

拓展資料:

文件存取方法:

順序存取:順序存取是按照文件的邏輯地址順序存取。

固定長記錄的順序存取是十分簡單的。讀操作總是讀出上一次讀出的文件的下一個記錄,同時,自動讓文件記錄讀指針推進,以指向下一次要讀出的記錄位置。如果文件是可讀可寫的。再設置一個文件記錄指針,它總指向下一次要寫入記錄的存放位置,執行寫操作時,將一個記錄寫到文件 末端。允許對這種文件進行前跳或後退N(整數)個記錄的操作。順序存取主要用於磁帶文件,但也適用於磁碟上的順序文件。

可變長記錄的順序文件,每個記錄的長度信息存放於記錄前面一個單元中,它的存取操作分兩步進行。讀出時,根據讀指針值先讀出存放記錄長度的單元 。然後,得到當前記錄長後再把當前記錄一起寫到指針指向的記錄位置,同時,調整寫指針值 。

由於順序文件是順序存取的,可採用成組和分解操作來加速文件的輸入輸出。

直接存取(隨機存取法):

很多應用場合要求以任意次序直接讀寫某個記錄。例如,航空訂票系統,把特定航班的所有信息用航班號作標識,存放在某物理塊中,用戶預訂某航班時,需要直接將該航班的信息取出。直接存取方法便適合於這類應用,它通常用於磁碟文件。

為了實現直接存取,一個文件可以看作由順序編號的物理塊組成的,這些塊常常劃成等長,作為定位和存取的一個最小單位,如一塊為1024位元組、4096位元組,視系統和應用而定。於是用戶可以請求讀塊22、然後,寫塊48,再讀塊9等等。直接存取文件對讀或寫塊的次序沒有限制。用戶提供給操作系統的是相對塊號,它是相對於文件開始位置的一個位移量,而絕對塊號則由系統換算得到。

索引存取:

第三種類型的存取是基於索引文件的索引存取方法。由於文件中的記錄不按它在文件中的位置,而按它的記錄鍵來編址,所以,用戶提供給操作系統記錄鍵後就可查找到所需記錄。通常記錄按記錄鍵的某種順序存放,例如,按代表健的字母先後次序來排序。對於這種文件,除可採用按鍵存取外,也可以採用順序存取或直接存取的方法。信息塊的地址都可以通過查找記錄鍵而換算出。實際的系統中,大都採用多級索引,以加速記錄查找過程。

參考資料:網路:文件存取法

㈣ 什麼是資料庫物理結構和存儲方式的描述

Log File物理結構

log block結構分為日誌頭段、日誌記錄、日誌尾部

  • Block Header,佔用12位元組

  • Data部分

  • Block tailer,佔用4位元組

  • Block Header

    這個部分是每個Block的頭部,主要記錄的塊的信息

  • Block Number,表示這是第幾個block,佔用4位元組,是通過LSN計算得來的,佔用4位元組

  • Block data len,表示該block中有多少位元組已經被使用了,佔用2位元組

  • First Rec offet,表示該block中作為第一個新的mtr開始的偏移量,佔用2位元組

  • Checkpoint number,表示該log block最後被寫入時的檢查點的值,佔用4位元組

  • ㈤ 輕松掌握什麼是數據的物理(存儲)結構

    數據結構在計算機中的表示(映像)稱為數據的物理(存儲)結構 它包括數據元素的表示和關系的表示

    物理結構 即oracle資料庫使用的操作系統文件結構 對於資料庫物理結構文件 不同的oracle版本 不同的操作系統平台上有不同的存儲目錄結構

    winnt| d:oracleproct oradataDB_NAME * *(oracle g);d:orantdatabase* *(oracle oracle ) Unix | /home/app/oracle/proct/ /oradata/DB_NAME/* * ( g);/home/app/oradata/db_name/* *( i i)

    資料庫的物理結構文件按其作用可以分為三類

    數據文件

    日誌文件

    控制文件

    一 數據文件

    數據文件用來存儲資料庫的數據 如表 索引等 讀取數據時 系統首先從資料庫文件中讀取數據 並存儲到SGA的數據緩沖區中 這是為了減少I/O 如果讀取數據時 緩沖區中已經有要讀取的數據 就不需要再從磁碟中讀取了 存儲數據時也是一樣 事務提交時改變的數據先存儲到內存緩沖區中 再由oracle後台進程DBWR決定如何將其寫入到數據文件中

    查詢數據文件的信息

    sql>select * from dba_data_files或 sql>select * from v$datafile (此數據字典包含文件的動態信息)

    一個數據文件只與一個資料庫相聯系 數據文件的大小是可以改變的 可以通過以下語句查詢表空間的空間空閑量

    sql>select * from dba_free_space

    修改數據文件的大小

    sql>alter database datafile "d: df dbf" resize m

    資料庫文件的自動擴展特性 請看下面的例子:

    sql>alter tablespace tbs add datafile "d: df dbf" size m autoextend on next m maxsize m sql>alter database mydb datafile "d: df dbf" "d: df dbf" autoexetend off sql>alter database mydb datafile "d: df dbf" "d: df dbf" autoexetend on next m maxsize unlimited

    二 重做日誌文件

    重做日誌文件記錄對資料庫的所有修改信息 它是三類文件中最復雜的一類文件 也是保證資料庫安全與資料庫備份與恢復有直接關系的文件

    日誌文件組與日誌成員

    在每一個oracle資料庫中 至少有兩個重做日誌文件組 每組有一個個或多個重做日誌文件 即日誌成員 同一組中的成員是鏡像關系 它們存儲的內容是一模一樣的 Oracle在寫日誌時 以一個日誌組為邏輯單位寫入 只在將日誌都寫入日誌組中的每個成員文件中後 寫日誌才完成

    日誌工作原理

    Oracle有多個日誌文件組 當一個日誌文件組中所有的成員所有的成員同時被寫滿數據時 系統自動轉換到下一個日誌文件組 這個轉換過程稱為日誌切換

    當日誌切換後 會給前一個日誌組編一個號 用於歸檔日誌的編號 這個編號稱為日誌序列號 此編號由 開始 每切換一次 序列號自動加 最大值受參數MAXLOGHISTORY限制 該參數的最大值為

    當oracle把最後一個日誌組寫滿了以後 自動轉向第一個日誌組 這時 再向第一個日誌組寫日誌的時候 如果資料庫運行在非歸檔模式下 這個日誌組中的原有日誌信息就會被覆蓋

    使用以下語句查詢日誌文件信息

    sql>select * from v$log

    相關欄位說明如下

    GROUP#:日誌文件組號

    THREAD#:日誌文件線程號 一般為 雙機容時為

    SEQUENCE#:日誌序列號

    BYTES:日誌文件大小

    MEMBERS:該組的日誌成員個數

    ARC:該組日誌信息是否已經完成歸檔

    STATUS:該組狀態(CURRENT:表示當前正在使用的組 NACTIVE:表示非活動組 ACTIVE:表示歸檔未完成)

    FIRST_CHANGE#:系統改變號SCN 也叫檢查點號

    FIRST_TIME:系統改變時間

    DBA可以使用下列命令進行強制日誌切換

    sql>alter system switch logfile

    NOARCHIVELOG/ARCHIVELOG

    NOARCHIVELOG是非歸檔模式 如果資料庫運行在這種模式下 當日誌切換時 新切換到的日誌組中的日誌信息會被覆蓋 ARCHIVELOG:歸檔模式 如果資料庫運行在這種模式下 日誌會被歸檔存儲 產生歸檔日誌 且在未歸檔之前 日誌不允許被覆蓋寫入

    要確認資料庫的歸檔方式 可以查詢數據字典v$database:

    sql>select log_mode from v$database

    要了解歸檔日誌的信息 可以查詢數據字典v$archived_log

    要將資料庫改為歸檔模式

    a alter database archivelog

    b 設置初始化參數LOG_ARCHIVE_START=TRUE

    c 設置歸檔文件目標存儲路徑 LOG_ARCHIVE_DEST=C:ORAARCHIVE

    d 設置歸檔文件命名格式參數 LOG_ARCHIVE_FORMAT="ORCK%T%S ARC" 這個格式中的%S表示日誌序列號 自動左邊補零 %s表示日誌序列號 自動左邊不補零 %T表示日誌線程號 左邊補零 %t表示日誌線程號不補零

    e 重新啟動資料庫

    CKPT進程(檢查點進程)

    CKPT進程保證有修改過的資料庫緩沖區中的數據都被寫入到數據文件 日誌文件 數據文件 資料庫頭和控制文件中都有寫入檢查點標記 資料庫在恢復時 只需提供自上一個檢查以來所做的修改 檢查點完成時系統將更新資料庫資料庫頭和控制文件

    參數LOG_CHECKPOINT_TIMEOUT決定一個檢查點發生的時間間隔 LOG_CHECKPOINT_INTERVAL決定一個檢查需要填充的日誌文件塊的數量 檢查點號 也稱系統改變號(SCN) 它標識一個檢查點 可以通過v$log查詢日誌文件的檢查點信息 通過v$datafile查詢數據文件的檢查點信息 通過v$database查詢資料庫頭的檢查點信息 三個地方的檢查點號相同 如果不同 說明發明資料庫不同步 此時資料庫肯定無法正常啟動

    增加與刪除日誌文件組 日誌成員(詳細語法請參考oracle文檔)

    alter database [database] add logfile [group integer] filespec[ [group alter database [database] add logfile ( ) alter database [database] drop logfile [grout integer] alter database[database] add logfile member "filespec" [reuse] to group integer alter database [database] drop logfile member "filename" "filename" alter database [database] rename file "filename" to "filename

    "

    清除日誌文件數據

    alter database [database] clear [unarchived] logfile group integer|filespec

    三 控制文件

    控制文件是一個二進制文件 用來描述資料庫的物理結構 一個資料庫只需要一個控制文件 控制文件的內容包括

    資料庫名及資料庫唯一標識

    數據文件和日誌文件標識

    資料庫恢復所需的同步信息 即檢查點號

    控制文件由參數control_files指定 格式如下

    control_files=("home/app/ /control ctl" "home/app/ /control ctl")

    參數中各個文件是鏡像關系 也就是說 幾個文件中只要有一個文件完好 資料庫就可以正常運行

    以下語句查詢控制文件的信息

    sql>select * from v$controlfile

    如果控制文件損壞或丟失 資料庫將終止並且無法啟動 所以 要對控制文件進行鏡象 手工鏡像步驟如下

    a 關閉資料庫

    b 復制控制文件

    c 修改參數文件 加入新增的控制文件位置描述

    d 重新啟動資料庫

    另外注意 控制文件中還包含幾個伺服器參數的設置 如果修改這些參數的值 剛需要重新創建控制文件 這些參數是

    MAXLOGFILES:最大日誌文件個數

    MAXLOGMEMBERS:最大日誌成員個數

    MAXLOGHISTORY:最大歷史日誌個數

    MAXDATAFILES:最大數據文件個數

    MAXINSTANCES:最大實例文件個數

    所有修改資料庫結構的命令都會引起控制文件的改變 同時出會記錄在oracle跟蹤文件中 跟蹤文件的名稱為alter_SID log 路徑如下

    d:oracleproct adminDB_NAMEmpSIDALRT log(unix是alter_SID ora)

    也可以在參數文件中指定跟蹤文件的存儲路徑 後台進程跟蹤文件目錄由參數background_mp_dest指定 用戶跟蹤文件位置由參數user_bmp_dest指定 如

    lishixin/Article/program/SQL/201405/30847

    閱讀全文

    與如何理解物理存儲結構相關的資料

    熱點內容
    word中化學式的數字怎麼打出來 瀏覽:720
    乙酸乙酯化學式怎麼算 瀏覽:1387
    沈陽初中的數學是什麼版本的 瀏覽:1332
    華為手機家人共享如何查看地理位置 瀏覽:1025
    一氧化碳還原氧化鋁化學方程式怎麼配平 瀏覽:864
    數學c什麼意思是什麼意思是什麼 瀏覽:1387
    中考初中地理如何補 瀏覽:1274
    360瀏覽器歷史在哪裡下載迅雷下載 瀏覽:683
    數學奧數卡怎麼辦 瀏覽:1365
    如何回答地理是什麼 瀏覽:1003
    win7如何刪除電腦文件瀏覽歷史 瀏覽:1035
    大學物理實驗干什麼用的到 瀏覽:1464
    二年級上冊數學框框怎麼填 瀏覽:1678
    西安瑞禧生物科技有限公司怎麼樣 瀏覽:900
    武大的分析化學怎麼樣 瀏覽:1229
    ige電化學發光偏高怎麼辦 瀏覽:1317
    學而思初中英語和語文怎麼樣 瀏覽:1625
    下列哪個水飛薊素化學結構 瀏覽:1406
    化學理學哪些專業好 瀏覽:1469
    數學中的棱的意思是什麼 瀏覽:1035