您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關(guān)python一般用到哪種數(shù)據(jù)庫?,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
數(shù)據(jù)庫分類
早期數(shù)據(jù)庫模型有三種,分別為層次式數(shù)據(jù)庫、網(wǎng)絡式數(shù)據(jù)庫和關(guān)系型數(shù)據(jù)庫。
而在當今的互聯(lián)網(wǎng)中,通常把數(shù)據(jù)庫分為兩類,即關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫。
關(guān)系型數(shù)據(jù)庫
關(guān)系型數(shù)據(jù)庫是指采用了關(guān)系模型來組織數(shù)據(jù)的數(shù)據(jù)庫,而關(guān)系模型是由二維表及其聯(lián)系組成的數(shù)據(jù)組織。
優(yōu)點:
1、易于維護:都是使用表結(jié)構(gòu),格式一致;
2、使用方便:SQL語言通用,可用于復雜查詢;
3、復雜操作:支持SQL,可用于一個表以及多個表之間非常復雜的查詢。
缺點:
1、讀寫性能比較差,尤其是海量數(shù)據(jù)的高效率讀寫;
2、固定的表結(jié)構(gòu),靈活度稍欠;
3、高并發(fā)讀寫需求,傳統(tǒng)關(guān)系型數(shù)據(jù)庫來說,硬盤I/O是一個很大的瓶頸。
目前主流的關(guān)系型數(shù)據(jù)庫有
目前使用最廣泛的開源、多平臺的關(guān)系型數(shù)據(jù)庫,支持事務、符合ACID、支持多數(shù)SQL規(guī)范
SQL Server
支持事務、符合ACID、支持多數(shù)SQL規(guī)范,屬于商業(yè)軟件,需要注意版權(quán)和licence授權(quán)費用
Oracle
支持事務,符合關(guān)系型數(shù)據(jù)庫原理,符合ACID,支持多數(shù)SQL規(guī)范,功能最強大、最復雜、市場占比最高的商業(yè)數(shù)據(jù)庫
Postgresql
開源、多平臺、關(guān)系型數(shù)據(jù)庫,功能最強大的開源數(shù)據(jù)庫,需要python環(huán)境,基于postgresql的TimeScaleDB,是目前比較火的時序數(shù)據(jù)庫之一。(更多學習內(nèi)容,請點擊python學習網(wǎng))
非關(guān)系型數(shù)據(jù)庫
非關(guān)系型數(shù)據(jù)庫也稱為NOSQL(Not Only SQL),作為關(guān)系型數(shù)據(jù)庫的一個補充,能在特定場景和特點問題下發(fā)揮高效率和高性能。
常見的非關(guān)系型數(shù)據(jù)庫類型有鍵值(Key-Value)存儲數(shù)據(jù)庫和面向文檔數(shù)據(jù)庫(Document-oriented)
鍵值存儲數(shù)據(jù)庫類似hash,通過key做添加、刪除、查詢,性能高,優(yōu)勢在于簡單、易部署、高并發(fā),主要產(chǎn)品有
開源、Linux平臺、key-value鍵值型Nosql數(shù)據(jù)庫,簡單穩(wěn)定,非常主流的、全數(shù)據(jù)in-momory、定位于“快”的鍵值型nosql數(shù)據(jù)庫
Memcaced
一個開源的、高性能的、具有分布式內(nèi)存對象的緩存系統(tǒng),通過它可以減輕數(shù)據(jù)庫負載,加速動態(tài)的web應用
面向文檔數(shù)據(jù)庫以文檔的形式存儲,每個文檔是一系列數(shù)據(jù)項的集合,每個數(shù)據(jù)項有名稱與對應的值,主要產(chǎn)品有
開源、多平臺、文檔型nosql數(shù)據(jù)庫,“最像關(guān)系型數(shù)據(jù)庫”,定位于“靈活”的nosql數(shù)據(jù)庫。適用于網(wǎng)站后臺數(shù)據(jù)庫(更新快、實時復制)、小文件系統(tǒng)(json,二進制)、日志分析系統(tǒng)(數(shù)據(jù)量大的文件)。
知識點擴展:
Python的數(shù)據(jù)庫支持
經(jīng)過兩個多月的學習,我們對Python的基礎語法大概都已經(jīng)學完了,接下來我們要把我們學到的東西逐步用到應用的層面上。今天,我們要學的是,用Python實現(xiàn)數(shù)據(jù)庫的對接。
我們先來講一下什么是api,在編程語言的學習中,我們經(jīng)常會接觸到api這個詞,那么究竟什么是api,簡單來說就是一個接口,像java的api,有一個專門的api文檔提供查詢。Python數(shù)據(jù)庫的api是DB API。我們主要講的api版本是DB API2.0。
Python DB API有三個模塊屬性:
1、apilevel:這個屬性主要是用來定義使用的Python DB API 的版本,像我們上面說的DB API 2.0;
2、threadsafety:這個是用來定義模塊的線程安全度;
該參數(shù)是一個0到3的整數(shù),0表示線程不能共享模塊,1表示線程可共享模塊本身,2表示線程可共享模塊和連接, 但不能共享游標,3表示模塊是絕對線程安全的。
3、paramstyle:這個屬性定義在SQL查詢中使用哪種參數(shù)風格,這里說明一下,SQL是指數(shù)據(jù)庫的意思。
這個我們就不具體講了,因為現(xiàn)在剛接觸新知識,引入這個知識點,會很容易感到迷茫。
關(guān)于python一般用到哪種數(shù)據(jù)庫?就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。