欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

pg數(shù)據(jù)庫nosql,pg數(shù)據(jù)庫全稱

為什么我在postgresql的json數(shù)據(jù)中查詢,速度會比mysql慢很多

David Bolton是一名獨(dú)立開發(fā)者,他使用PostgreSQL和MySQL都已有超過十年的時間。近日,他撰文闡述了選擇PostgreSQL而不是MySQL的理由。他認(rèn)為,MySQL之所以仍然如此流行是因?yàn)槊總€Linux Web托管軟件包中都包含它。但隨著Oracle將其收購,MySQL的開源程度大不如前。而PostgreSQL不僅發(fā)展更快,還加入了JSON支持,成為少數(shù)幾個支持NoSQL的關(guān)系型數(shù)據(jù)庫之一。

成都創(chuàng)新互聯(lián)專注于泰順企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,購物商城網(wǎng)站建設(shè)。泰順網(wǎng)站建設(shè)公司,為泰順等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計,全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

MySQL/MariaDB的當(dāng)前版本是5.7.6(MariaDB為MySQL創(chuàng)建者M(jìn)onty Widenius創(chuàng)建的一個MySQL分支),PostgreSQL的版本是9.4.1。Bolton從以下幾個方面對比了兩者的最新版本:

ANSI標(biāo)準(zhǔn)兼容性:與先前的版本相比,MySQL已經(jīng)有了長足的進(jìn)步,但MySQL背后的哲學(xué)是,如果客戶喜歡,他們就會支持非標(biāo)準(zhǔn)擴(kuò)展,而PostgreSQL從開始就將標(biāo)準(zhǔn)構(gòu)建到平臺里。不過,二者殊途同歸,差別不大;

ACID遵從性:PostgreSQL有一個存儲引擎,而MySQL有9個,但只有MyIsam和InnoDB與大部分用戶有關(guān),其中,后者為默認(rèn)存儲引擎。InnoDB和PostgreSQL都完全遵循ACID,差別不大;

無鎖表修改:MyIsam使用表級鎖來提升速度,這會導(dǎo)致寫互斥。但PostgreSQL和InnoDB均使用行級鎖,差別不大;

子查詢:長期以來,這一直是MySQL的一個弱點(diǎn),雖然5.6.5作了重大改進(jìn),但PostgreSQL對表連接支持得更好,尤其是MySQL不支持全外連接,因此,這方面PostgreSQL勝過MySQL;

JSON支持和NoSQL:PostgreSQL最近增加了JSON支持,與傳統(tǒng)的關(guān)系型數(shù)據(jù)庫相比,它提供了更大的數(shù)據(jù)存儲靈活性,因此,這方面PostgreSQL勝過MySQL。

此外,Bolton指出,選擇PostgreSQL還有如下理由:

更好的許可:PostgreSQL采用類似MIT的許可協(xié)議,允許開發(fā)人員做任何事情,包括在開源或閉源產(chǎn)品中商用,而MySQL的客戶端遵循GPL許可協(xié)議,所以開發(fā)人員必須向Oracle付費(fèi)或者將自己的應(yīng)用程序開源;

更好的數(shù)據(jù)一致性: PostgreSQL會在數(shù)據(jù)插入和更新之前進(jìn)行嚴(yán)格的驗(yàn)證,確保數(shù)據(jù)合法才會進(jìn)行相應(yīng)的操作,但在MySQL中,開發(fā)人員需要將服務(wù)器設(shè)定為嚴(yán)格SQL模式才能達(dá)到同樣的目的,否則可能會產(chǎn)生不規(guī)范數(shù)據(jù);

服務(wù)器擴(kuò)展:MySQL提供了插件程序API,支持C/C++或任何兼容C的語言,而且從5.7.3版本開始支持全文搜索,PostgreSQL有一個類似的系統(tǒng)但支持的語言更多,包括C/C++、Java、.Net、Perl、 Python、Ruby、Tcl、ODBC等,它甚至可以在單獨(dú)的進(jìn)程中運(yùn)行用戶提供的代碼;除了所有關(guān)系型數(shù)據(jù)庫都包含的有關(guān)數(shù)據(jù)庫、表和列的一般信息外,PostgreSQL系統(tǒng)目錄中還可以包含關(guān)于數(shù)據(jù)類型、函數(shù)和存取方法的信息,開發(fā)人員可以通過修改這些信息實(shí)現(xiàn)擴(kuò)展。

Python學(xué)哪個數(shù)據(jù)庫

主流的關(guān)系型數(shù)據(jù)庫:

1. MySQL:目前使用最廣泛的開源、多平臺的關(guān)系型數(shù)據(jù)庫,支持事務(wù)、符合ACID、支持多數(shù)SQL規(guī)范。

2. SQL Server:支持事務(wù)、符合ACID、支持多數(shù)SQL規(guī)范,屬于商業(yè)軟件,需要注意版權(quán)和licence授權(quán)費(fèi)用。

3. Oracle:支持事務(wù),符合關(guān)系型數(shù)據(jù)庫原理,符合ACID,支持多數(shù)SQL規(guī)范,功能最強(qiáng)大、最復(fù)雜、市場占比最高的商業(yè)數(shù)據(jù)庫。

4. Postgresql:開源、多平臺、關(guān)系型數(shù)據(jù)庫,功能最強(qiáng)大的開源數(shù)據(jù)庫,需要Python環(huán)境,基于postgresql的time

scaleDB,是目前比較火的時序數(shù)據(jù)庫之一。

非關(guān)系型數(shù)據(jù)庫:

非關(guān)系型數(shù)據(jù)庫也被稱為nosql,作為關(guān)系型數(shù)據(jù)庫的一個補(bǔ)充,能在特定場景和特點(diǎn)問題下發(fā)揮高效率和高性能。

常見的非關(guān)系型數(shù)據(jù)庫類型有鍵值存儲數(shù)據(jù)庫和面向文檔數(shù)據(jù)庫。

鍵值存儲數(shù)據(jù)庫類似hash,通過key做添加、刪除、查詢、性能高,優(yōu)勢在于簡單、易部署、高并發(fā),主要產(chǎn)品有:

Redis:開源、Linux平臺、key-value鍵值型nosql數(shù)據(jù)庫,簡單穩(wěn)定,非常主流的、全數(shù)據(jù)in-momory,定位于快的鍵值型nosql數(shù)據(jù)庫。

Memcaced:一個開源的、高性能的、具有分布式內(nèi)存對象的緩存系統(tǒng),通過它可以減輕數(shù)據(jù)庫負(fù)載,加速動態(tài)的web應(yīng)用。

面向文檔數(shù)據(jù)庫以文檔的形式存儲,每個文檔是一系列數(shù)據(jù)項(xiàng)的集合,每個數(shù)據(jù)項(xiàng)有名稱與對應(yīng)的值,主要產(chǎn)品有:

MongoDB:開源、多平臺、文檔型nosql數(shù)據(jù)庫,最像關(guān)系型數(shù)據(jù)庫,定位于靈活的nosql數(shù)據(jù)庫。適用于網(wǎng)站后臺數(shù)據(jù)庫、小文件系統(tǒng)、日志分析系統(tǒng)。

為什么PostgreSQL比MongoDB還快

PostgreSQL9.4帶來了全新的NoSQL特性,并且根據(jù)EnterpriseDB的測試,其加載,插入和查詢的性能都已經(jīng)幾倍于MongoDB了。

雖然我是PG的鐵桿粉絲,但是關(guān)系數(shù)據(jù)庫背負(fù)了ACID的重型裝甲,在性能上居然能打敗輕裝上陣的NoSQL數(shù)據(jù)庫總覺得有點(diǎn)離譜。

所以我在自己的環(huán)境里驗(yàn)證了一下EnterpriseDB的測試結(jié)果,并且小探一下PG取勝的原因。

1. EnterpriseDB的測試結(jié)果

以下是EnterpriseDB的測試結(jié)果(數(shù)據(jù)量為5000萬)

(還可以參考這篇譯文: )

2. 我的驗(yàn)證結(jié)果

測試觀點(diǎn)

為了使測試結(jié)果更加單純,我準(zhǔn)備單純比拼CPU消耗(盡量排除IO和網(wǎng)絡(luò)的干擾),設(shè)定以下測試條件。

1)所有數(shù)據(jù)都要放進(jìn)內(nèi)存

2)C/S都跑在同一臺單機(jī)上

所以,只在單機(jī)上進(jìn)行10萬條小數(shù)據(jù)量的測試。

注)EnterpriseDB的測試環(huán)境是32G內(nèi)存的Amazon Web Services M3.2XLARGE實(shí)例,總數(shù)據(jù)量超過內(nèi)存了。

測試環(huán)境

測試環(huán)境為個人PC上的VMware虛擬機(jī)

PC

CPU:Intel Core i5-3470 3.2G(4核)

MEM:6GB

SSD:OCZ-VERTEX4 128GB(VMware虛擬機(jī)所在磁盤,非系統(tǒng)盤)

OS:Win7

VMware虛擬機(jī)

CPU:4核

MEM:1GB

OS:CentOS 6.5

PG:PostgreSQL 9.4.0(shared_buffers = 428MB,其他是默認(rèn)值)

MG:MongoDB 3.0.2

測試步驟

測試步驟非常簡單,可以參考:

但是,在測試前,有些東西要改。

1)把數(shù)據(jù)量減小到10萬

pg_nosql_benchmark-master/pg_nosql_benchmark:

declare -a json_rows=(10000000)

==

declare -a json_rows=(100000)

2)修改mongo的一處腳本(注)

pg_nosql_benchmark-master/lib/mongo_func_lib.sh:

collectionsize="$(echo ${output}|awk -F"," '{print $5}'|cut -d":" -f2)"

==

collectionsize="$(echo ${output}|awk -F"," '{print $6}'|cut -d":" -f2)"

注)pg_nosql_benchmark原來是基于MongoDB 2.6設(shè)計的,MongoDB 3.0的db.json_tables.stats()輸出可能變了,所以這邊要修改一下。

PostgreSQL開源免費(fèi)企業(yè)級數(shù)據(jù)庫用著比較爽的地方有哪些?

1),PostgreSQL是通用型數(shù)據(jù)庫。

PG有著豐富的數(shù)據(jù)類型(數(shù)值、字符、時間、布爾、貨幣、枚舉、網(wǎng)絡(luò)地址、JSONB等等)和索引類型( B-tree、Hash、GiST、SP-GiST 、GIN 和 BRIN等 )。可以存儲和計算大多數(shù)場景的業(yè)務(wù)數(shù)據(jù),如 ERP、交易系統(tǒng)、財務(wù)系統(tǒng)涉及資金、客戶等信息,數(shù)據(jù)不能丟失且業(yè)務(wù)邏輯復(fù)雜,選擇 PostgreSQL 作為數(shù)據(jù)底層存儲,一是可以幫助您在數(shù)據(jù)一致性前提下提供高可用性,二是可以用簡單的編程實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)邏輯 。適合各種OLTP和部分OLAP場景。

2),PostgreSQL數(shù)據(jù)庫包含許多第三方插件。

如PostGIS等可以直接在數(shù)據(jù)庫里進(jìn)行地理位置相關(guān)的gis類存儲和運(yùn)算(LBS地理位置相關(guān)業(yè)務(wù)等O2O場景),其他的插件如Pg_stat_statements、uuid-ossp、pg_trgm、btree-gist插件、 pgcrypto加密等插件 。

3),中小型企業(yè)快速搭建 數(shù)據(jù)倉庫和數(shù)據(jù)分析平臺(TB級別)

PostgreSQL 提供豐富的數(shù)據(jù)類型和強(qiáng)大的計算能力,能夠幫助您更簡單搭建數(shù)據(jù)庫倉庫或大數(shù)據(jù)分析平臺,為企業(yè)運(yùn)營加分。

4),冷熱分離

針對流水類的大表,PG可以使用分區(qū)表,線上保留熱數(shù)據(jù), 歷史 數(shù)據(jù)存放在分區(qū)表里或者OSS等冷數(shù)據(jù)平臺,冷熱分離。

5),公有云支持度高如阿里云、騰訊云、華為云等公有云都有對應(yīng)的RDS-PG產(chǎn)品,開箱即用,并提供技術(shù)支持。

OLTP:事務(wù)處理是PostgreSQL的本行

OLAP:ANSI SQL兼容,窗口函數(shù),CTE,CUBE等高級分析功能,任意語言寫UDF,citus分布式插件

流處理:PipelineDB擴(kuò)展,Notify-Listen,物化視圖,規(guī)則系統(tǒng),靈活的存儲過程與函數(shù)編寫

時序數(shù)據(jù):timescaledb時序數(shù)據(jù)庫插件,分區(qū)表,BRIN索引

空間數(shù)據(jù):PostGIS擴(kuò)展(殺手锏),內(nèi)建的幾何類型支持,GiST索引。

搜索索引:全文搜索索引足以應(yīng)對簡單場景;豐富的索引類型,支持函數(shù)索引,條件索引

NoSQL:JSON,JSONB,XML,HStore原生支持,至NoSQL數(shù)據(jù)庫的外部數(shù)據(jù)包裝器

數(shù)據(jù)倉庫:能平滑遷移至同屬Pg生態(tài)的GreenPlum,DeepGreen,HAWK等,使用FDW進(jìn)行ETL

網(wǎng)頁題目:pg數(shù)據(jù)庫nosql,pg數(shù)據(jù)庫全稱
分享地址:http://chinadenli.net/article36/dsggopg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版做網(wǎng)站網(wǎng)站維護(hù)網(wǎng)站營銷外貿(mào)網(wǎng)站建設(shè)響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管