最佳實踐 | SequoiaDB單中心三副本部署規劃

2021-02-14 巨杉資料庫
隨著網際網路業務蓬勃發展,大規模高並發交易處理、海量數據處理與分析需求不斷增長的背景下,國產金融級分布式資料庫SequoiaDB巨杉資料庫的統一存儲和管理海量結構化、非結構化數據的能力得到了廣大用戶的認可。
SequoiaDB巨杉資料庫自研的原生分布式存儲引擎支持完整ACID,具備彈性擴展、高並發和高可用特性,基於同一的原生分布式資料庫底座,提供基於內核級的DBaaS雲原生資料庫能力。提供高達8種SQL、NoSQL及對象存儲實例,包括:提供原生的SDB API進行資料庫管理及數據CURD操作;提供兼容 MySQL、MariaDB、PostgreSQL 與 SparkSQL的四種關係型資料庫實例;提供兼容基於JSON的JSON文檔類MongoDB資料庫實例;提供兼容S3對象存儲與PosixFS文件系統的非結構化數據實例。作為一個擁有全分布式系統架構的資料庫,SequoiaDB 支持各種靈活的部署方式。本文主要將以三副本為例,介紹SequoiaDB巨杉資料庫在單數據中心下部署規劃最佳實踐。SequoiaDB 作為一款高性能分布式關係型資料庫,支持 Linux 作業系統環境,支持絕大多數的主流硬體網絡,並能夠部署和運行在 x86及 ARM 架構伺服器環境和主流虛擬化環境。本文所展示的三副本部署規劃實踐中的伺服器配置,如下表所示。(關於更多SequoiaDB的硬體要求可參考文檔:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1561381803-edition_id-500#受支持的硬體平臺)(關於更多SequoiaDB的硬體要求可參考文檔:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1561381803-edition_id-500#受支持的作業系統)本文以三臺物理機伺服器的部署規劃最佳實踐進行探索,首先我們需要對物理機的磁碟進行測試和規劃,規劃時往往需要從以下幾個方面進行考慮:對於磁碟的配置是選擇用裸盤還是用RAID,各有什麼優缺點
問題一:裸盤還是RAID對於磁碟的規劃使用,我們分別進行了兩組實驗來對比裸盤和RAID的性能。1. 磁碟在raid5模式下,LOB數據的寫入性能測試。2. 磁碟在直通模式下,LOB數據的寫入性能測試。模擬場景,向資料庫寫入800w張100KB的圖片,寫入完成之後再觸發全量同步觀察寫入磁碟寫入速度。從以上測試結果可以看出,使用6塊裸盤的寫入性能高於RAID5模式。巨杉資料庫本身以三副本模式進行部署,保證了資料庫的高可用性,因此在一般場景下我們推薦使用裸盤進行部署巨杉資料庫。那麼使用裸盤是否存在什麼弊端,什麼場景下推薦使用RAID5 呢?在使用裸盤的過程中,很多用戶慢慢發現磁碟一旦損壞在更換磁碟的時候需要人工介入進行節點啟停、磁碟掛載等一系列操作,而使用RAID5劃分磁碟就可以完美的避免這些操作,因此當應用對於讀寫性沒有很高時候,使用RAID5可以在滿足性能要求的同時減少故障發生時的人工介入工作。
問題二:數據節點數量規劃

為避免多個數據節點部署在一塊盤上,在業務壓力大時候發生IO搶佔的問題,我們建議按照每塊盤上部署一個數據節點的方式來規劃,最終數據節點規劃方案如下圖。

問題三:如何規劃數據分布

SequoiaDB在集群的管理上定義了數據域、分區組的概念。數據域由若干個複製組(ReplicaGroup)組成的邏輯對象。每個域都可以根據定義好的策略自動管理所屬數據,如數據切片和數據隔離等。分區組又被稱為複製組,一個複製組內可以包含一個或多個數據節點(或編目節點),節點之間的數據使用異步日誌複製機制,保持最終一致。

一個集群可以根據不同的業務系統來劃分不同的數據域,不僅實現將不同業務系統數據在物理層面的隔離存儲,同時也實現了不同業務系統數據的統一調度管理,而且以後的集群擴容也可以根據域的使用需求而只針對此域進行集群擴容,假定將測試環境的數據域按照存儲數據的結構來劃,則數據域規劃方案如下:

 

而在一個域內部,則可以根據業務數據的特性採用靈活的分區管理方式,將一張表的存儲分散到多個物理位置,大大的減少單次操作讀取的數據量,例如對於超大表,多採用多維分區的方式將業務數據集合分成多個子集合,每個子集合的數據分布在數據域內所有的複製組中,對於一些存儲配置信息的小表則可以存儲在指定複製組中,數據存儲示意圖如下:

下面演示一下如何劃分數據域,以及如何通過不同的分區方式來管理超大表和小表。具體步驟如下。

1. 劃分數據域

創建完多維分區表之後,我們簡單插入幾條數據:

{"YEAR": 2021, "Name": "Meppo"}

{"YEAR": 2020, "Name": "Tiny"}

{"YEAR": 2019, "Name": "Tommy"}

{"YEAR": 2020, "Name": "Lion"}{"YEAR": 2020, "Name": "Luna"}

沒有」完美」的規劃,只有合適的規劃,SequoiaDB作為一款開源的金融級分布式關係型資料庫,系統部署規劃方案靈活可配,用戶可以通過數據域的劃分讓用戶可以在複雜集群環境中對資源進行邏輯與物理劃分隔離,可以劃分多個數據組來解決單點數據量大的問題,可以選擇裸盤使用來追求最佳性能,也可以使用硬碟做RAID來降低日常運維的難度,因此只要確認好實際的業務需求,就能制定合適的部署規劃方案。

 

往期技術乾貨

相關焦點

  • 巨杉Tech | SequoiaS3 原理及最佳實踐
    巨杉資料庫安裝完成後包含SequoiaS3服務部署介質。SequoiaS3服務本身不會存儲任何業務數據,用戶可根據業務需求部署多個SequoiaS3服務,服務之間通過F5/Nginx實現服務的高可用和負載均衡,業務系統通過調用標準的AWS S3 Java SDK或者RESTFul接口訪問SequoiaS3服務並操作對象數據。
  • 巨杉Tech | 使用 SequoiaDB + Docker + Nodejs 搭建 Web 伺服器
    SequoiaDB 巨杉資料庫於3.2.1版本正式推出了 Docker 容器化部署方案,本文將會基於 SequoiaDB 巨杉資料庫與 Nodejs 的 Docker 鏡像搭建一個簡易的 Web 伺服器。我們將會搭建一個三分區三副本的高可用 SequoiaDB 巨杉資料庫。同時,我們將會創建一個SequoiaDB 巨杉資料庫的 MySQL 實例,用以提供 Nodejs 作為數據源。
  • HDFS部署最佳實踐
    前面Fayson也介紹過《CDH網絡要求(Lenovo參考架構)》,《CDH安裝前置準備》,《如何為Hadoop集群選擇正確的硬體》和《如何給Hadoop集群劃分角色》,都是和如何正確部署集群相關的。這裡再把HDFS服務單獨拎出來,專門說明一下,希望大家在部署一個Hadoop集群時就進行科學的規劃設計,從而避免上線了,已經存儲了大量數據了還要調優HDFS。
  • 虛擬化建設如何進行五個重要方面的規劃? | 最佳實踐
    存儲資源規劃的目標是戰略性地協調業務應用與存儲基礎架構,從而降低成本、改善性能、提高可用性、提供安全性,以及增強功能。本小節對存儲資源進行整體規劃,包括共享存儲邏輯規劃,存儲空間規劃,存儲I/O控制規劃,存儲分層規劃等。在規劃存儲資源時,我們會遵循如下的指導原則與最佳實踐。
  • 【工程師筆記】VxRail數據服務最佳實踐
    作為軟體定義數據中心(Software Defined Data Center,SDDC)最簡單的構建塊,VxRail支持多種形式的硬體和軟體(2U4節點、1U1節點和2U1節點),其交鑰匙方案可提供最佳的vSAN體驗。
  • DHCP最佳實踐(三)
    如果您有任何最佳做法或技巧,請在下面的評論中發布它們。在本指南(三)中,我將分享以下DHCP最佳實踐和技巧。僅在需要時才使用IP衝突檢測運行DHCP最佳實踐分析器記錄IP位址或我們的IPAM設置DHCP伺服器選項僅在需要時才使用IP衝突檢測當同一LAN上的兩個設備具有相同的IP位址時,會發生IP位址衝突。這導致其中一個或兩個設備在網絡上進行通信時遇到問題。DHCP伺服器具有幫助減少IP衝突的選項。
  • Apache Kafka:優化部署的 10 種最佳實踐
    遵循 kafka 最新的最佳實踐,一定可以讓這個強大的數據流平臺的管理變得非常、非常容易,而且還會相當有效。保持低網絡延遲利用有效的監控和警報讓我們詳細分析一下這些最佳實踐。但是當你在 kafka 旁邊使用 ZooKeeper 的時候,一定要記住一些重要的最佳實踐。ZooKeeper 節點的數量最大應該是五個。一個節點適合於開發環境,三個節點對於大多數產品 Kafka 集群來說就足夠了。雖然一個大型 Kafka 環境可能需要五個 ZooKeeper 節點來減少延遲,但是必須考慮節點上的負載。
  • 伺服器遷移中心 SMC 最佳實踐及新特性介紹
    凌雲時刻 · 技術導讀:本期為「玩轉 ECS
  • 將數據遷移到雲端的最佳實踐
    遷移生產數據時尤其如此,其中將靜態數據上傳到設備上,在遷移過程中將部分副本複製給IT團隊。他們需要一種重新同步數據的方法。 以下是雲數據遷移最佳實踐的指南,這取決於企業數據是否是靜態的,因此資源是離線的或正在產生的。以下還將提供有助於與新數據中心資源集成,以及適應混合或多雲體系結構的有用提示。
  • Nacos 集群部署模式最佳實踐
    這中間我們會引入一些其他組件以解決一些問題,本文標題也可以叫做《Nacos 接入點最佳實踐》。我將會介紹以下三種方案:直連模式、 VIP 模式和地址伺服器模式,並對它們進行對比。2 直連模式直連模式是部署上最簡單,也是最容易理解的一種模式
  • 彈性裸金屬自建ORACLE資料庫單機版最佳實踐
    在創建前,您需要結合具體業務,規劃VPC和交換機的數量及網段等。彈性裸金屬伺服器(神龍):彈性裸金屬伺服器(ECS Bare Metal Instance)是一款同時兼具虛擬機彈性和物理機性能及特性的新型計算類產品,是基於阿里雲完全自主研發的下一代虛擬化技術而打造的新型計算類伺服器產品。
  • 中國聯通MEC邊緣雲架構與部署實踐
    MEC的架構與部署模式,然後介紹了中國聯通首張規模商用MEC網絡的部署實踐,並對MEC部署過程中需要考慮的共建共享、成本及安全等典型問題進行了分析,最後對5G MEC的發展提出了展望。中國聯通MEC邊緣雲架構與部署實踐[J]. 移動通信, 2020,44(7): 36-41.
  • 巨杉Tech | 磁碟故障後SequoiaDB如何實現在線恢復
    文件中 INSTALLDIR 配置的路徑)為 /opt/sequoiadb ,SequoiaDB 資料庫的作業系統管理用戶為 sdbadminn,用戶組為 `sdbadmingroup`。停止資料庫節點1)檢查集群管理服務節點配置文件中 EnableWatch 參數的值是否為 TRUE,集群管理服務節點配置文件所在為路徑為 /opt/sequoiadb/conf/sdbcm.conf。如果為 TRUE,說明集群管理服務節點會檢測節點的狀態,自動將異常掛掉的節點拉起。
  • 【AWS ·服務】VPC 安全的十個最佳實踐
    了解更多關於使用Amazon VPC的最佳實踐,對於無論正在維護現有的VPC網絡,還是計劃遷移到AWS環境的企業,都將是有益的。        VPC 是網絡架構的基礎。設計一個良好的VPC網絡架構需要考慮子網、網際網路網關、NAT網關、虛擬私有網關、對等連接、VPC終端節點等等的合理配置與安全管理,並能滿足業務的需求。
  • 雲原生之路:容器技術落地最佳實踐
    阿里雲資深技術專家易立通過阿里雲容器服務,分享容器技術落地的最佳實踐,希望能夠幫助同學們更好地理解容器技術和雲原生理念,合理地設計上雲架構,充分發揮雲的價值。文末推薦:2020 阿里巴巴研發效能峰會。沒有貨櫃,就沒有全球化。
  • NodeJS部署實踐
    安裝supervisor模塊,自動relaodEXPRESS最新版本需要測測本文主要介紹express線上部署實踐先看一下3個模式啟動開發模式因為我們在開發過程中總是希望修改後立即看到效果,而不是每次都要終止進程並重啟。
  • 第十八屆中國客戶聯絡中心最佳管理人 | 招商銀行信用卡中心客戶服務部AI應用規劃室主管 於歐
    ,本屆評審經過資料評審、現場評審、專家評審三個階段,評選出本年度中國客戶聯絡中心最佳管理人獎項。       CCCS主辦的中國最佳客戶聯絡中心及最佳管理人評審活動歷時十八年,是業內最早,持續時間最長的評審活動,評選出各個領域和各個條塊的優秀單位、個人及最佳實踐。促進了各領域最佳實踐的相互學習、相互交流、相互借鑑。搭建智能客戶服務深度交流的平臺。 個人突出事跡 客戶在哪裡,服務就在哪裡。
  • 中國最佳客戶聯絡中心案例:中移在線服務有限公司
    由51Callcenter主辦,政府聯合主辦,國家工信部、人社部指導的2020(第十三屆)「金音獎」中國最佳客戶聯絡中心及卓越客服體驗評選頒獎典禮上中移在線服務有限公司作為行業代表榮獲「2020中國最佳客戶聯絡中心獎—客戶服務「。
  • 呼叫中心員工管理的十項最佳實踐
    因此,僱用和保留優秀員工是呼叫中心整體運營戰略的一個關鍵組成部分。本文借鑑了世界著名的專業人力資源服務公司PeopleScout的研究和調查結果,並結合自身的項目實施經驗,總結出了十項招聘和保留優秀員工的最佳實踐。招聘高素質員工:呼叫中心應該有完善的人才選拔機制,標準、完善的篩選流程,確保能夠識別和區分高素質人才。
  • 中國最佳客戶聯絡中心案例:巨人網絡全國客服中心
    所屬行業:網際網路所在城市:上海中心建立時間:2004年金音獎最佳實踐案例:上海巨人網絡科技有限公司(原上海徵途網絡科技有限公司)成立於2004年11月18日,是一家以網路遊戲為發展起點,集研發、運營、銷售為一體的綜合性互動娛樂企業。