2016-10-08 9 views
-1

IOS/Androidアプリケーションのすべてのユーザーが利用できるようにするには、サーバーにバイナリツリーを格納する必要があります。バイナリツリーをサーバに保存する最も良い方法は何ですか?

私のサーバーに保存するのに最適な(最速の)方法は何ですか?

編集:私はすべてのユーザーがツリー内の値を更新する必要があります。だから私は自分のイベントを私の雲のコードで持っています。私のイベントが発生した

  1. 毎回、私は

おかげ

  • は、サーバー上のどこかに私のツリーを保存挿入したり、そこからノードを削除する必要が
  • その後、ツリー全体を取得する必要があります、

  • +1

    _save_に最も速く、_retrieve_に最も速く、_serialise_に最も速いですか?これらの1つ以上?バイナリツリーを格納するための方法を見てきましたか? – vlaz

    +0

    ツリー全体を解析していますか?IOW:ツリー全体を一度に表示しますか?もしそうなら、データベースはあなたに何かを与えるつもりはなく、より遅くなる可能性があります。しかし、セクションでツリーを表示することができれば、正しい索引付けのようにデータベースが理想的です。ローディングは非常に高速です。一例として、パーツビュー(Bill Of Materials)がありますが、それはデータベースに格納する良い例です。 – Keith

    答えて

    2

    定期的に、何かをデータベースに格納する方法に関する質問があります。それは正しい質問ではありません。

    正しい質問は、をどのように使用するかを考えて、何かを保存する最も良い方法はです。あなたの質問には、バイナリツリーで実行したい操作に関する情報はありません。その情報がなければ、データ構造を示唆するのは無理です。あなたの質問には実際には多くの回答がありますが、その中から選択するのに十分な情報がありません。例として

    • あなたはそれを解析するために、アプリケーションのロジックを使用して、単一のフィールドに文字列またはBLOBデータ構造として、バイナリツリーを保存することができます。
    • 親に逆参照を使用してバイナリツリーを格納できます。
    • ツリーをネストされたセットとして格納することができます。
    • フルパス参照を使用してツリーを格納できます。
    +1

    コメントが長すぎるとは限りません。 –

    +1

    "正しい質問は、あなたがどのようにそれを使うかを考えて何かを保存する最良の方法です。あなたの質問には、バイナリツリー上で実行したい操作についての情報はありません。あなたの質問には実際にはたくさんの回答がありますが、その中から選択するには十分な情報がありません。これはコメントとしてのあなたの答えです。 – vlaz

    関連する問題