Mercurial > hg > Members > shoshi > jungle > jungle-core
annotate memo.txt @ 262:741297b630f8 Implementation_of_communication
changed name PathNodeIterator to JungleNodeIterator
author | tatsuki |
---|---|
date | Wed, 30 Nov 2016 19:47:47 +0900 |
parents | 28d3a177f540 |
children | 1a5f3d3f3437 |
rev | line source |
---|---|
254 | 1 Thu Nov 17 18:36:13 JST 2016 |
2 | |
3 差分List | |
4 JungleTreeをRedBlackTreeにする | |
5 それ用のAPIを設計する | |
6 Logの書き出しの高速化 | |
7 Buffering | |
8 Mergeの実装 | |
9 APIの設計 | |
10 共通のRootからの複数の変更履歴を一つにまとめる | |
11 JungleNodeに特定Objectをもたせれるようにする | |
12 | |
13 金川 | |
14 | |
67 | 15 Fri Jul 18 19:59:20 JST 2014 |
16 | |
17 servletから最初にBoardNameをKeyにTreeを持ってくる | |
18 ここでConcarentHashMapを使っているが、Jungleそのものを使うことが可能である | |
19 名前とTreeRootの組からなるNodeを持つTreeを作る | |
20 この木は名前でバランスさせる | |
21 変更したらそのRootを伝播させる | |
22 Rootはatomicな変数で持つ | |
23 | |
24 問題は、この名前と木の対応を誰が持つか | |
25 1Nodeで1つにするかThread毎に別に持つ、全体に1つでも問題ない? | |
26 | |
27 | |
1 | 28 2012/06/11 |
29 ・誰が Editor を提供する API を保持するべきか? | |
30 ・Editor の役割 | |
31 ・commit したら必要な Node を NodeProvider に push する。 | |
32 ・ということは, 内部に NodeProvider への参照を保持してないといけない? NodeProvider へのリンクを保持しているのは Jungle である。 | |
33 ・Jungle が NodeProvider を持っているのは正しいのか? TreeGroup でもいいのではないか? | |
34 ・commit したら TreeGroup の情報は破壊される。つまり? commit は TreeGroup に対して行われる。 | |
35 ・TreeGroup のメソッドで Tree を渡して Editor を作成するが良いか? | |
36 ・tree を編集する | |
37 ・Editor は TreeGroup が保持するとする。ならば、NodeProvider はどうするか? | |
38 ・NodeFactory (?) をつくる? NodeProvider と何が違うのか? | |
39 ・NodeProvider は、Tree/TreeNode/Link を作成する。 | |
40 ・NodeProvider で、createTreeGroup , createTree , createTreeNode , createLink を依頼する | |
41 ・初期では、パスの検索は深さ優先探索で行う | |
3 | 42 ・TreeGroupについて、TreeGroupは最初に初期Treeを1つ作らなければならない? |
43 | |
44 2012/06/12 | |
45 ・NodeTable と NodeTable の状態を同期させる。 | |
46 ・Table , Record , PropertySequence をつくる、Record がひとつの Node に対応する | |
47 ・これを用いて Node , TreeGroup , Tree , TreeNode , Link を作成する | |
48 ・ Node : Record の Property で Attribute を表現 | |
49 ・ TreeGroup : Node で表すべき? | |
50 ・ Tree : TreeNode を継承している よって Node で表す、 Children や Links は PropertySequence による. | |
4
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
51 ・ Link : Node で表す。 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
52 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
53 2012/06/15 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
54 ・Functional Java を使って PropertySequence を実装するといいかも? |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
55 ・Record , PropertySequence の hashCode , equals の実装について、ちゃんとテストを作ること!(重要) |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
56 ・なるべく、equals と hashCode はオーバーライドしないようにする、独自の比較メソッドを提供する。 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
57 ・Table , Record , PropertySequence に Atomic なオペレーションを追加する |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
58 ・Table は Record の作成に CAS を追加する |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
59 ・Record は Map と PropertySequence に CAS を追加する。 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
60 ・PropertySequence は・・・いらないか・・ |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
61 ・Jungle の API から getTreeGroups を削除した |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
62 ・Table , Record , PropertySequence では足りない、もっと美味いやりかたがあるはず |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
63 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
64 2012/06/19 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
65 ・Graph API を定義することにした |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
66 ・ Graph , Vertex , Vertexes |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
67 ・Neo4j で言うと |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
68 ・ GraphDB , Node , Iterator<Relationship> |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
3
diff
changeset
|
69 ・とりあえずこれで実装してみる。 |
5
07b26b4b21e0
modified AbstractVertexesTest
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
70 ・今日は、SimpleVertexes をほぼ完成させた、あとすこしとテストコードを追加すること。 |
07b26b4b21e0
modified AbstractVertexesTest
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
71 |
07b26b4b21e0
modified AbstractVertexesTest
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
72 2012/06/22 |
07b26b4b21e0
modified AbstractVertexesTest
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
73 ・Vertexes のテストコードをほぼ仕上げた. |
07b26b4b21e0
modified AbstractVertexesTest
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
74 ・次は,テストコードが正しいか,SimpleVertexes を動作させてみる. |
6
1a5eaf5ce085
modified AbstractVertexesTest and SimpleVertexes to pass the unit test.
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
5
diff
changeset
|
75 ・その次に,Jungle の実装を書く. |
1a5eaf5ce085
modified AbstractVertexesTest and SimpleVertexes to pass the unit test.
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
5
diff
changeset
|
76 |
1a5eaf5ce085
modified AbstractVertexesTest and SimpleVertexes to pass the unit test.
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
5
diff
changeset
|
77 2012/06/25 |
1a5eaf5ce085
modified AbstractVertexesTest and SimpleVertexes to pass the unit test.
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
5
diff
changeset
|
78 ・Vertexes のテストコードが動いた. |
1a5eaf5ce085
modified AbstractVertexesTest and SimpleVertexes to pass the unit test.
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
5
diff
changeset
|
79 ・SimpleJungle などを GraphAPI を用いて記述する. |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
6
diff
changeset
|
80 ・SimpleTreeGroup , SimpleTree , SimpleNode をどうするか |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
6
diff
changeset
|
81 |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
6
diff
changeset
|
82 2012/06/27 |
8 | 83 ・Graph を用いた SimpleJungle の設計をもっと考える |
84 | |
85 2012/06/28 | |
86 ・SimpleJungle 実装を完成させた。テストコードはまだ書いていない | |
254 | 87 ・SimpleEditor の部分がまだだった。明日完成させよう |