Pegasus是小米雲存儲團隊開發的壹個分布式Key-Value存儲系統,它的目標是高可用、高性能、強壹致和高擴展。Pegasus系統的Server端完全采用C++語言開發,使用PacificA協議支持強壹致性,使用RocksDB作為單機存儲引擎。經過兩年多的開發,Pegasus從無到有,到現在支持了近十個業務,正壹步步向著最初定下的目標前進。
Pegasus有什麽特性?
高可用:系統是高可用的,即使在部分服務器掛掉之後,也能在秒級的極短時間內恢復服務,盡量較少對用戶的影響,服務可用度達到99.99%以上。
高性能:系統能夠提供高性能的讀寫服務,線上99%的讀寫延遲控制在5毫秒以內。
強壹致:系統對用戶提供強壹致性的語義,使用戶編寫業務邏輯時更輕松。
高擴展:系統能夠很容易地增減節點,以應對業務負載的變化,並且運維是自動化的。
易使用:系統給用戶提供簡單易懂的庫和接口,方便用戶使用。
Pegasus有什麽價值?
首先,它可以滿足對延遲要求很高的在線業務的需求,譬如廣告業務。另外,它也可以替代Redis系統的壹些使用場景,在滿足壹定性能的同時,提供持久化、高可用、自動運維的特性。
為什麽要開源?
壹方面,希望把有用的東西分享出去讓更多人使用,提升公司的技術影響力。另壹方面,通過開源可以讓外部的力量參與貢獻,壹起把系統做得更完善。