<big id="yeiyz"><ruby id="yeiyz"></ruby></big>
    <track id="yeiyz"></track>
    <track id="yeiyz"></track>
    <p id="yeiyz"><del id="yeiyz"></del></p><td id="yeiyz"><option id="yeiyz"></option></td>
    1. <p id="yeiyz"></p>

      <td id="yeiyz"></td>

      Kafka “孕育”了一款開源關系數據庫:KarelDB

      局長
       局長
      發布于 2019年10月10日
      收藏 26

      Java 開發者對 Apache Kafka 應該不會感到陌生,這是一個分布式的發布訂閱消息系統,作為一個非常重要的開源項目,它已經被許多公司以及產品用作關鍵組件。Kafka 及其配套的 Key-Value 存儲系統如今也越來越多地被用來為關系數據庫提供持久性存儲,大多數數據庫也使用 Key-Value 存儲系統作為基礎。

      本文將要介紹的這款數據庫正是由 Apache Kafka 提供支持,它同樣使用了來自 Kafka 配套的 Key-Value 存儲系統。

      近期面世的 KarelDB 是一款關系數據庫,它幾乎完全基于開源組件構建,包括用于 SQL 引擎的 Apache Calcite 以及用于事務和控制功能的 Apache Omid。到目前為止,這款數據庫僅支持單節點,但 KarelDB 的作者表示它在將來會擴大支持規模。

      和其他的新興數據庫一樣,KarelDB 同樣基于 Kafka 的嵌入式 Key-Value 存儲系統和名為 KCache 的內存緩存(in-memory cache)。默認情況下,KarelDB 使用配置成 RocksDB 緩存的 KCache,由應用廣泛的 Kafka 流處理軟件提供支持。

      KarelDB 的作者,同時任職于 Confluent 公司(基于 Apache Kafka 提供流數據平臺的供應商)的 Robert Yokota 表示:“這使得 KarelDB 能夠支持規模更大的數據集和擁有更快的啟動時間。”他還在最近介紹 KarelDB 的博文中補充道:“KCache 可被配置成使用內存緩存而非 RocksDB。”

      與 Confluent 基于 Kafka 的平臺不同,KarelDB 不是流數據庫。盡管如此,Yokota 還是選擇了關系數據庫,主要是因為它基于 Kafka 支持的開源組件。因此,他認為 KarelDB 有機會流行起來。這些開源組件包括 Calcite,它是一個 SQL 框架,支持將關系查詢推送到數據存儲系統,這個方法被認為可以提供更高效的處理。Yokota 表示 KarelDB 會從即將推出的 Calcite 優化機制中“自動受益”。

      與此同時,Apache Omid 框架與 KarelDB 一起使用,以支持 Key-Value 存儲系統上的事務。Omid 最初被設計為面向 HBase NoSQL 數據庫的事務管理器,但由于它使用現有的 Key-Value 存儲系統來維護事務元數據,因此與 KCache 輕松地配套使用。

      Yokota 指出,KarelDB 將類似的功能堆疊在 KCache 的上面以管理事務。Omid 還使用一種獨有的名為多版本并發控制(multi-version concurrency control)的技術,以在其他關系數據庫中實現“快照隔離(snapshot isolation)”機制。此外,KarelDB 還支持作為嵌入式數據庫或服務器運行。在第二種情況下,它使用 Apache Avatica 來支持遠程過程調用傳輸協議(Remote Procedure Call wire protocol)。

      Yokota 還認為使用 Kafka 運行這些開源組件有許多優點,其中一個就是多臺服務器能夠“追蹤”同一主題集。也就使得多臺 KarelDB 服務器可以作為一個集群運行,而不會產生單一故障點。”

      對了,KarelDB 名字的靈感來自一位科學家 —— 它以捷克科幻小說作家 Karel Capek 的名字命名,Karel Capek 被認為發明了“機器人”(robot)一詞。此外,還有一門編程語言也是以他的名字命名。

      來源:https://www.datanami.com/2019/09/30/kafka-spawns-open-source-kareldb/

      本站文章除注明轉載外,均為本站原創或編譯。歡迎任何形式的轉載,但請務必注明出處,尊重他人勞動共創開源社區。
      轉載請注明:文章轉載自 OSCHINA 社區 [http://www.url23.com]
      本文標題:Kafka “孕育”了一款開源關系數據庫:KarelDB
      加載中

      精彩評論

      冰力
      冰力
      毫無新意
      eechen
      eechen
      正常,同樣支持PubSub消息訂閱和發布的Redis,本質上也是一個數據存儲系統.

      最新評論(5

      xiaoshiyue
      xiaoshiyue
      ??
      冰力
      冰力
      毫無新意
      c
      crystalsis
      關系數據庫
      eechen
      eechen
      正常,同樣支持PubSub消息訂閱和發布的Redis,本質上也是一個數據存儲系統.
      c
      crystalsis
      一個是數據庫附帶訂閱發布,一個是訂閱發布附帶數據庫??
      返回頂部
      頂部
      聚看影院