日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

揭秘下一代云数据库引擎MyBasefor PostgreSQL

發布時間:2024/9/3 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 揭秘下一代云数据库引擎MyBasefor PostgreSQL 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介:在MyBase中,PG引擎除了包含RDS所有的能力,還包含GIS、分詞搜索、精準營銷、復雜SQL、Oracle兼容擴展和圖像識別等核心能力。

一、PostgreSQL引擎核心能力


PostgreSQL功能圖


在MyBase中,PG引擎除了包含RDS所有的能力,還包含GIS、分詞搜索、精準營銷、復雜SQL、Oracle兼容擴展和圖像識別等核心能力。


1.GIS


GIS是一個地理信息系統,隨著移動的終端還有帶GPS傳感器的普及,實際很多的業務里都有經緯度的信息。


以共享單車為例,車內裝有GPS系統,方便用戶查看自己的行駛軌跡,同時后臺可以做行為軌跡的分析,共享單車使用的熱點等都與GIS相關。


針對GIS這塊功能,我們有一個強大的時空內核研發團隊在做支持,目前GIS相比較于開源的版本有50倍的性能提升,這里面主要體現在移動對象處理。


移動對象處理通常使用在公安緝查等方面,例如公安鎖定了某位嫌疑人之后,可以通過移動對象信息查詢到他的軌跡,根據嫌疑人的軌跡迅速鎖定相似軌跡或有密切接觸的對象,有效提高公安辦案效率,是一個具有特殊社會價值的功能。


2.分詞搜索


分詞搜索是PG引擎里的一大特色。


分詞搜索目前廣泛存在于各個業務場景,如文檔系統,社交聊天系統等。單獨建一個搜索引擎需要很大的成本,包含硬件成本,軟件成本,維護成本等。


對于企業來說,首先本身數據庫的數據量并不算很大,其次單獨建立一個搜索引擎,意味著要將數據庫的數據同步到搜索引擎,將會引出許多問題,例如同步的延遲,如果是異構數據庫的話可能導致數據不一致,因此單獨建立一個搜索引擎對企業來說,性價比十分低。


PG引擎內置的分詞搜索解決了企業的這個難題,且相較于傳統關系型數據庫,性能提升了1000倍。


3.精準營銷


精準營銷常見于銷售業務相關場景。


精準營銷通常涉及根據用戶行為構造用戶畫像,然后查詢用戶的興趣點,根據用戶的興趣點進行搜索,這里我們支持了向量相似的索引。


我們根據用戶本身的特征或商品的特征進行數字化,就會儲存浮點向量。然后我們基于浮點向量做相似檢索,這種方式相較于全盤掃描,性能上有提升了1500倍,在千萬級別的向量里可以做到毫秒級的相似召回。


4.復雜SQL


隨著業務的發展,如今的業務已經不像以前那樣 簡單的增刪改查,完全沒有連表的查詢。如今的業務,特別是企業上云,許多企業的ERP系統、CRM系統里的關系都特別復雜,可能存在幾十上百張表的關聯。


PG引擎針對這一塊做出許多優化,相較于其他引擎,PG的性能提升20倍以上。


5.Oracle兼容擴展


目前PG在數據庫領域的地位與Oracle旗鼓相當,是一個功能全面的產品,因此PG引擎內置Oracle兼容擴展包,可以兼容最常見的一些數據類型、函數和package。


6.圖像識別


PG引擎與螞蟻聯合推出的圖像識別插件:pase,這個插件相較于暴力計算的圖像識別,性能提升了2萬倍,已經被廣泛應用于新零售商店、銀行網點。



二、使用云數據庫服務給DBA帶來的問題


(一)問題一:架構、監控、優化等


  • 解決這些問題主要存在以下幾個困難:
  • 當無法解決架構問題時,許多用戶會選擇放棄原有數據庫,選擇其他類型的數據庫產品重新構建數據庫,這樣往往導致原有的機器堆積,耗費高昂的人力、資源與精力,并且不一定能解決問題;
  • 公司選擇培養對應方面的人才來解決問題,但存在學習時間周期長,并且人才流失情況嚴重,對公司造成一定損失;
  • 如果招聘相應的高端人才來解決問題,除了在招聘上的難度,還需要配備1對1的Backup防止特殊情況發生,這會造成工作強度不飽和,成本較高;
  • 求助搜索引擎或者社區,響應時間過長,無法及時解決問題。

    • 針對以上問題,使用PostgreSQL有以下幾個優點:
  • 上千位資深PostgreSQL專家組成的資源池,7*24技術咨詢;
  • DBA可以將更多時間投入到業務優化、架構設計等關鍵事務,消除能效比較低的重復勞動,為企業創造更多價值。

  • (二)問題二:Bug


    Bug分為社區內核Bug與插件Bug。


    • 常見的社區Bug解決方法:
  • 報告給社區,用時1天左右;
  • 等待社區修復,用時2~5天左右(理想情況);
  • 下載社區Patch,自行驗證,用時5天左右;
  • 制定升級計劃,升級,用時1天左右。

    • 常見的插件Bug解決方法:
  • 報告插件作者,用時1天左右;
  • 等待作者修復,用時5天以上,時長無法保證;
  • 下載Patch,自行驗證,用時5天左右;
  • 升級插件,用時1天左右。

    • 針對Bug問題,使用阿里云PostgreSQL有以下好處:
  • AliPG兼容開源PostgreSQL,阿里云專業內核團隊為AliPG代碼兜底;
  • AliPG與公共云一套源碼,大量商業用戶應用的選擇,有BUG盡早修復;
  • 用戶可在云端點升級版本按鈕,或配置自動升級任務解決問題。

  • (三)問題三:無法滿足業務需求


    當前開源數據庫在某些情況下可能無法滿足業務需求,用戶需要有內核研發能力才能自己添加功能,例如以下常見的社區版本無法滿足的安全問題:

  • DBA、SA有權查看、篡改、刪除敏感數據;
  • 普通用戶可以通過Security Invoker屬性來設置陷阱函數;
  • 敏感信息(例如用戶密碼)可能明文出現在SQL審計日志、歷史SQL命令、共享內存(例如會話狀態、pg_stat_statements跟蹤會話)、DBlink視圖、外部表User Mapping的定義中。

    • 針對以上問題,使用PostgreSQL有以下幾個優點:
  • AliPG擁有大量商業用戶,覆蓋眾多行業,AliPG圍繞行業痛點,不斷擴展實用功能;
  • 自研插件18款(詳見產品手冊),覆蓋GIS,冷熱分離,分詞搜索,圖像識別,安全加固等場景。


  • 三、PostgreSQL在MyBase的核心能力


    阿里云提前洞察行業需求,用技術幫助客戶突破商業邊界。PostgreSQL核心能力主要體現在三個部分:更快的業務體驗價值、更穩和更安全的核心業務必要能力,以下進行詳細拆解分析。


    (一)提升更快的業務體驗價值:更快


    阿里云在研發產品的同時一直與客戶保持溝通與交流,了解行業場景存在的問題,阿里云基于這些場景問題做出如下優化:

  • 圖像識別、向量相似搜索
  • 實時營銷、用戶畫像
  • 短視頻、實時推薦
  • GIS MOD移動對象處理

  • 阿里云PostgreSQL使用了螞蟻集團的人臉識別技術,在數據庫里使用了新的索引結構。我們知道,如果要做到快速查詢,需要在查詢前做好預計算,或者讓數據庫存儲適合查詢。因此我們使用了兩種圖像搜索的算法,重新組織圖像的特征值(即浮點),使得性能提升了20000倍。


    我們通過與短視頻或社交類行業的公司接觸,根據用戶的喜好在內核做了優化,在向量相似搜索方面取得了上千倍的性能提升。


    實時營銷中會有跟用戶畫像相關的數據組織,在移動對象的處理如協助公安辦案等方面也有一個性能的大幅提升。


    (二)核心業務必要能力:更穩


    • 更穩體現在Paas多租戶場景:

    大并發大量元數據、大量連接優化;

    資源隔離優化。


    在數據庫中特別是在PG里面,如果連1萬個連接再去跑TPCB的話,存在許多更新、插入的操作,導致性能直線下降。AliPG針對這個問題做了大量連接、進程內耗的優化。


    所謂的租戶業務場景如SaaS類的業務包含了許多企業,在這種數據庫里會有上千萬個Scheme,有許多原數據。這里可能出現資源之間相互爭搶,某一企業使用時將資源全部用光,從而影響其他的企業。我們通過將資源隔離優化,從而使得企業在使用數據庫時不會與其他企業產生資源爭奪的情況。


    (三)核心業務必要能力:更安全


    • 安全加固場景:

    1)敏感信息加密, 函數調用陷阱規避;

    2)SGX全加密;

    3)最大保護、最高可靠、最高可用模式;

    4)Slot Failover。


    PG的社區版本存在函數調用陷阱的問題,例如某用戶創建了一個視圖,視圖后面調用的Fuction設置為Security Invoke,表示判斷這個函數的權限時是以調用這個函數的用戶的權限判斷的。當該用戶為普通用戶時,他執行Drop Database操作時,系統會報沒有權限。但是如果用戶將drop database封裝到一個函數,并且把權限設置為上述模式,同時用戶將它偽裝為一個常見視圖,當某位權限較大的用戶,如DBA管理員上線看見這個視圖并被迷惑且同意該操作后,則會完成Drop Database操作,造成重大損失。


    阿里云PG解決了這樣的問題,這樣的函數陷阱在阿里云云端數據庫是不存在的。


    我們還支持保護模式,最高可靠、最高可用模式,這些在PG社區版本里面是不支持的。這意味著我們可以在兩節點里實現全同步、半同步以及異步的效果,滿足了不同行業對數據庫可靠性的要求。


    關于Slot Failover。用戶在用一個開源數據庫時,通常會用數據庫的流復制做HA,在主節點里創建Slot做邏輯復制,例如業務里的某些表希望同步到另外的B業務中,只需要同步若干表而不是所有的數據。包括做增量的數據遷移、數據同步或異構同步,比如我要把你數據庫里的數據同步到我們的消息隊列,然后再通過消息隊列同步到其他業務,這是目前業界非常通用的做法。


    如果是以上情況,在PG社區版本一旦主備發生切換,Slot位點會丟失,因為在從庫里沒有那個位點,從而導致業務上的故障。


    阿里PG在主庫里面創建Slot會同步到從庫,從而保證發生HA時Slot的信息不會丟失,從而解決了把數據庫里的數據增量同步到其他業務的問題。


    (四)MyBase


    有些用戶擔心使用RDS后不過自由,那么PG引擎的MyBase是個不錯的選擇,它開放了OS權限,允許用戶原來的系統整合到新系統,堪稱RDS PLUS。


    • MyBase具備以下特點:

    1)既要: 全自動(DB全生命周期管理,自動化運維、診斷),解放雙手

    -救DBA于水火


    2)又要: 自主可控,隨心所欲

    -開放OS權限開放數據庫ROOT用戶

    -開放調度策略,自定義超賣,實現超高性價比


    3)還要:低成本、可定制、有內核兜(背)底(鍋)

    -內核Bug快速Fix,提新功能需求有研發支持。



    原文鏈接:https://developer.aliyun.com/article/782615?

    版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。

    總結

    以上是生活随笔為你收集整理的揭秘下一代云数据库引擎MyBasefor PostgreSQL的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。