Neno 一個基於 Postgres 的 Serverless Database

更新於 發佈於 閱讀時間約 5 分鐘
Neon 是基於 PostgreSQL 的 Serverless Database,具備了 Serverless 帶來的高乘載量、划算的費用與 PostgreSQL 強大的效能的一款開源資料庫服務。

撰文當下為 2023/02/17,目前 Neon 仍處於預覽階段。

什麼是 Serverless

Serverless 是雲端服務的一種型態。以往使用雲端服務都是租一台雲端上的 VM 或是如 RDS 資料庫這種預先處理得好的服務,而只要啟用了就會開始計算費用,無論是否有實際的使用者進行連線。
Serverless 提供一種計價與使用更細緻的的架構,如同使用託管資料庫一樣客戶不需要管理實際的部署、細節的參數或管理伺服器叢集與附載平衡,更進一步達到只有使用了才要付費,算的是實際使用的時間而不是只要租用就需要付費,而由於架構上也是針對實際的 Request 才會產生執行個體來處理請求,因此理論上 Serverless 在架構上就具備了水平拓展的能力,十分適合用來開發 SaaS 服務在乘載量與維運成本達到一個平衡

Serverless Database 是如何實現的

Neon 將資料庫拆離成應用程式儲存空間,可以理解成後端架構常見的無狀態 API 與保存狀態的 Database。
應用程式端用 Compute 來稱呼 Serverless 化的 PostgreSQL 由於沒有了狀態,可以在需要使用時才啟動,也做到沒有使用就不佔算力,而要使用時則可以透過 k8s 調度多組 Compute 來達到即時性的算力提升,這也解決了以前資料庫算力無法水平拓展的問題,有機會讓資料庫內寫 SP 的老專案進行搬移而沒有效能上的瓶頸,或許有機會視為老專案又沒有人力改寫的救星。
儲存空間設計了像是讀寫分離層的 SafekeeperPageserverObject storageSafekeeper 可以理解成是讀寫分離中的寫入 Main Database,而 Pageserver 理解成同步後擔任讀取的 Slave Database,而 Object storage 可以視為是封存資料庫部分資料用以降低負擔的 Archive 層,而不同的是這些過程都不需要使用者煩惱架構,Neon 都會自動處理確保了資料的安全性與足夠經濟的維護成本。
Neno 架構,來自 https://neon.tech/docs/introduction/architecture-overview

資料庫分支功能

除了 Serverless 的好處外,Neno 還具備 Branching 的功能,我們可以像軟體開發一樣,為每一個資料庫分岔出一個獨立的分支,讓程式碼的分支可以完全等於資料庫的結構,避免了共用資料庫造成欄位讀取錯誤的問題,很大程度加速了開發與簡化資料庫管理的問題。
來自 https://neon.tech/docs/introduction/branching

如何申請使用與重點功能介紹

由於目前還是預覽階段而有提供免費方案,可以前往 免費額度的說明頁面 了解並申請服務使用。
由於免費額度的限制,因此看到專案的上限只有一個
Neon Dashboard 上可以看到目前該專案擁有的資料庫分支、連線字串、已使用額度與連線紀錄
Neon 儀表板
我們可以產生分支,並且可以選擇要複製的分支與要複製分支內什麼時間範圍後的資料。
分支一覽
新建分支
選擇是否要產生新的連接端點與複製哪一段時間的資料

優勢與競爭對手

在 Neon 推出之前已有 Amazon Aurora 這樣成熟的 Serverless Database 在市場上,但 Amazon Aurora 是閉源的產品,而 Neon 是開源的專案這意味著有能力的公司可以基於 Neon 進行自託管或是改良其中的邏輯回饋於社群並且獲得更好的體驗。
Neon 在 Docker Hub 上有提供了 Image 可以使用,適用於對資料有高度監管的單位與想要在內部環境搭建的企業。
其獨特的 Branching 機制是目前其他資料庫服務還未看到的,而這樣的機制在我實際公司專案投入下是很大程度了解決了資料庫遷移與版本控制的問題,是一個看上去很普通但實際使用很驚艷的功能,這會帶來很強的競爭力。

目前 Neno 是否可以投入正式環境?

還沒有辦法。
由於目前還在預覽階段,因此不建議投入正式環境,但有提供很佛心的免費的額度可供測試,可以在上面進行開發與測試並且等待正式版本的發佈,這裡是免費額度的說明頁面

實際使用經驗

官方宣稱與 PostgreSQL 15 完全兼容,而測試下來也的確沒有遇到問題,效能上十分的驚艷,也嘗試執行了大量的 SP 來做測試而結果令人滿意。
備份還原機制能準確到秒級的還原,備份還原加上分支的機制對 AP 端產生異常資料時是一個很棒的機制,確保了可以先將有問題的資料分支出來並且還原資料到版本更新之前,不會導致無法找尋問題也可以確保服務不會因此中斷。

參考資料

為什麼會看到廣告
分享網站開發的前端、後端、資料庫與部屬維運技術,並記錄在工作上的心得
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Discord Bot 就是在 Discord 群組中可以回話與管理群組成員的機器人,依據開發者的設計能有不同的功能,這篇文章想要教的是如何向 Discord 申請一個自己的 Bot,日後才會介紹如何開發自己想要的功能。
不論是 GraphQL 與 RESTful API 都需要生態系的支撐,才會好用與完整 這篇會先介紹 GraphQL 的生態系工具。
這裡會針 GraphQL 與 RESTful API 這兩者介面所需要做的事情來比較其應用的場景。
fast endpoints 是一個支援 .NET 6 以上(Nuget 版本清單) 的 API 輕量框架,雖以簡單與高性能為主打,但也提供了很多常用的功能實現,如 Swagger 整合、Jwt 認證、Api 版本控制、APi 速率限制、Api 回應快取…很適合以此為基礎打造 Api 服務。
MongoDB 在排序時會將資料全部載入記憶體,之後在記憶體中進行排序,而預設開放給排序的記憶體只有 32 MB,因此在大量資料排序時就會引發該錯誤。
Discord Bot 就是在 Discord 群組中可以回話與管理群組成員的機器人,依據開發者的設計能有不同的功能,這篇文章想要教的是如何向 Discord 申請一個自己的 Bot,日後才會介紹如何開發自己想要的功能。
不論是 GraphQL 與 RESTful API 都需要生態系的支撐,才會好用與完整 這篇會先介紹 GraphQL 的生態系工具。
這裡會針 GraphQL 與 RESTful API 這兩者介面所需要做的事情來比較其應用的場景。
fast endpoints 是一個支援 .NET 6 以上(Nuget 版本清單) 的 API 輕量框架,雖以簡單與高性能為主打,但也提供了很多常用的功能實現,如 Swagger 整合、Jwt 認證、Api 版本控制、APi 速率限制、Api 回應快取…很適合以此為基礎打造 Api 服務。
MongoDB 在排序時會將資料全部載入記憶體,之後在記憶體中進行排序,而預設開放給排序的記憶體只有 32 MB,因此在大量資料排序時就會引發該錯誤。
你可能也想看
Google News 追蹤
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
簡單來說,就是營收獲利的確有在成長,但成長的速度,跟不上股價的漲幅而已,因為已經注入強力本夢比,所以反應出來的,就是一路上升的本益比和本淨比,以及一路下滑的殖利率。很多飆股,用的也都是這種模式在騙你上車,結果財報出來,或者炒手已經下車,股價就開始急速修正,而且修正的幅度非常慘烈。
機會,真的是令人措手不及嗎? 在365個日子裡,我們專注於等待一個機會,一個好的-機會。 是否因此錯過了什麼? 有個故事是這樣的.... 颱風過後,大家都在忙著自顧自地整理家園,因為這次的災情,各地...都很嚴重。好幾棵樹木倒塌,導致整理遭到阻礙,A甲望望樹的左邊,右邊,又走到前面看看,
Thumbnail
Orderly Network是一個基於NEAR區塊鏈的無需許可的去中心化交易協議及模組化生態系統。本文介紹了Orderly Network的運作機制,鏈上數據分析,投資者結構,和優點和缺點。
Thumbnail
其實也沒有什麼特別的來由?只是感覺自己已經好久沒有喝玉米濃湯了?也有一陣沒有吃到餃子的說? 那就、乾脆把它們都和在一起,做成《 玉米濃湯餃 》吧! ***************************************************************
Thumbnail
經過前兩篇文章(Notion 是什麼?你適合使用 Notion 嗎、Notion 介面一覽及必備設定)的介紹,相信大家對 Notion 的功能及介面有了大致的瞭解,這次想要與大家分享的是我認為 Notion 中最具代表性的功能,Database。
Thumbnail
IaaS 以虛擬化原理運作,企業可從雲端服務商那裡獲得運算、儲存和資料庫等服務,不再需要自己購買設備、管理設備,或託管設備的空間。
Thumbnail
IaaS是一種雲端服務模型,所使用的運算資源託管在公有雲 、私有雲或混合雲中,能將傳統IT硬體設備統整為虛擬的運算資源,而得以針對運算需求彈性地調配資源。
Thumbnail
當我的故鄉 – 香港 – 正面臨被逐步瓦解摧毀,我們可否依樣畫葫蘆,為香港存一個備份,好待劫後復修;或將來在異地重啟?
Thumbnail
臺灣公司品牌Microlife的VSA血壓計在提供準確生命體徵測量的同時,可降低孕產婦死亡率和發病率。本文介紹了這款產品的緣起、重要性、特色以及應用場景,著重在低收入國家中的應用。CRADLE VSA已在多個國家進行專案推廣,取得了令人矚目的成果。
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
簡單來說,就是營收獲利的確有在成長,但成長的速度,跟不上股價的漲幅而已,因為已經注入強力本夢比,所以反應出來的,就是一路上升的本益比和本淨比,以及一路下滑的殖利率。很多飆股,用的也都是這種模式在騙你上車,結果財報出來,或者炒手已經下車,股價就開始急速修正,而且修正的幅度非常慘烈。
機會,真的是令人措手不及嗎? 在365個日子裡,我們專注於等待一個機會,一個好的-機會。 是否因此錯過了什麼? 有個故事是這樣的.... 颱風過後,大家都在忙著自顧自地整理家園,因為這次的災情,各地...都很嚴重。好幾棵樹木倒塌,導致整理遭到阻礙,A甲望望樹的左邊,右邊,又走到前面看看,
Thumbnail
Orderly Network是一個基於NEAR區塊鏈的無需許可的去中心化交易協議及模組化生態系統。本文介紹了Orderly Network的運作機制,鏈上數據分析,投資者結構,和優點和缺點。
Thumbnail
其實也沒有什麼特別的來由?只是感覺自己已經好久沒有喝玉米濃湯了?也有一陣沒有吃到餃子的說? 那就、乾脆把它們都和在一起,做成《 玉米濃湯餃 》吧! ***************************************************************
Thumbnail
經過前兩篇文章(Notion 是什麼?你適合使用 Notion 嗎、Notion 介面一覽及必備設定)的介紹,相信大家對 Notion 的功能及介面有了大致的瞭解,這次想要與大家分享的是我認為 Notion 中最具代表性的功能,Database。
Thumbnail
IaaS 以虛擬化原理運作,企業可從雲端服務商那裡獲得運算、儲存和資料庫等服務,不再需要自己購買設備、管理設備,或託管設備的空間。
Thumbnail
IaaS是一種雲端服務模型,所使用的運算資源託管在公有雲 、私有雲或混合雲中,能將傳統IT硬體設備統整為虛擬的運算資源,而得以針對運算需求彈性地調配資源。
Thumbnail
當我的故鄉 – 香港 – 正面臨被逐步瓦解摧毀,我們可否依樣畫葫蘆,為香港存一個備份,好待劫後復修;或將來在異地重啟?
Thumbnail
臺灣公司品牌Microlife的VSA血壓計在提供準確生命體徵測量的同時,可降低孕產婦死亡率和發病率。本文介紹了這款產品的緣起、重要性、特色以及應用場景,著重在低收入國家中的應用。CRADLE VSA已在多個國家進行專案推廣,取得了令人矚目的成果。