您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關怎么快速的了解某種數據庫的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
這段時間由于工作需要,接觸了多種數據庫。其中關系型數據庫包括:Oracle、DB2、Informix、Teradata、Netezza、MySQL、MS SQLServer、Sybase、PostgreSQL、Greenplum、浪潮KDB、達夢數據庫、華三MPP Data Engine、GBase、Hive等;NoSQL包括MongoDB、Redis、HBase、Cassandra等。那么,如何快速的了解或者學習某種數據庫?大體可以通過數據庫存儲結構、數據庫邏輯概念和對象結構以及字符集這四個方面快速了解或掌握。
存儲結構,從存儲設備上劃分,可以粗略的劃分為兩大類:持久性存儲(如硬盤、SSD等)和臨時性存儲(如內存),對應這兩類,數據庫存儲結構可以分為物理結構和內存結構。物理結構簡單來說就是在持久性存儲設備上可見的、物理存在的文件以及這些文件的用處和相互依存關系,內存結構指的是在內存中存在的數據結構以及這些結構的用處和關系。
如Oracle,物理結構包括控制文件、在線日志文件、數據文件、參數文件等;內存結構包括SGA、PGA等;
如Informix,物理結構包括數據文件、配置文件、物理日志文件等;內存結構包括共享內存端等;
如Sybase,物理結構包括設備文件、配置文件、日志文件等;內存結構包括過程緩沖區、數據緩沖區等。
數據庫邏輯概念,是對物理結構的邏輯封裝,通過增加一系列的概念,便于使用和管理數據庫。
如Oracle,表空間Tablespace用于管理物理存儲、Segment/Extend/Block用于管理數據存儲、User作為容器可用于權限管理和數據庫對象存儲;
如Teradata,用戶User用于數據的存儲組織和權限管理、數據庫DB在User下用于數據的劃分和組織等;
如DB2,表空間Tablespace用于物理存儲的管理、User用于權限管理、Schema作為數據庫對象的存儲容器、BufferPool用于緩存的管理等;
如Mongodb,數據庫DB用于存儲管理和數據組織、Collection類似數據表作為數據的存儲管理;
如Redis,Key/Value鍵值對,Key可以是根據業務意義自定義的信息,Value可以為任意序列化后的二進制數據或者更高級的Set/List等結構。
數據庫對象,指的是數據庫Database、用戶User、模式Schema、數據表Table、索引Index、約束Constraint、觸發器Trigger、存儲過程Procedure等對象。通過了解數據庫對象結構,也就基本掌握如何通過DML操作數據庫了。
如Oracle,在同一臺主機上可以有N個數據庫,每個數據庫中可以有N個User(Schema),每個User下有N張表......,連接數據庫后可通過Username.Tablename訪問數據表。值得一提的是,在12.2+版本后,增加了所謂的ContainerDB,其實是在DB和User之間加了一層database,實現了類似SQLServer或者Sybase的對象結構;
如DB2,在同一臺主機上可以有N個數據庫,每個數據庫中可以有N個User,每個User下有N個Schema,每個Schema下有N張表......,可通過Schemaname.Tablename訪問數據表;
如MySQL,在同一臺主機上可以有N個DB Server,每個Server可以有N個DB,每個DB有N個Table,數據表可通過以下方式進行訪問:
database <dbname>
select * from <tablename>
如華三MPP Data Engine,數據庫對象結構基本與MySQL類似;
如MongoDB,在同一臺主機上可以有N個DB Server,每個Server可以有N個DB,每個DB有N個Collection,數據表可通過以下方式進行訪問:
use <database>
db.collectionname.find()
數據庫字符集,在先前文章已有介紹,不再詳述。
如Oracle,字符集有ZHS16GBK、AL32UTF8、WE8ISO8859P1等,其中ZHS(中文)/AL(所有)/WE(西歐)等表示語言,16/32/8表示字符存儲使用字節數,最后一部分是實際的字符集。
如DB2 LUW,常用字符集有GBK、819(即ISO8859P1)、1208(即Unicode,使用UTF8編碼)
如Sybase,常用字符集有EUCGB(即GB2312)、CP850、GB18030、ISO_1(即ISO8859P1)、Roman8(在HP-UX下的默認字符集)
如MySQL,常用字符集有Latin1(即ISO8859P1)、UTF8、GBK
如Teradata,常用字符集有Latin、Unicode(使用UTF16編碼)
感謝各位的閱讀!關于“怎么快速的了解某種數據庫”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。