• 検索結果がありません。

分散フレームワークChristieと分散木構造データベースJungle

N/A
N/A
Protected

Academic year: 2021

シェア "分散フレームワークChristieと分散木構造データベースJungle"

Copied!
8
0
0

読み込み中.... (全文を見る)

全文

(1)情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. Christie. Jungle †1 RDB RDB RDB. DB Jungle. Jungle. Atomic. DB Jungle. Index. Push/Pop Key O(log n) Jungle. balance. Jungle Jungle Alice1) Merge. Log. Shinji KONO. Jungle Jungle. †1. An-. 1.. drew File System Internet Alice. ad-hoc. Jungle. HTTP. MySQL. Postgress. 2.. Alice. HTTP HTTPS HTTP WebDAV. CORBA KVS HDFS. ( ). Cassandra. OS. †1. 2). • • • Code Segment. Alice Data Segment. Information Engineering, University of the Ryukyus.. ⓒ 2018 Information Processing Society of Japan. 1.

(2) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. Code Segment Data Segment Segment Manager. key. Segment Manager take/put. tree_name. Data Data Segment. Linda. root -1. 0. Remote Data key Tuple space Linda. 1. 0. .... 1. Tuple space Alice TopologyManager. 0. n. 2. 1. 3. 2. 3. 編集対象. NodePath<-1,1,2,3> 1 NodePath. TopologyManager. KeepAlive Heart-. Index. Index Index Red Black Tree. beat. 3.. Java. Jungle. Jungle. Web Web URI. URI O(n) RDB Web O(1) Jungle XML. PushPop API. Jungle RDB O(1) PushPop. Json. Log Differential Differential Jungle. Jungle Jungle Tree Tree. Atomic URI log. Sub Tree. Commit Sub Tree. Alice Jungle. Append. NodePath NodePath. NodePath (. -1 <-1,0,2,3 >. Jungle. Red Black Tree. 1) O(log n). Index. Jungle Jungle RDB Reb Black Jungle Tree. Node. Path. ⓒ 2018 Information Processing Society of Japan. 2.

(3) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. 4. Jungle. 5. Jungle. Jungle. Alice. Alice. Jungle. Alice. Alice Jungle. Alice Jungle Jungle Alice. Alice. Alice. DataSegment. (Split Horizon) Merge Merge. Merge. DataSegment CodeSegment. Merge SNS DataSegment. Alice Alice. Jungle Toplogy Manager. Jungle DB ByteBuffer. Jungle Either. Merge. ②. Alice. Server node 0 ③. ③. ① Server node 1 ④. ①. Singleton Alice. NAT. Server node 2 ④. Server node 3. DataSegment. Alice. Server node 4. 6. CodeSegment 2. ( 2 ( 1 ) servernode 1, servernode 2 servernode 0 (2) Merge ( 3 ) Merge servernode 1,servernode 2 ( 4 ) servernode1 Merge servernode 3 servernode 4. CS ( Code Segment API Alice Start CS ( main Start CS DS Input DS CS new execute. CodeSegment 1 , 2) Data Segment 1). C CS. main. public class StartCodeSegment extends CodeSegment {. ⓒ 2018 Information Processing Society of Japan. 3.

(4) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. @Override public void run() { new TestCodeSegment(); int count = 0; ods.put("local", "cnt", count); } }. Code 1 StartCodeSegment public class TestCodeSegment extends CodeSegment { private Receiver input1 = ids.create(CommandType. TAKE); public TestCodeSegment() { input1.setKey("local", "cnt"); } @Override public void run() { int count = input1.asInteger(); System.out.println("data␣=␣" + count); count++; if (count == 10){ System.exit(0); } new TestCodeSegment(); ods.put("local", "cnt", count); } }. Code 2 CodeSegment. 1 5 CS( 2) 8 OutLocal DSM DS put put DS API Output DS API CS ods ods put update flip TestCodeSegment ”cnt” key 8 put TestCodeSegment CS. Input DS CS CommandType(PEEK TAKE) DSM key Input DS API CS ids Output DS ods put/update/flip Input DS ids peek/take create/setKey CommandType 2 0 9 2 Input DS API create Input DS (RePEEK TAKE ceiver) • Receiver create(CommandType type) 6 4. TestCodeSegment ( 1 ) CS. Receiver input ids.create(CommandType.TAKE) input (2) 5 TestCodeSegment TAKE 5 2 create Receiver setKey Local DSM DS • void setKey(String managerKey, String key) peek/take setKey DSM key peek take CS. ⓒ 2018 Information Processing Society of Japan. 4.

(5) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. run ( 1 ) 10 count ( 2 ) 12 ( 3 ) 16. key DS. Integer. setKey key. count CS. run. CS. CS CS. CS. CS Input DS setKey. ( 4 ) 17 put DS CS ( 5 ) 13. count. Local DSM. put. count. CS. In-. key. 10. put. key Alice setKey. CS 1. Object. asInteger() asClass asClass take/peek DS API. setKey CS. • <T> T asClass(Class<T> clazz) DS CS asClass InputDS Receiver create Reveiver setKey key. key key. put. inputDS. Receiver CS. Object inputDS. key key. DS setKey DS. put DS. flip put. CS (. 3). public class StartCodeSegment extends CodeSegment { @Override public void run() { TestCodeSegment cs = new TestCodeSegment(); cs.input.setKey("data"); ods.put("local", "data", 1); } }. key CS key Receiver key. key. DS. input DS. Code 3 setKey. 7. public class TestCodeSegment extends CodeSegment { private Receiver input = ids.create(CommandType. TAKE); @Override public void run(){ System.out.println("data␣=␣" + input.asInteger ()); } }. Code 4 Seprated setKey. Christie Christie • create/setKey. Christie. API. • •. CS. ⓒ 2018 Information Processing Society of Japan. 5.

(6) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. •. Java. • •. Meta Computation. Chirstie CodeSegment/DataSegment CodeGear/DataGear Gears OS Alice API. Alice key. Take DataGear Java. Annoation. Input. Singleton. Receiver Christie Input key. Peek. (. 5). @Take public String name;. API Alice toring. @. Code 5 Take Refac-. Christie. Jungle. Alice. Jungle. Jungle. Alice InputDG CG CodeGear.class Java reflectionAPI. Jungle Alice. key Jungle. Alice Tuple Jungle. Christie key Take/Peek. Alice. Alice. Data Segment Data Segment. CS. key Alice Data Seg-. ment Jungle Alice Jungle. Jungle Data Segment Jungle. key key. key. Take/Peek TakeFrom/PeekFrom ( 6). ID Alice. @TakeFrom("remote") public String name;. 2 Jungle. Code 6 TakeFrom. URI Jungle Jungle Christie. Gears OS. 8. InputAPI Alice Take Christie Input DG. ⓒ 2018 Information Processing Society of Japan. Peek. (. Meta Computation Alice DGM compressed 7). @TakeFrom("compressedremote") public String name;. 6.

(7) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. Code 7 Remote. public class StartTest extends StartCodeGear{ public StartTest(CodeGearManager cgm) { super(cgm); } public static void main(String args[]){ StartTest start = new StartTest(createCGM (10000)); } @Override protected void run(CodeGearManager cgm) { cgm.setup(new TestCodeGear()); put("count", 1); }. OutputAPI put/flip Alice Christie CodeGear.class CodeGear.class CG (. put/flip. }. Code 10 StartCodeGear put 8). put("remote", "count", 1);. public class TestCodeGear extends CodeGear {. Code 8 put Christie ODS. Alice. put. @Take public count;. ODS DGM. Alice. public void run(CodeGearManager cgm){ System.out.println(hoge.getData());. DGM. if (count != 10){ cgm.setup(new TestCodeGear()); put("count", count + 1); }. compressed Christie. }. Receiver. }. CG. Code 11 CodeGear Alice. asClass 9 InputDG public class GetData extends CodeGear{ @Take public String name; @Override protected void run(CodeGearManager cgm) { System.out.println("this␣name␣is␣:␣" + name); } }. Code 9 InputDG. InputDG API. reflection-. LocalDSM 10. ⓒ 2018 Information Processing Society of Japan. put. Alice Christie InputDG StartCG StartCG StartAlice CodeGear.class StartCS CodeSegment.class StartCS Christie StartCG createCGM CGM 10 8 createCGM CGM LocalDGM Daemon CG setup 10 13 11 10 new CG CGM setup Alice new CG Christie CG new. DG new. setup. CG. 7.

(8) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2018-OS-143 No.12 2018/5/22. CGM. Christie. run CGM StartCG setup. DataGear. new. run. 9. Unix. 1). Alice. Christie Unix. PC. 57 (2016).. 2) Christie. and erated Linda (2005).. Fed22. Unix Unix Christie Unix. Christie i. B-Tree. Christie Unix. i Christie. Unix Christie /write. read/write readget/put Christie. 10. Jungle Alice Christie Christie. Jungle Christie. Alice. Christie Data Gear Data. Gear Christie. Data Gear. Gears OS. ⓒ 2018 Information Processing Society of Japan. 8.

(9)

参照

関連したドキュメント

Murota: Discrete Convex Analysis (SIAM Monographs on Discrete Mathematics and Applications 10, SIAM, 2003).

By adapting tools from information theory, I construct optimal, nonlinear local statistical predictors for random fields on networks; these take the form of minimal

Then, in the middle we illustrate Wythoff Nim’s pair of P-beams with slopes φ and 1/φ respectively and, at last, we present the initial P-positions of (1, 2)GDWN, where our

[r]

(The Elliott-Halberstam conjecture does allow one to take B = 2 in (1.39), and therefore leads to small improve- ments in Huxley’s results, which for r ≥ 2 are weaker than the result

In this paper, we take some initial steps towards illuminating the (hypothetical) p-adic local Langlands functoriality principle relating Galois representations of a p-adic field L

Similarly, the null space algorithm which we implemented, can be subdivided into three phases: a first symbolic phase where the shortest path tree and the quotient tree are computed,

tr / tf Differential Output rise and fall times (See Figure 14) C L = 15 pF 1 2.3 ns Product parametric performance is indicated in the Electrical Characteristics for the listed