什么是PostgreSQL?
公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出白云鄂免費(fèi)做網(wǎng)站回饋大家。
云數(shù)據(jù)庫(kù) PostgreSQL 是京東云基于開源的 PostgreSQL 10.6 版本構(gòu)建的一款功能強(qiáng)大的企業(yè)級(jí)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。
PostgreSQL有“世界上可獲得的最先進(jìn)的開源數(shù)據(jù)庫(kù)”之稱,在過去20年的飛速發(fā)展中,該數(shù)據(jù)庫(kù)已經(jīng)廣泛應(yīng)用在GIS場(chǎng)景。如:移動(dòng)應(yīng)用、物流應(yīng)用、金融數(shù)據(jù)分析等各個(gè)行業(yè),逐漸成為企業(yè)首選商業(yè)級(jí)數(shù)據(jù)庫(kù)。
云數(shù)據(jù)庫(kù)可幫助您輕松在云端進(jìn)行部署、操作、管理和擴(kuò)展PostgreSQL,省去絕大部分復(fù)雜而繁瑣的管理工作,更專注于業(yè)務(wù)流程的開發(fā)與建設(shè)。
云數(shù)據(jù)庫(kù)PostgreSQL相比于傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù),具有以下優(yōu)勢(shì):
支持多種編程語言編寫存儲(chǔ)過程和函數(shù),可支持主流開發(fā)語言包括 C/C++/Perl/Python/Java/JavaScript/PHP 等,支持廣泛的數(shù)據(jù)類型包括幾何類型、網(wǎng)絡(luò)地址類型、JSON類型等。更允許用戶按業(yè)務(wù)需求自定義數(shù)據(jù)類型,并可靈活配置和操作。
提供圖形界面化的管理工具和非界面化的命令行查詢工具,無論您是想通過腳本控制,還是通過控制臺(tái)圖形化工具操作,PostgreSQL都能滿足您的需求。同時(shí),PostgreSQL還提供一款可以整合其他數(shù)據(jù)庫(kù)的管理工具,可實(shí)現(xiàn)多數(shù)據(jù)庫(kù)之間的數(shù)據(jù)連接和遷移。
支持標(biāo)準(zhǔn)的SQL查詢語句,支持PostGIS空間類型,支持GIS幾何數(shù)據(jù)類型、范圍類型、IP類型,可滿足基于地理位置的空間查詢、空間索引、空間分析。
云數(shù)據(jù)庫(kù)PostgreSQL整體架構(gòu)圖:
Service: 業(yè)務(wù)邏輯層,負(fù)責(zé)處理一些業(yè)務(wù)邏輯
UC: 用戶中心
Orde: 訂單系統(tǒng)
Trade: 交易系統(tǒng)
Sentinel: 哨兵服務(wù),監(jiān)聽實(shí)例存活情況等其他職責(zé)
Manager: 管理服務(wù),執(zhí)行具體的創(chuàng)建實(shí)例,刪除實(shí)例等其他職責(zé)
Container: 計(jì)算服務(wù),運(yùn)行云數(shù)據(jù)庫(kù) PostgreSQL 實(shí)例
SDN: SDN網(wǎng)絡(luò)服務(wù)
OSS: 京東云對(duì)象存儲(chǔ)服務(wù)
JMonitor: 監(jiān)控服務(wù)
云數(shù)據(jù)庫(kù)PostgreSQL作為一個(gè)合格的數(shù)據(jù)存儲(chǔ)服務(wù),核心滿足服務(wù)高可用性和數(shù)據(jù)高可用性。
京東云云數(shù)據(jù)庫(kù) PostgreSQL 采用的是本地盤的數(shù)據(jù)存儲(chǔ)方式,所以為了保證服務(wù)的高可用性,那么必須采用集群的方式來部署云數(shù)據(jù)庫(kù) PostgreSQL 服務(wù)。
PostgreSQL 的集群方式可以是一主一從,一主兩從,或者一主多從,PostgreSQL 把從稱之為:Hot Standby。京東云云數(shù)據(jù)庫(kù) PostgreSQL采用一主一從模式,保證了服務(wù)高可用性的同時(shí),將成本降至最低。
PostgreSQL和MySQL 一樣,將主從同步方式分為全同步、半同步、異步三種方式,考慮性能和數(shù)據(jù)一致性兩大因素,選擇半同步方式。
PostgreSQL 從 9.0 版本開始,主從的數(shù)據(jù)同步方式(同步WAL日志)支持以下兩種:
異步流復(fù)制: 事務(wù)提交之后不必等日志傳遞到 standby 就即可返回,從實(shí)例數(shù)據(jù)有一定的延遲。
同步流復(fù)制: 當(dāng)主實(shí)例事務(wù)提交之后,一定會(huì)等到日志傳遞到 standby后才返回,可以做到數(shù)據(jù)零丟失。
由于京東云云數(shù)據(jù)庫(kù) PostgreSQL 集群采用的是一主一從架構(gòu),如果數(shù)據(jù)同步方式采用同步流復(fù)制,那么當(dāng) standby 不可用的時(shí)候,會(huì)導(dǎo)致無法正常的往 PostgreSQL 集群中寫數(shù)據(jù)。所以為了確保集群的高可用性,京東云云數(shù)據(jù)庫(kù) PostgreSQL 采用的主從數(shù)據(jù)同步方式為:異步流復(fù)制。
同時(shí),京東云云數(shù)據(jù)庫(kù) PostgreSQL 集群是跨機(jī)架跨物理機(jī)部署的,如果創(chuàng)建的時(shí)候選擇了跨可用區(qū)的話,集群的主從實(shí)例還能分別部署在兩個(gè)不用的可用區(qū)。在這樣的部署架構(gòu)下,集群中的主從實(shí)例同時(shí)不可用的概率極低。
自動(dòng)高可用 —來看下京東云云數(shù)據(jù)庫(kù) PostgreSQL 是如何實(shí)現(xiàn)自動(dòng)高可用的:
京東云云數(shù)據(jù)庫(kù) PostgreSQL 集群包括了主從兩個(gè)實(shí)例,即上圖的 Master 和 Slave 。 Master 和 Slave 會(huì)定時(shí)上報(bào)心跳信息給 Sentinel 服務(wù),匯報(bào)自己的存活情況;當(dāng) Slave 長(zhǎng)時(shí)間未上報(bào)心跳信息, Sentinel 會(huì)認(rèn)為此時(shí) Slave 已經(jīng)不可用了,這時(shí) Sentinel 就會(huì)觸發(fā)自動(dòng)高可用的命令,告訴 Manager 需要新建一個(gè)從實(shí)例,即上圖的 Slave 。 Slave 會(huì)根據(jù)一個(gè)最近的全量備份進(jìn)行創(chuàng)建,當(dāng)創(chuàng)建成功之后,會(huì)設(shè)置與 Master 的主從關(guān)系,從 Master 同步增量的數(shù)據(jù)。
京東云云數(shù)據(jù)庫(kù) PostgreSQL 提供了自動(dòng)備份服務(wù),實(shí)例每天會(huì)定時(shí)的備份一次,同時(shí)在此期間產(chǎn)生的所有 WAL* 日志,都會(huì)同步到京東云 OSS 服務(wù)(OSS 中的數(shù)據(jù)是三副本存儲(chǔ)的)中。
針對(duì)云數(shù)據(jù)庫(kù) PostgreSQL 的自動(dòng)備份,我們采用了官方提供的 pg_baseBackup*命令行工具,定時(shí)的在從實(shí)例上進(jìn)行全量數(shù)據(jù)備份操作,并實(shí)時(shí)將數(shù)據(jù)同步到京東云 OSS 服務(wù)中,確保了備份操作不會(huì)影響用戶對(duì)主實(shí)例的操作。
除了會(huì)定時(shí)進(jìn)行全量備份外,針對(duì)增量的數(shù)據(jù)WAL日志,我們也做了同步處理,將日志實(shí)時(shí)同步到京東云 OSS 服務(wù)中?;谶@種機(jī)制,京東云云數(shù)據(jù)庫(kù) PostgreSQL 允許根據(jù)時(shí)間點(diǎn)(從當(dāng)前時(shí)間往前推 7 天內(nèi)的任意時(shí)間點(diǎn))創(chuàng)建新的實(shí)例。
自動(dòng)全量備份 —來看下京東云云數(shù)據(jù)庫(kù) PostgreSQL 是如何實(shí)現(xiàn)自動(dòng)全量備份的:
京東云云數(shù)據(jù)庫(kù) PostgreSQL 支持自定義每天全量備份的執(zhí)行時(shí)間。在進(jìn)行全量備份的過程中,為了不影響正常的業(yè)務(wù)使用,京東云云數(shù)據(jù)庫(kù) PostgreSQL 的全量備份基于 Slave 實(shí)例,并將備份文件實(shí)時(shí)的上傳到京東云 OSS 上。
PostgreSQL由于其強(qiáng)大的數(shù)據(jù)類型支持及出色的函數(shù)擴(kuò)展及兼容能力,在企業(yè)級(jí)商用數(shù)據(jù)庫(kù)和GIS場(chǎng)景中有廣泛的應(yīng)用,,以下列舉幾個(gè)簡(jiǎn)單場(chǎng)景。
商用數(shù)據(jù)庫(kù)要求高可用、高可靠,往往業(yè)務(wù)邏輯復(fù)雜多變,尤其在金融行業(yè)如交易系統(tǒng)、財(cái)務(wù)系統(tǒng)等涉及到資金流轉(zhuǎn)、客戶信息管理等,要求數(shù)據(jù)不能丟失且實(shí)時(shí)同步。PostgreSQL可保證數(shù)據(jù)一致的前提下提供高可用性和高可靠性,靈活的數(shù)據(jù)類型配置可通過簡(jiǎn)單的編程語句實(shí)現(xiàn)復(fù)雜邏輯的業(yè)務(wù)操作。
物流行業(yè)快遞的配送和攬件算法關(guān)系到快遞配送或攬件的時(shí)效,直接關(guān)系到物流公司的運(yùn)作成本。寄件場(chǎng)景如寄件和攬件同時(shí)發(fā)生如何根據(jù)快遞員所在位置調(diào)度,貨物從終點(diǎn)倉(cāng)庫(kù)到網(wǎng)點(diǎn)的物流調(diào)度路徑問題均是基于地理信息幾何數(shù)據(jù)關(guān)系復(fù)雜計(jì)算的。PostgreSOL支持GIS幾何類型和PostGIS插件,可解決基于位置信息的最短路徑問題。
移動(dòng)互聯(lián)網(wǎng)發(fā)展離不開地理位置信息的存儲(chǔ)、查詢和計(jì)算。應(yīng)用場(chǎng)景如基于LBS應(yīng)用如大型游戲、需要支持世界地圖、O2O附件商家距離計(jì)算、訂單配送等問題,基于用戶所在商場(chǎng)地理位置商家推薦等。PostgreSQL支持SQL運(yùn)行位置查詢,不需要編寫復(fù)雜的代碼即可實(shí)現(xiàn),提高基于LBS存儲(chǔ)與計(jì)算效率。
云數(shù)據(jù)庫(kù) PostgreSQL 是京東云數(shù)據(jù)庫(kù)團(tuán)隊(duì)歷時(shí)1年多的研發(fā)產(chǎn)品,此產(chǎn)品凝聚了京東云數(shù)據(jù)庫(kù)團(tuán)隊(duì)多年P(guān)ostgreSQL使用經(jīng)驗(yàn),提供一個(gè)穩(wěn)定、可靠的數(shù)據(jù)存儲(chǔ)服務(wù)。
云數(shù)據(jù)庫(kù) PostgreSQL 易于部署、管理和擴(kuò)展,默認(rèn)支持主從熱備架構(gòu),提供數(shù)據(jù)備份、故障恢復(fù)、監(jiān)控等全套解決方案,徹底解決數(shù)據(jù)庫(kù)運(yùn)維的煩惱。
同時(shí),京東云數(shù)據(jù)庫(kù) PostgreSQL 通過使用網(wǎng)絡(luò)隔離、使用白名單限制外網(wǎng)訪問等方式,為數(shù)據(jù)庫(kù)服務(wù)提供了高級(jí)別的安全性需求,助您省去絕大部分復(fù)雜而繁瑣的管理工作,更專注于業(yè)務(wù)流程的開發(fā)與建設(shè)。
當(dāng)前文章:比這個(gè)夏天還要熱的PostgreSQL數(shù)據(jù)庫(kù)來啦!
本文網(wǎng)址:http://sd-ha.com/article48/iecdep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、域名注冊(cè)、網(wǎng)站改版、App設(shè)計(jì)、定制網(wǎng)站、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)