開啟一個新時代: Apache HBase 1.0 釋出
HBase社群的過去、現在及未來
Apache HBase社群釋出了Apache HBase 1.0.0。它花費了七年時間在Apache HBase專案領域取得了里程碑式的發展,這次釋出提供了一些令人興奮的特性和並未犧牲穩定性的新API,無論線上還是在硬碟上都與HBase 0.98.x相容。
讓我們回顧Apache HBase 專案的過去、縱觀它的現在、展望一下未來。
版本啊版本
在列舉這個版本的詳細特性之前,讓我們來瀏覽一下過去的版本歷史。HBase 始於 Apache Hadoop 一個子專案, 大約在 2007 隨同 Hadoop 一起釋出。三年後,HBase 成為了一個獨立的 Apache 頂級專案。由於 HBase 依賴於 HDFS,所以社群讓 HBase 與 Hadoop 的主版本號保持一致。例如,HBase 0.19.x 可以和 Hadoop 0.19.x 協同工作,等等。
然而,HBase 社群希望可以讓一個 HBase 版本可以與多個 Hadoop 版本協同工作—不僅僅是其所匹配的主版本號。這樣一來,一個新的命名方案就誕生了,新版本將以接近1.0的主版本0.90開始,就像上面時間線中展示的一樣。我們也運用了一種“偶數-奇數”版本的慣例,也就是奇數版本是“開發者預覽”,偶數版本是可以用來發布的“穩定版”。穩定釋出系列包括0.90、0.92、0.94、0.96和0.98(詳見HBase版本)。
在0.98之後,我們把主幹版本命名為0.99-SNAPSHOT,但是我們官方已經用完了所有的數字!欠考慮了,去年 HBase 社群一致認可這個專案已經足夠成熟穩定,可以作為1.0.0版本了。在三個0.99.x“開發者預覽”系列版本和六個 Apache HBase 1.0.0備選版本之後,HBase 1.0.0現在釋出了!看上面的圖表,它是由 Lars George 釋出的時間表,顯示了每個版本的支援週期,及任何開發者預覽版本(例如0.99->1.0.0),如果有的話。
HBase 1.0.0,開啟了一個新時代
1.0.0版本有三個目標
1)為將來的1.x系列版本奠定穩定基礎
2)穩定執行的 HBase 叢集及客戶端
3)讓版本和相容性方面更加明確
包括之前的0.99.x系列版本,1.0.0解決了超過1500個 JIRA 跟蹤的問題。其中一些主要的修改包括:
API 整理和改變
HBase 的客戶級 API 已經發展多年了。為了簡化語義和支援,讓它可以擴充套件並且在將來更容易使用,我們回顧了1.0之前的API。為此,1.0.0引進了新的 API,並且廢棄了一些常用的客戶端 API(HTableInterface, HTable 和 HBaseAdmin)
我們建議您更新您的應用程式來使用新風格的 API,因為這些廢棄的 API 在將來2.x系列版本之後被刪除。進一步的指導,請訪問:http://www.slideshare.net/xefyr/apache-hbase-10-release和 http://s.apache.org/hbase-1.0-api。
所有的客戶端 API 都標識為 InterfaceAudience.Public 類。以表明其是 HBase 官方的“客戶端 API”(更多 Audience 的說明詳見 HBase Refguide 中的“11.1.1HBase API Surfase”)。接下來,所有的1.x 版本的 API 都會與 public 客戶端的類相相容。
使用時間軸協調區域副本的可讀性
作為第一階段的一部分,這個發行版包括了一個實驗性的“使用時間軸協調區域副本的可讀性”特點。也就是說,一個區域可以以只讀模式放在多個區域伺服器上。該區域副本之一將會是主伺服器,支援寫入,其它副本將共享與之相同的資料。對複製副本的讀請求可以為後備的 RPC 請求來提供時間連續的高可用性。檢視JIRA HBASE-10070 瞭解更多詳情。
線上配置修改及來自0.89-fb分支的其它前向移植
Apache HBase 的 0.89-fb 分支是 Facebook 釋出他們的修改的地方。 HBASE-12147 JIRA 的前向移植補丁支援過載伺服器配置的一個子集,而無需重啟區域伺服器。
除了上面所列舉的,還有成百上千的改進和效能提升(提升的WAL pipeline,使用 disruptor, 多 WAL, 更多的off-heap 等等)和漏洞修復以及其它好的東西,太多了就不列舉了。詳細介紹請檢視官方的釋出日誌。釋出日誌和白皮書也包含了二進位制、原始碼和協議的相容性說明、所支援的 Hadoop 和 Java 版本,從0.94、0.96和0.98版本升級的說明以及其它重要詳情。
HBase 1.0.0版本也開始使用“語義版本號”釋出 HBase。換言之,將來 HBase 版本將會使用顯示相容語義的“主版本.次版本.補丁”版本號。HBas e的白皮書包含了所有相容性方面的內容和不同版本之間預計的內容。
接下來
我們將 HBase 1.0.0標記為 HBase 的下一個穩定版本,這就意味著所有的新使用者都應該開始使用這個版本。然而,作為一個資料庫,我們明白,切換到更新的版本可能會花費一些時間。我們將會繼續維護和使用0.98.x版本,直到使用者社群準備結束它的生命。1.0.x、1.1.0、1.2.0等發行版預計將釋出其相應的分支,而2.0.0和其它主要的版本也將如時到達。
兩段讀複製、按列族重新整理、procedure v2、SSD for WAL 或列族資料等等特性也即將到來。
總結
最後,HBase 1.0.0發行版已經走過了一段漫長的道路,大量的核心成員、提交者、貢獻者的辛勤工作帶來了諸多貢獻,我們想對所有的使用者和 HBase 貢獻者致以衷心的感謝!
Keep HBase’ing!
相關文章
- MOSN 1.0 釋出,開啟新架構演進架構
- VS Code Remote 釋出!開啟遠端開發新時代REM
- Apache HBase 1.7.1 釋出,分散式資料庫Apache分散式資料庫
- 用大模型開啟AI新時代,悠絡客UMind新品重磅釋出大模型AI
- Hyperf 3.0 釋出,PHP 新時代PHP
- 開源微服務執行時 Dapr 釋出 1.0 版本微服務
- 多端統一開發框架 Taro 1.0 正式釋出框架
- Westore 1.0 正式釋出 - 小程式框架一個就夠框架
- 完美世界釋出三季報 多個新遊近期開啟新一輪測試
- AsteroidOS 1.0 釋出AST
- Apache Doris(incubating) 成功釋出第一個版本0.9.0ApacheBAT
- 【Android Adapter】是時候開啟Adapter新時代了AndroidAPT
- 十問ChatGPT:一個新的時代正拉開序幕ChatGPT
- 新聞速遞 | KaiwuDB 1.0 - 時序資料庫系列產品正式釋出AI資料庫
- UMind1.0釋出
- HBase啟動報錯:ERROR:org.apache.hadoop.hbase.ipc.ServerNotRunningYetException:ServerisnotrunningyetErrorApacheHadoopServerException
- 大模型開啟人工智慧的新時代大模型人工智慧
- USDD升級,開啟穩定幣新時代
- 萊克天狼星吸塵/洗地一體機閃耀釋出,開創全屋清潔新時代
- Longhorn 1.4 釋出 | 以新版本開啟新的一年
- Brain:一個新AI時代的踐行者AI
- Nano v1.0 釋出!一個 PHP 檔案搭建 Hyperf 應用NaNPHP
- 正式釋出Android Things 1.0Android
- 體素超材料,開啟一個百變機器人時代?機器人
- 位元組釦子AI:開啟全民AI Bot開發新時代AI
- EsParser 1.0 釋出:潛心之作,完全開箱即用
- Wizard 開源文件管理系統1.0釋出啦
- 思科釋出Webex創新功能,引領混合辦公新時代Web
- 重磅!視享科技新品釋出,“鏡”入工業4.0新時代!
- 【首場重磅亮相】KaiwuDB 1.0 時序資料庫線上釋出會明日開啟!邀您共同見證AI資料庫
- 成本直降50% | 阿里雲釋出雲原生閘道器,開啟下一代閘道器新程式阿里
- Apache Airflow 2.3.0 釋出ApacheAI
- Apache APISIX 2.13.0 釋出ApacheAPI
- Apache Kafka 3.0.0釋出ApacheKafka
- 領航全屋吸塵/洗地一體機新時代,萊克新品天狼星重磅釋出
- 迎元旦,慶surging 1.0釋出
- Flutter Live 2018 Flutter 1.0 釋出Flutter
- 如何完成一次Apache的版本釋出Apache
- 智慧養老認證 app:開啟便捷養老新時代APP