0

由於我以前的question沒有答案。我真的想要實現一個自定義的數據庫,這將滿足我的要求。你會推薦給想要寫自己的數據庫的人閱讀什麼?

是的,我知道,聽起來很瘋狂。

但是,你會推薦閱讀哪些書籍,文章等?

如果是無關緊要正在跟蹤我的DB要求

  1. 面向圖形 - 用於存儲圖形和遍歷(如HyperGraphDB,Neo4j的)
  2. 運行在內存中,但有一個持久性存儲設備的優化(如Redis的)
  3. 分佈式(如Membase的)
  4. 只好.NET適配器(TCP/IP,HTTP不是REST)

我不尋找技術細節,只想找到一些理論信息的來源,關於通常如何做,我有什麼選擇。

+0

http://thedailywtf.com/Articles/Announcing-APDB-The-Worlds-Fastest-Database.aspx – bniwredyc 2010-10-26 08:01:23

+0

謝謝,I」我們來看看。 – 2010-10-26 08:11:18

+0

喜歡這個評論:) http://thedailywtf.com/Comments/Announcing-APDB-The-Worlds-Fastest-Database.aspx?pg=3#304432 – 2010-10-26 08:40:46

回答

3

如果你願意花力氣在編碼,爲什麼不加入一個現有的項目和適應/擴展到您的需求?例如,透明分發和只有RAM的數據(可選地保存)位於HyperGraphDB的TODO列表中,所以我們很樂意爲您提供幫助:)實際上,主要的內存主要是HyperGraphDB的原始需求,但它很類似在某些情況下,由於它所使用的項目而變得毫無興趣。

乾杯, 鮑里斯(http://www.hypergraphdb.org)

+1

感謝您的建議,鮑里斯。但是我對Java並不擅長,而且我最後的C++代碼行大約在5年前,所以我認爲我對你的項目不是很好的貢獻者。我已經審查了HGDB(好幾次是我們的項目),但它沒有.NET適配器。而且我們已經有很多已經用.NET編寫的代碼,並且甚至可以深入ASP.NET中進行集成。 – 2010-11-24 12:29:27

0

您可以在上一個問題上開始賞金,以獲得更多關注。但是對於這個問題,我會推薦「不要」。它確實聽起來有點瘋狂,你會花費數月(可能幾年)創造一些東西,只會對現有解決方案進行漸進式改進。

這可能是值得發佈一些項目的更多細節,並解釋你爲什麼有這些要求。您可以通過不同的解決方案組合來滿足您的所有需求(例如:爲什麼#2?爲什麼不能使用緩存而不是在內存中運行?)。

如果這是一個商業產品,那麼我假設你有一個有趣的項目有很多錢燒。如果是個人項目,那麼祝你好運,而且你比我更勇敢! ;-)

+0

首先想到的是「不要」:)我希望大部分答案都是 - 「你不會成功」或「甚至不嘗試」。但正如你所看到的,有很多新的NoSQL數據庫,我認爲這些數據庫開始與我的情況類似。 – 2010-10-26 08:13:02

+0

由於NDA,我不能提供太多的項目細節,但這是一個語義Web /關聯數據相關的項目,這非常有趣。我們在關係數據庫或其他數據庫上的附加層的實驗表明,它非常慢,您必須將所有數據加載到內存中,然後在那裏使用它。緩存不是一種選擇,因爲數據經常更新。 – 2010-10-26 08:16:52

0

你試過mongoDB http://www.mongodb.org/?我認爲它滿足你的要求。告訴我,如果它。

乾杯]>

+0

不幸的是,MongoDB不是面向圖的。 – 2010-10-26 09:24:56

+0

對不起,我不明白圖形和麪向對象的數據庫之間的區別。我會潛入搜索。我以爲你的意思是面向圖的面向對象。 – ikirachen 2010-10-26 12:35:21

+0

可能會有幫助http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=634829 – ikirachen 2010-10-26 12:48:49