自動的に移動しない場合はをクリックしてください。
Rails がデータベース層でやってること見るとイライラして精神衛生上良くないから気にしないことにするか。でも気になる。 2012-06-06 19:15:40 via TweetDeck ということでやっぱり気になって色々見てしまう自分です。 Rails の ActiveRecord でツリー構造を表現するのには awesome_nested_set というプラグインがいいらしいというので使ってみました。 awesome_nested_set を使って acts_as_nested_set を指定したモデルにデータを登録すると、次のようなクエリが実行されるようです。 BEGIN; SELECT `sections`.* FROM `sections` ORDER BY `rgt` desc LIMIT 1 FOR UPDATE; INSERT INTO `sections` (`crea
The document discusses various models for storing and querying hierarchical data using SQL and PHP, highlighting the challenges associated with managing comments in threaded discussions. It details solutions like adjacency lists, path enumeration, nested sets, and closure tables, providing examples of their implementation. Each method has its own strengths and limitations when handling hierarchica
はじめに 木構造と呼ばれるデータ構造の一種があります。1つのルート(根)と呼ばれるノードを始点として、(通常)複数のリーフ(葉)と呼ばれるノードまでを経路で結んでできるデータ構造です。その名のとおり自然界にある「木」の構造ですし、学校時代、確率の授業で樹状図を書いた経験のある人もいるでしょう。 この構造は、私たちの周囲にとてもたくさん存在します。家系図や組織図も木ですし、IT関連の例では、ヒープやRDBのインデックス、ディレクトリ(フォルダ)によるファイルシステムやXMLも木構造です。Webの掲示板でも、最初の書き込みをルートとしてそれに対してコメントがつけられ、そのコメントにまたコメントがつけられるというプロセスで木構造を形成します。ここでは1つの書き込みがノードになります。 このように、IT技術と木構造は切っても切れない関係にありますし、多くの分野で応用されてもいるのですが、実は長い
ツリー構造データとRDB ツリー構造データをリレーショナルデータベース(RDB) で扱う場合、以下の4つのモデルが知られていました。 隣接リストモデル (Adjacency List Model) 経路列挙モデル (Path Enumeration Model) 入れ子集合モデル (Nested Sets Model) 入れ子区間モデル (Nested Intervals Model) 閉包テーブルモデル (Closure Table Model) 入れ子集合モデルは、現時点では多くのフレームワークで採用されていて、便利なライブラリが多数のデベロッパーによって開発されています。 第五のモデル Fertile Forest Model (肥沃な森林モデル)は、新しい発想で設計された、第五のモデルです。従来のモデルよりも、次の点で優れています。 ツリー構造データのために追加されるデータ量のコス
社内勉強会資料 追記: 2013-10-31 ついったで指摘( https://twitter.com/akuraru/status/395822183777202176 )を受けたので入れ子集合のノード追加の説明の所を修正しました。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く