web-dev-qa-db-ja.com

グラフデータベース-会社に賭けますか?

Neo4jを見ると、320億の関係制限が心配です(500枚の写真をアップロードし、500人の友達がいて、500件のコメントを投稿し、気付かないうちに320億人を超えている4000万人のユーザーを想像してみてください)。使用するデータベースで最適な選択をしていることを確認する必要があります。

ない主観的な答えを探したり、ここで議論したりする-つまり。どちらが良いかなど-むしろ、グラフデータベースが使用するものにスタートアップの将来を賭けているので、さまざまなデータベースのリスクを知る必要があります現在、Neo4jの関係は320億を超えていません。

現在、いくつかの企業が自社のグラフデータベースを「主要なグラフデータベース」と呼んでいます。しかし、誇大広告を過ぎて見てください-最も財政的な裏付けがあるのはどれですか?どのデータベースが大規模なコミュニティサポートを楽しんでいますか?商業的支援のためにその背後に確固たる会社を持っているのはどれですか?

十分に成熟している可能性が最も高いので、必要に応じて、最小限の労力で簡単にFacebookを作成できますか?

技術的な特徴や親しみやすさに関するグラフデータベースを選択するのは簡単ですが、それ以上のものを探しています。会社から数年がまだ残っていることを確認したいと思います。誇大広告と現在(一時的に?)の勢いに基づいてNeo4jを選択しないようにしたいと思います...

そして、他のグラフがNeo4gjと競合して、facebookに似た本格的なソーシャルネットワークを作成できることを繰り返します(ここでも、より良い結果を求めていないで、強固な競合他社を探しています)。

これを主観的なネオ対デックスの議論に変えないでください-事実と固体の答えだけをお願いします。

35

Michaelは私を殴りましたが、Neo4jに答えて、他の人に他のテクノロジーについて答えさせて、付け加えさせてください。

以下のリンクには、Neo4jコミュニティの状態、製品の採用、および製品の背後にある会社に関するさまざまな事実が含まれています。

http://blog.neo4j.org/2013/01/2012-year-in-review-happy-2013-it-looks.html

以下のリンクは、今年のロードマップを示しています。これにより、現在のサイズ制限が解除されます。限界は、価格性能比が少し異なっていたときに選択された、単にスペース性能の最適化です。今年はいくつかのポインターサイズを増やす作業を行い、今後数か月以内に実用的な上限のないバージョンをリリースします。

http://blog.neo4j.org/2013/01/2013-whats-coming-next-in-neo4j.html

非常にアクティブなWebサイトの裏側に、Neo4jクラスター内のFacebookソーシャルグラフの半分を含む本番インストールがあります。私が知っている(どのデータベース管理システムでも)クロスリージョンのAmazonデータベースクラスターは、Neo4jで実行されているクラスターだけです。10個のインスタンスが米国、アジア、ヨーロッパに広がっています。世界最大の小包配達サービスの1つは、Neo4jを使用してすべてのパッケージルーティングを実行し、ピーク時に1秒あたり2000以上のパッケージをルーティングします。パッケージがシュートを滑り落ちるときに、文字通りリアルタイムで決定が行われます。彼らは去年の秋にライブになり、クリスマスは何千万人もの人々のために起こることができました。さらに多く。これはサンプリングです。

素晴らしいグラフの世界へようこそ!最終的にどのようなソリューションを選択しても、グラフデータベースコミュニティの一部としてあなたを迎えることができてうれしいです。

フィリップ

10
Philip Rathle

免責事項:私はNeo4jのために/と一緒に働いています

ここで成熟度について話しているだけです(技術ではありません) Neo Technology 以上の企業として 50人の従業員、2500万ドルの資金 そして50万ダウンロードの繁栄しているユーザーベース、毎月30kの新しいデータベースが実行され、アクティブなコミュニティがなくなることはありません。 SOの質問 をチェックして、コミュニティの活動を確認することもできます。

Adobe(Neo4jでクリエイティブクラウドを実行)、Cisco(Org-Management、MDM)、Viadeoなどのソーシャルネットワーク、多くの求人検索会社(GlassDoor)などの大規模なドメインから、多くのドメインに customers の健全なセットがあります。など)は、iOSで人気の「紙」アプリを公開した53人のようなスタートアップに。

私たちのコミュニティサイトneo4j.orgは、始めるのに適した場所です。開始するには、そこにあります 紹介コンテンツ および プログラミング言語ドライバー)に関する情報 および デプロイメント これは開始に役立つはずです。

Emil、Ian、Jimは、O'Reillyとの「グラフデータベース」に関する入門書を執筆しました。これは現在 無料の電子ブックダウンロード として入手できます。

つまり、私たちは自社製品だけでなく、より大きなグラフエコシステムにも配慮しており、多くの カンファレンストークミートアップグループ (世界中で41)とサポートがあります。オープンソースのエコシステム。

それがあなたの決定に役立つことを願っています。

P.S.あなたの懸念について:サイズ制限(とにかく人為的に) 今年は増加します

17
Michael Hunger

ですから、私は昨年、グラフデータベースをテストして使用してきました。 320億を超える関係を必要とするノードがあるかどうかについて、知識に基づいた推測を行うことができるほど十分にデータを知っているのはあなただけだと思います。これが制限であるほとんどの人にとって正しい多くのユースケースはないと主張します。しかし、それは絶対的なものではありません。

Neo4jは素晴らしい製品です。十分に文書化されており、maxdemarziのような人々が優れたブログ投稿を書いている (http://maxdemarzi.com/ など)-これにより、neo4jのパワーと洗練さをすぐに理解できるようになります。 (さらに、彼はあなたが質問を持っていればあなたの質問に答える素敵な人です)

規模が問題になる場合は、Titanもご覧になることをお勧めします http://thinkaurelius.github.com/titan/ 。この背後にいる人たちは素晴らしいです、そしてそれは大規模な規模を対象としています。市場ではneo4jほど確立されていませんが、強力であり、基盤となるストレージとしてCassandra、Hbase、BerkeleyDBのいずれかを選択できるため、優先順位にある程度の柔軟性があります。

Neo4jは、十分な支援を受け、資金も豊富な企業であり、実際の収益を上げています。それはどこにも行きません。タイタンは小さいですが、急上昇していると思います。

真実はそれがすべて新しいスペースであるけれどもです。 Postgres、MySql、またはOracleの企業力ほど確立されたものはありません。自分をからかわないようにしましょう。

ただし、グラフデータベースコミュニティは比較的小さく、フレンドリーで親切です。それは素晴らしいイベントを実行します-私は素晴らしいNeo4jのGraphConイベントにいました、そして私は素晴らしいタイタンの男たちによるいくつかの講演に行きました。最終的にFacebookになりたい場合は、最終的には自分でインフラストラクチャを構築することになります。規模があり、次に、所有する必要のあるデータセンター、つまり小国の規模があります。

最後に1つ考えます。 4,000万人のユーザーの問題とその根底にあるインフラストラクチャの課題は、十分に資金を提供された企業にとっての問題です。 4,000万のユーザーに到達することはできず、資金を集めたり、独自のインフラストラクチャを構築するための資金調達に必要な収益を生み出したりすることはできません。絶対に4000万人のユーザーがいるときに今すぐ計画を立てることができます。頑張れ。それはスタートアップの初期段階の面白さです。しかし、あなたのより大きな問題は、最初の百万または千万にさえ達することです。そのために、これらのデータベースのいずれかを使用すると、堅実な製品で最も早く市場に参入できます。

15
Richard Jordan

私のアドバイスは、 Blueprints のような標準APIでアプリケーションを構築することです。ブループリントのメインページには、利用可能なさまざまな実装が一覧表示されます。このようにして、拘束されることなく、その時点でのニーズ(サイズ、速度、価格)と市場の状態に基づいて最適な実装を選択できます。

10

私たちは2010年からNeo4jと協力しており、私たちの会社だけでなく、オープンソースプロジェクトにもかなりの時間を費やしてきました( http://www.ohloh.net/p/structr )。詳細を読むことができる2012年2月からのブログ投稿があります:

http://structr.org/blog/the-story-behind-structr

確かに、私たちの会社はかなり小さいです。しかし、Neo4jを使用した約12のプロジェクトを実施しており、現在も実施しており、結果に本当に満足しています。

Neo4jの背後にあるコミュニティは活気があり、オープンで、常に非常に協力的です。あなたはアイデアを得るためにミートアップイベントの1つに行くべきです。 :-)

リチャードが言ったように、財政的事実は疑問の余地がありません。私が最も印象に残っているのは、収益を生み出さなければならない営利会社であるにもかかわらず、Neo Technologyの人々は彼らが何をすべきかを知り、愛し、オープンソースモデルに真剣に取り組んでいる熱狂的なファンであることです。

そうです、私は偏見がありますが、理由がないわけではありません。 :-)

6
Axel Morgner

優れた応答に追加するには、ライセンスも考慮する必要があります。プロジェクトがGPLv3要件を満たす完全なオープンソースである場合、neo4jのようなものが最適な方法です。ただし、独自のシステムで使用する場合は、neo4jエンタープライズライセンスを購入するか、Titanなどのライセンス制限の少ない別のデータベース(MITまたはApache 2ライセンス)を使用する必要があります。

これは、ライセンスを確認するための優れたリソースです: http://en.wikipedia.org/wiki/Graph_database

1
David Stevens

あなたが求めていることと、あなたが焦点を合わせるべきことは、2つの異なるものです。

以下はあなたの質問に答えるものではありませんが、あなたや他の開発者がここで実際に何が行われているのかを考えるのに役立つことを願っています。

  • 要件と目標は必ずしも明確ではありません-そしてそれは大丈夫です。状況は変化し、製品はそれらの変化に対応できるはずです。それがスタートアップの本質です。したがって、私は以下を提案します製品ではなく、実装に焦点を当てる。言い換えると、実際の実装ではなく、データベース実装(たとえば、Neo4jが実装するブループリント)の抽象化を構築することで、ライセンス問題に縛られないようにしたり、将来的にライセンスの問題に悩まされたりしないようにします。必要に応じて、データベースの実装を簡単に切り替えることができます。あなたはあなたの最初の決定の正しさに関して将来より明確な絵を得るでしょう。とりわけ、必要なときに変更する準備ができています。
0
BKSpurgeon