database concept
填充因子只在建立索引時執行;索引建立後,當表中進行資料的新增、刪除或更新時,不會保持填充因子。即建立索引完後新增資料,比如新增”COM”,則會新增在Page100的”CON”的前面,此時Page100的剩餘空間將小於40%。因為充滿度只有60%,所以”Barr”和”CON”之間會有空隙,所以”COM”將直接插入他們之間,不會照成資料移動和頁分裂。如果充滿度是100%即整頁充滿資料,則會照成”CON”及它後面的資料都向後移動1位,然後在”CON”前面插入”COM”,而Page100會大約一半的行(後半部)移到新頁中以便為新行騰出空間(這種重組稱為頁拆分。頁拆分會降低效能並使表中的資料儲存產生碎片.),在這些移動的過程中一方面速度明顯下降,另一方面會產生碎片。新增完資料後要使填充因子繼續保持60%則需要重建索引。
聚簇索引和非聚簇索引的區別就是:聚簇索引的資料物理儲存順序和索引順序一致的,也就是它的資料就是按順序排下來的。非聚簇索引的資料儲存是無序的,不按索引順序排列。
填充因子大的時候,插入或修改記錄後重新索引的工作會很大,磁碟IO操作增加,效能必然降低,但其佔用空間小.填充因子小的時候,索引檔案佔用磁碟及記憶體空間相對要大,但是,系統本身重新索引所需IO操作減少,效能提高,只是多佔用一些儲存空間. 孰輕孰重要自已決定。
再看圖B,它是把這個索引列的資料複製了一份然後按順序排下來,再建立索引。每行資料都有一個指標。
<p style="margin:10px auto;font-family:"font-size:14px;white-space:normal;background-color:#FFFFFF;"> 我們再來找”Rudd”.首先從索引頁的根開始找,查詢原理跟聚集索引是一樣的。在索引頁的Page61找到”Rudd”,它的指標是470501,然後在資料頁的Page5找到470501,這個位置就是”Rudd”在資料庫中的實際位置,這樣就找到了”Rudd”。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26477398/viewspace-2144982/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- NEW CONCEPT ENGLISH 51 - 60
- BACON: Supercharge Your VLM with Bag-of-Concept Graph to Mitigate HallucinationsMIT
- The database owner SID recorded in the master database differs from the database owner SID recorded in database 'DB_NAME'DatabaseAST
- Oracle Database Cloud - Database as a Service Quick StartOracleDatabaseCloudUI
- Error querying database. XXXXXXXXXXXXX, No database selected。ErrorDatabase
- Convert a Physical Standby Database into a Snapshot Standby DatabaseDatabase
- Database TimeoutDatabase
- Database OverallDatabase
- database no shardingDatabase
- C++霧中風景18:C++20, 從concept開始C++
- Oracle 12.2 使用Database Link優化Standby Database WorkloadOracleDatabase優化
- ORACLE database vaultOracleDatabase
- Relationship Database DesignDatabase
- 3.4 Quiescing a DatabaseUIDatabase
- idea--DatabaseIdeaDatabase
- Oracle clone databaseOracleDatabase
- database的connectDatabase
- 請問測試中 Gauge 的 [Concept] 怎麼翻譯,怎麼理解。
- SciTech-Theory-Concept:natural+common -> Principle:process+research+investment -> Definition -> Theory -> Axiom
- Password is required when adding a database to AG group if the database has a master keyUIDatabaseAST
- ORA-16649: possible failover to another database prevents this database from beiAIDatabase
- Guide to Database as a Service (DBaaS)GUIIDEDatabase
- Oracle Database Scheduler整理OracleDatabase
- 3.4.1 About Quiescing a DatabaseUIDatabase
- 3.3 Shutting Down a DatabaseDatabase
- 3.2.2 Opening a Closed DatabaseDatabase
- 3.2.1 Mounting a Database to an InstanceDatabase
- 4.5.1.2 srvctl add databaseDatabase
- Laravel workflow with database and roleLaravelDatabase
- Oracle Physical Database LimitsOracleDatabaseMIT
- SQL Database for Modern DevelopersSQLDatabaseDeveloper
- LIST INCARNATION OF DATABASE含義Database
- 1、 Getting Stared with Database AdministrationDatabase
- Performing a Failover to a Physical Standby DatabaseORMAIDatabase
- 【譯】Database Profiling with Visual StudioDatabase
- alter database disable thread 2Databasethread
- CSCI235 – Database SystemsDatabase
- database 空值問題Database
- 1.2 Physiacel Structure of Database ClusterStructDatabase