2011-01-05 64 views

回答

2

至少在Thrift主幹中,有C語言支持,這意味着可以爲Cassandra創建一個C客戶端。它可能還沒有很好的測試。

posulliv/libcassandra從未完成,只支持Cassandra 0.6。例如,它缺少像超級列支持這樣的幾個功能。

我也開始了C++ client that supports Cassandra 0.7,但目前它還沒有完成。大部分Cassandra API都受支持。至少,它可以是使用Thrift API的一個很好的例子。當然,如果你有能力爲這個項目做出貢獻或者成爲一名C客戶,我想很多人會理解這一點。

+0

嗨泰勒。 Coroebus看起來很有前途!還沒有決定解決方案。創建一個C客戶端是一個很大的挑戰,我從卡桑德拉開始,而Thrift聽起來很簡單。不過我喜歡挑戰,所以誰知道!順便說一下,您的項目缺少許可證文件!謝謝你的幫助 ! – SCO 2011-01-06 16:08:55

+0

是的,我需要把它放在那裏。它將獲得BSD許可。 – 2011-01-08 17:27:24

0

我管理從Cassandra trunk Thrift文件生成C代碼。 我得到以下文件:

  • cassandra.c
  • cassandra.h
  • cassandra_types.c
  • cassandra_types.h

沒有main()函數存在,我想這些應該被鏈接並用作庫,但我沒有找到任何API文檔。

thrift/lib/c_glib/test中的示例沒有顯示任何客戶端測試源... 將深入研究這個問題!

1

我爲Cassandra創建了一個非常基本的概念證明C客戶端,並將它放在github上。它依賴於Thrift中幾乎沒有記錄的C語言支持(如前面的答案中所述)。這個客戶端並不成熟,但是演示瞭如何使用Thrift生成的C文件,並提供了一些基本的功能;它可能是一個更加嚴肅的C客戶端的有用墊腳石。