view gearsos_db.mm @ 39:a246b64a1b2d

...
author matac42 <matac@cr.ie.u-ryukyu.ac.jp>
date Sat, 13 May 2023 12:58:31 +0900
parents 162915cd51be
children 2e2ddc184572
line wrap: on
line source

<map version="freeplane 1.9.8">
<!--To view this file, download free mind mapping software Freeplane from https://www.freeplane.org -->
<node TEXT="Gears OSの&#xa;FS &amp; DB" FOLDED="false" ID="ID_452131666" CREATED="1610381621610" MODIFIED="1680514786893" STYLE="oval">
<font SIZE="18"/>
<hook NAME="MapStyle">
    <properties edgeColorConfiguration="#808080ff,#ff0000ff,#0000ffff,#00ff00ff,#ff00ffff,#00ffffff,#7c0000ff,#00007cff,#007c00ff,#7c007cff,#007c7cff,#7c7c00ff" associatedTemplateLocation="template:/standard-1.6-noEdgeColor.mm" fit_to_viewport="false"/>

<map_styles>
<stylenode LOCALIZED_TEXT="styles.root_node" STYLE="oval" UNIFORM_SHAPE="true" VGAP_QUANTITY="24 pt">
<font SIZE="24"/>
<stylenode LOCALIZED_TEXT="styles.predefined" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="default" ID="ID_207122690" COLOR="#000000" STYLE="fork">
<arrowlink SHAPE="CUBIC_CURVE" COLOR="#000000" WIDTH="2" TRANSPARENCY="200" DASH="" FONT_SIZE="9" FONT_FAMILY="SansSerif" DESTINATION="ID_207122690" STARTARROW="DEFAULT" ENDARROW="NONE"/>
<font NAME="SansSerif" SIZE="10" BOLD="false" ITALIC="false"/>
<richcontent CONTENT-TYPE="plain/auto" TYPE="DETAILS"/>
<richcontent TYPE="NOTE" CONTENT-TYPE="plain/auto"/>
</stylenode>
<stylenode LOCALIZED_TEXT="defaultstyle.details"/>
<stylenode LOCALIZED_TEXT="defaultstyle.attributes">
<font SIZE="9"/>
</stylenode>
<stylenode LOCALIZED_TEXT="defaultstyle.note" COLOR="#000000" BACKGROUND_COLOR="#ffffff" TEXT_ALIGN="LEFT"/>
<stylenode LOCALIZED_TEXT="defaultstyle.floating">
<edge STYLE="hide_edge"/>
<cloud COLOR="#f0f0f0" SHAPE="ROUND_RECT"/>
</stylenode>
<stylenode LOCALIZED_TEXT="defaultstyle.selection" BACKGROUND_COLOR="#4e85f8" BORDER_COLOR_LIKE_EDGE="false" BORDER_COLOR="#4e85f8"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.user-defined" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="styles.topic" COLOR="#18898b" STYLE="fork">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.subtopic" COLOR="#cc3300" STYLE="fork">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.subsubtopic" COLOR="#669900">
<font NAME="Liberation Sans" SIZE="10" BOLD="true"/>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.important" ID="ID_3752836">
<icon BUILTIN="yes"/>
<arrowlink COLOR="#003399" TRANSPARENCY="255" DESTINATION="ID_3752836"/>
</stylenode>
</stylenode>
<stylenode LOCALIZED_TEXT="styles.AutomaticLayout" POSITION="right" STYLE="bubble">
<stylenode LOCALIZED_TEXT="AutomaticLayout.level.root" COLOR="#000000" STYLE="oval" SHAPE_HORIZONTAL_MARGIN="10 pt" SHAPE_VERTICAL_MARGIN="10 pt">
<font SIZE="18"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,1" COLOR="#0033ff">
<font SIZE="16"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,2" COLOR="#00b439">
<font SIZE="14"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,3" COLOR="#990000">
<font SIZE="12"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,4" COLOR="#111111">
<font SIZE="10"/>
</stylenode>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,5"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,6"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,7"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,8"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,9"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,10"/>
<stylenode LOCALIZED_TEXT="AutomaticLayout.level,11"/>
</stylenode>
</stylenode>
</map_styles>
</hook>
<node TEXT="FSとDBの違い" POSITION="right" ID="ID_755670259" CREATED="1680514078612" MODIFIED="1680514092091">
<node TEXT="schemaの存在" ID="ID_1455313384" CREATED="1680514092681" MODIFIED="1680514104681">
<node TEXT="schemaの書き換え" ID="ID_1256312235" CREATED="1680514732544" MODIFIED="1680514748553">
<node TEXT="ロールバックへの影響" ID="ID_939827118" CREATED="1680514803184" MODIFIED="1680514952223"/>
</node>
</node>
<node TEXT="schemaless DB = FS" ID="ID_1432364093" CREATED="1680514119677" MODIFIED="1680514149519"/>
<node TEXT="id" ID="ID_1542789208" CREATED="1680514538406" MODIFIED="1680514584058">
<node TEXT="file path" ID="ID_863661605" CREATED="1680514542873" MODIFIED="1680514589985"/>
<node TEXT="key" ID="ID_1530745401" CREATED="1680514584577" MODIFIED="1680514586174"/>
</node>
<node TEXT="ここを議論したい" ID="ID_1098613902" CREATED="1680516830720" MODIFIED="1680516840643"/>
<node TEXT="SQL" ID="ID_1488783704" CREATED="1680589365762" MODIFIED="1680589368565">
<node TEXT="datalogはよく出来てる" ID="ID_362608836" CREATED="1680589376058" MODIFIED="1680589395456"/>
<node TEXT="正規形の有無" ID="ID_468920311" CREATED="1680589415082" MODIFIED="1680589421278">
<node TEXT="DBの正規形" ID="ID_613409105" CREATED="1680514337519" MODIFIED="1680514346919">
<node TEXT="1" OBJECT="java.lang.Long|1" ID="ID_634333561" CREATED="1680571750389" MODIFIED="1680571753157">
<node TEXT="表がネストしない" ID="ID_1216871787" CREATED="1680571786543" MODIFIED="1680571791373"/>
</node>
<node TEXT="2" OBJECT="java.lang.Long|2" ID="ID_2441393" CREATED="1680571753664" MODIFIED="1680571755385">
<node TEXT="部分関数従属性が無い" ID="ID_1267274458" CREATED="1680571815969" MODIFIED="1680571972866"/>
</node>
<node TEXT="3" OBJECT="java.lang.Long|3" ID="ID_1771757446" CREATED="1680571755788" MODIFIED="1680571756816">
<node TEXT="推移関数従属性が無い" ID="ID_1791789996" CREATED="1680571975126" MODIFIED="1680571990551"/>
</node>
<node TEXT="ボイスコッド" ID="ID_412768465" CREATED="1680571757998" MODIFIED="1680571778927">
<node TEXT="非キーからキーへの関数従属が無い" ID="ID_1289040902" CREATED="1680572001087" MODIFIED="1680572030644"/>
</node>
</node>
</node>
</node>
</node>
<node TEXT="Unixのfile path" POSITION="right" ID="ID_41680303" CREATED="1680589495922" MODIFIED="1680589508112"/>
<node TEXT="ファイルは適切な場所に自動で置かれるのが良い" POSITION="right" ID="ID_1281234968" CREATED="1680589752192" MODIFIED="1680589769501"/>
<node TEXT="インデックスをその場で作り出すのはださい" POSITION="right" ID="ID_773117542" CREATED="1680589805232" MODIFIED="1680589821770">
<node TEXT="" ID="ID_1174436925" CREATED="1681425467472" MODIFIED="1681425467472"/>
</node>
<node TEXT="細かいupdate" POSITION="right" ID="ID_912905028" CREATED="1680589889393" MODIFIED="1680589895907">
<node TEXT="log" ID="ID_813142239" CREATED="1680589896282" MODIFIED="1680589897759"/>
</node>
<node TEXT="GitLab" POSITION="right" ID="ID_1709977408" CREATED="1680589848490" MODIFIED="1680589852780">
<node TEXT="元を書き換えず、変更を追加していく" ID="ID_1546935307" CREATED="1680589853197" MODIFIED="1680589881481"/>
</node>
<node TEXT="Gears OS" POSITION="right" ID="ID_1080946964" CREATED="1680515138087" MODIFIED="1680515143586">
<node TEXT="CbC" ID="ID_1172948849" CREATED="1680515144144" MODIFIED="1680515146196"/>
<node TEXT="x.v6" ID="ID_112601142" CREATED="1680515168250" MODIFIED="1680515174272"/>
<node TEXT="RBTree" ID="ID_1055663801" CREATED="1680515484132" MODIFIED="1680515486729">
<node TEXT="non destructive" ID="ID_1203002004" CREATED="1681425706751" MODIFIED="1681425711419"/>
</node>
<node TEXT="FSはOSの中でも重要な機能" ID="ID_828725006" CREATED="1682477796060" MODIFIED="1682477807003">
<node TEXT="なぜ重要?" ID="ID_1560523506" CREATED="1682477807861" MODIFIED="1682477814743"/>
<node TEXT="FSの無いOS" ID="ID_1446858114" CREATED="1682478188619" MODIFIED="1682478201187"/>
</node>
</node>
<node TEXT="schemaless DB" POSITION="right" ID="ID_1667155479" CREATED="1680515405855" MODIFIED="1680515410341">
<node TEXT="アプリケーション側はどう対応するか" ID="ID_1602602008" CREATED="1680515410644" MODIFIED="1680515432213">
<node TEXT="" ID="ID_1627888614" CREATED="1680515436228" MODIFIED="1680515436228"/>
</node>
<node TEXT="スキーマレスはスキーマフルに振る舞うことが可能" ID="ID_1882558975" CREATED="1681555723075" MODIFIED="1681555743672">
<node TEXT="schemalessが柔軟性を向上させる" ID="ID_287260372" CREATED="1681555749770" MODIFIED="1681555767375"/>
</node>
<node TEXT="schemaless(schemaful)" ID="ID_1725304875" CREATED="1681555745215" MODIFIED="1681652858655">
<node TEXT="DGにKeyを持たせる(第二正規形)" ID="ID_445344504" CREATED="1681652859215" MODIFIED="1681652874390"/>
<node TEXT="indexはinode number" ID="ID_137846399" CREATED="1681652910330" MODIFIED="1681652931707"/>
</node>
</node>
<node TEXT="SQLの代わり" POSITION="right" ID="ID_1399377111" CREATED="1680514164259" MODIFIED="1680514202718">
<node TEXT="ls" ID="ID_1620164623" CREATED="1680514203519" MODIFIED="1680514206573">
<node TEXT="select?" ID="ID_929791339" CREATED="1680514242788" MODIFIED="1680514254466"/>
</node>
<node TEXT="grep" ID="ID_1767344180" CREATED="1680514207279" MODIFIED="1680514209075">
<node TEXT="like?" ID="ID_1385226227" CREATED="1680514236138" MODIFIED="1680514238964">
<node TEXT="spotlight的な機能" ID="ID_1157667616" CREATED="1680514424059" MODIFIED="1680514437902">
<node TEXT="grep" ID="ID_1530423147" CREATED="1680515378290" MODIFIED="1680515380088"/>
</node>
</node>
</node>
<node TEXT="find" ID="ID_505973471" CREATED="1680514209543" MODIFIED="1680514212110">
<node TEXT="select?" ID="ID_441302607" CREATED="1680514222319" MODIFIED="1680514234551"/>
</node>
</node>
<node TEXT="従来のFSと同等の機能" POSITION="right" ID="ID_248832407" CREATED="1680570522807" MODIFIED="1680570534642">
<node TEXT="ジャーナル" ID="ID_1033831748" CREATED="1680577183734" MODIFIED="1680577186879">
<node TEXT="代わりにルートノードが履歴になる?" ID="ID_1324731498" CREATED="1680577187438" MODIFIED="1680577230639"/>
</node>
</node>
<node TEXT="従来のDBと同等の機能" POSITION="right" ID="ID_545310047" CREATED="1680570548064" MODIFIED="1680570559000">
<node TEXT="ロールバック" ID="ID_1500221323" CREATED="1680570559425" MODIFIED="1680570564251"/>
<node TEXT="トランザクション" ID="ID_1449868165" CREATED="1681505762028" MODIFIED="1681505766002">
<node TEXT="ルートノードから抑える" ID="ID_1013299191" CREATED="1681529512908" MODIFIED="1681529525438"/>
<node TEXT="下のノードを抑えられたら上のノードを手放す" ID="ID_283821467" CREATED="1681529526182" MODIFIED="1681529549060"/>
</node>
</node>
<node TEXT="index" POSITION="right" ID="ID_250021847" CREATED="1680514290225" MODIFIED="1680514292808">
<node TEXT="inode tree" ID="ID_1621734370" CREATED="1680514293464" MODIFIED="1680514299894">
<node TEXT="RBTree" ID="ID_1466084603" CREATED="1680514304455" MODIFIED="1680514310222">
<node TEXT="BTree比で木の深さが抑えられる" ID="ID_1311341340" CREATED="1680590205498" MODIFIED="1680590233147"/>
</node>
</node>
<node TEXT="indexの更新は重い" ID="ID_1605043767" CREATED="1680590339023" MODIFIED="1680590347221">
<node TEXT="古いデータはindexを見ない" ID="ID_293809247" CREATED="1680590359919" MODIFIED="1680590397924"/>
<node TEXT="新しいデータはindexを見る" ID="ID_1382555403" CREATED="1680590419133" MODIFIED="1680592883234">
<node TEXT="新しいデータはよく参照される" ID="ID_1693462761" CREATED="1680592884303" MODIFIED="1680592914848"/>
</node>
</node>
<node TEXT="時系列データ" ID="ID_670672679" CREATED="1681122550405" MODIFIED="1681122556894">
<node TEXT="配列にしてある程度データが溜まってきたらRBTree化" ID="ID_1572591279" CREATED="1681122528840" MODIFIED="1681122547636"/>
</node>
</node>
<node TEXT="現在のDBとFSのいいとこどり" POSITION="right" ID="ID_80835294" CREATED="1680514364177" MODIFIED="1680514378218"/>
<node TEXT="トランザクション" POSITION="right" ID="ID_1385384807" CREATED="1680514386377" MODIFIED="1680514393425">
<node TEXT="ルートノードの入れ替え" ID="ID_367859313" CREATED="1680514393976" MODIFIED="1680514405762"/>
</node>
<node TEXT="現在のFSとDBの使い分け" POSITION="right" ID="ID_932356722" CREATED="1680514444889" MODIFIED="1680514453127">
<node TEXT="FS" ID="ID_461612889" CREATED="1680514471168" MODIFIED="1680514472576">
<node TEXT="サイズの大きなデータ" ID="ID_339467246" CREATED="1680514479640" MODIFIED="1680514487397">
<node TEXT="メディアファイル" ID="ID_1331026076" CREATED="1680514487823" MODIFIED="1680514494158"/>
<node TEXT="サイズの大きなデータはDBでは扱いづらい?" ID="ID_577457787" CREATED="1680515312192" MODIFIED="1680515326874">
<node TEXT="実際に入れて試したことがない..." ID="ID_1554083261" CREATED="1680515337103" MODIFIED="1680515347305"/>
</node>
</node>
</node>
<node TEXT="DB" ID="ID_1744937409" CREATED="1680514472931" MODIFIED="1680514474175">
<node TEXT="アプリケーションデータ" ID="ID_1575505806" CREATED="1680514503203" MODIFIED="1680514512255"/>
<node TEXT="メタデータ" ID="ID_1729681409" CREATED="1680514512802" MODIFIED="1680514516441"/>
</node>
</node>
<node TEXT="データの構造" POSITION="right" ID="ID_1075332857" CREATED="1680514632235" MODIFIED="1680514641284">
<node TEXT="メモリ上とディスク上で同一" ID="ID_1645610933" CREATED="1680514641712" MODIFIED="1680514654599"/>
<node TEXT="RBTree" ID="ID_707503716" CREATED="1680514655804" MODIFIED="1680514658673"/>
</node>
<node TEXT="ガベージコレクション" POSITION="right" ID="ID_1740771661" CREATED="1680514664933" MODIFIED="1680514670596">
<node TEXT="Copying GC" ID="ID_696117728" CREATED="1680514671483" MODIFIED="1680514680688"/>
<node TEXT="バックアップ機能を持つ" ID="ID_404748015" CREATED="1680514685500" MODIFIED="1680514696900">
<node TEXT="CGCでコピーしたものをバックアップ扱いする" ID="ID_1169248833" CREATED="1680514705129" MODIFIED="1680514720653"/>
<node TEXT="ルートノードの刈り取り" ID="ID_1244241463" CREATED="1681509556998" MODIFIED="1681509571984">
<node TEXT="データ喪失がある" ID="ID_502910781" CREATED="1681509582658" MODIFIED="1681509592973"/>
</node>
</node>
</node>
<node TEXT="前回のsigos" POSITION="right" ID="ID_1309351872" CREATED="1680515510763" MODIFIED="1680515616723">
<node TEXT="Gears OSのディレクトリシステム構築" ID="ID_1027319865" CREATED="1680515515311" MODIFIED="1680515617562"/>
</node>
<node TEXT="redisとの関係" POSITION="right" ID="ID_334532047" CREATED="1680515898765" MODIFIED="1680515909086">
<node TEXT="redisの代わりになれるか?" ID="ID_1087630635" CREATED="1680515909888" MODIFIED="1680515917003"/>
<node TEXT="Dragonfly" ID="ID_1307990937" CREATED="1681119176656" MODIFIED="1681119185341"/>
</node>
<node TEXT="Diskの時代は終わりつつある" POSITION="right" ID="ID_1559395288" CREATED="1680589984785" MODIFIED="1680589999348">
<node TEXT="archiveはここにおく" ID="ID_1078158807" CREATED="1680589999749" MODIFIED="1680590006915"/>
<node TEXT="頻繁にアプデされるものはメモリに" ID="ID_1428627633" CREATED="1680590007502" MODIFIED="1680590019800"/>
</node>
<node TEXT="graphdb" POSITION="right" ID="ID_1249747005" CREATED="1680589474423" MODIFIED="1680589477940"/>
<node TEXT="章立て" POSITION="left" ID="ID_504549898" CREATED="1681418701611" MODIFIED="1681418717266">
<node TEXT="GearsOSにおけるファイルシステムとDB" ID="ID_161497555" CREATED="1681418739294" MODIFIED="1681690428533"/>
<node TEXT="Continuation based C" ID="ID_185089326" CREATED="1681418753580" MODIFIED="1681496062737"/>
<node TEXT="信頼性の保証を目的としたGearsOS" ID="ID_1449927539" CREATED="1681418768066" MODIFIED="1681496077911"/>
<node TEXT="RedBlackTreeによるファイルシステムの構成" ID="ID_1671215422" CREATED="1681418860926" MODIFIED="1681496098968"/>
<node TEXT="ディスク上とメモリ上のデータ構造" ID="ID_1323346389" CREATED="1681496102995" MODIFIED="1681496111241"/>
<node TEXT="データのロールバックとバックアップ" ID="ID_1224697865" CREATED="1681496114286" MODIFIED="1681690562512"/>
<node TEXT="RedBlackTreeのトランザクション" ID="ID_1888686465" CREATED="1681496120048" MODIFIED="1681690581987"/>
<node TEXT="ファイルシステムにおけるスキーマ" ID="ID_1706068595" CREATED="1681496122566" MODIFIED="1681690596008"/>
<node TEXT="RedBlackTreeによる権限の表現" ID="ID_902966435" CREATED="1681496178286" MODIFIED="1681690611517"/>
<node TEXT="今後の課題" ID="ID_1810569199" CREATED="1681418761092" MODIFIED="1681418796706"/>
<node TEXT="まとめ" ID="ID_233404139" CREATED="1681418800811" MODIFIED="1681418804838"/>
</node>
<node TEXT="論文作成後の今後の課題" POSITION="right" ID="ID_95526439" CREATED="1681690623391" MODIFIED="1681690669677">
<node TEXT="論文で設計したものを構築" ID="ID_1824579561" CREATED="1681690670900" MODIFIED="1681690684981"/>
<node TEXT="スタンドアロンなDB?" ID="ID_1854286655" CREATED="1681690685799" MODIFIED="1681690694252"/>
<node TEXT="" ID="ID_631466843" CREATED="1681690694906" MODIFIED="1681690694906"/>
</node>
<node TEXT="先行研究" POSITION="right" ID="ID_226502805" CREATED="1682477832189" MODIFIED="1682477837325"/>
<node TEXT="論文で抜けてる部分" POSITION="right" ID="ID_1789022779" CREATED="1681690770918" MODIFIED="1681690779110">
<node TEXT="ログなどの時系列データの保存方法" ID="ID_141085383" CREATED="1681690779547" MODIFIED="1681690818559"/>
<node TEXT="ユーザーインターフェースの詳細" ID="ID_1626312136" CREATED="1681690834214" MODIFIED="1681690842046"/>
<node TEXT="サイズの大きなデータの格納方法" ID="ID_1565374334" CREATED="1681690842526" MODIFIED="1681690883815"/>
<node TEXT="インデックスの更新・作成条件" ID="ID_730863751" CREATED="1681690884174" MODIFIED="1681690937469"/>
<node TEXT="メモリ不足の懸念について" ID="ID_1617906662" CREATED="1681690970726" MODIFIED="1681691008346"/>
</node>
<node TEXT="スライド" POSITION="left" ID="ID_431898265" CREATED="1683792995152" MODIFIED="1683793001137">
<node TEXT="システム全体の信頼性を上げたい" ID="ID_1890538039" CREATED="1683793004172" MODIFIED="1683883672742">
<node TEXT="システムの構成要素" ID="ID_1014766369" CREATED="1683883297464" MODIFIED="1683883327085">
<node TEXT="アプリケーション" ID="ID_747921644" CREATED="1683883328917" MODIFIED="1683883336669"/>
<node TEXT="OS" ID="ID_79609665" CREATED="1683883337608" MODIFIED="1683883344561"/>
<node TEXT="ファイルシステム" ID="ID_1153637340" CREATED="1683883345433" MODIFIED="1683883354146"/>
<node TEXT="DB" ID="ID_831118147" CREATED="1683883435775" MODIFIED="1683883438272"/>
</node>
<node TEXT="全部の信頼性を上げる必要がある" ID="ID_1503745478" CREATED="1683883315579" MODIFIED="1683883380590"/>
<node TEXT="信頼性を上げる方法" ID="ID_362676709" CREATED="1683883391223" MODIFIED="1683883398860">
<node TEXT="証明" ID="ID_384370369" CREATED="1683883400049" MODIFIED="1683883405860"/>
<node TEXT="テスト" ID="ID_447313982" CREATED="1683883406881" MODIFIED="1683883412697"/>
<node TEXT="モデル検査" ID="ID_1419644121" CREATED="1683883413301" MODIFIED="1683883418846"/>
</node>
<node TEXT="システムの構成要素全体にこれらの方法を適用したい" ID="ID_1283219027" CREATED="1683883443218" MODIFIED="1683883457173"/>
<node TEXT="なのでファイルシステムとDBをRBTreeで統一する" ID="ID_1025933271" CREATED="1683883468276" MODIFIED="1683883489128">
<node TEXT="RBTreeはinvariantで証明する" ID="ID_445938459" CREATED="1683883500370" MODIFIED="1683883513878"/>
</node>
<node TEXT="FSとDBの要素をRBTreeに対応させていく" ID="ID_1427881933" CREATED="1683883563484" MODIFIED="1683883616544"/>
</node>
<node TEXT="GearsOS" ID="ID_1141426374" CREATED="1683793922513" MODIFIED="1683883705146">
<node TEXT="Continuation based C" ID="ID_1395196542" CREATED="1683793321859" MODIFIED="1683793874759"/>
<node TEXT="CodeGearとmetaCodeGearの関係" ID="ID_753651085" CREATED="1683794931069" MODIFIED="1683794966888"/>
<node TEXT="Context" ID="ID_1314882832" CREATED="1683806340214" MODIFIED="1683806344795">
<node TEXT="プロセスに相当" ID="ID_984799865" CREATED="1683883760580" MODIFIED="1683883769571"/>
<node TEXT="実行するCG全部" ID="ID_661261070" CREATED="1683883776358" MODIFIED="1683883786426"/>
<node TEXT="使用するDG全部" ID="ID_1319063458" CREATED="1683883788171" MODIFIED="1683883802746"/>
</node>
<node TEXT="3種類のGears OS" ID="ID_1638511555" CREATED="1683794932101" MODIFIED="1683794941745">
<node TEXT="Gears OS" ID="ID_1681177863" CREATED="1683883064324" MODIFIED="1683883068917"/>
<node TEXT="GearsAgda" ID="ID_375982353" CREATED="1683883069627" MODIFIED="1683883073909"/>
<node TEXT="x.v6 Gears OS" ID="ID_190998500" CREATED="1683883075051" MODIFIED="1683883103215"/>
</node>
<node TEXT="CodeGear遷移の流れ" ID="ID_323902571" CREATED="1683806345281" MODIFIED="1683806357556"/>
</node>
<node TEXT="ファイルシステムとDB" ID="ID_1128973381" CREATED="1683793009880" MODIFIED="1683883898400">
<node TEXT="両方ともRBTreeで実装する" ID="ID_338147682" CREATED="1683883903595" MODIFIED="1683883919004"/>
<node TEXT="非破壊Tree" ID="ID_991571864" CREATED="1683806464582" MODIFIED="1683806470052"/>
</node>
<node TEXT="RBTreeはDBのテーブル" ID="ID_1210007329" CREATED="1683884139615" MODIFIED="1683884767732">
<node TEXT="テーブルのキーがRBTreeのkey" ID="ID_1868861117" CREATED="1683884158878" MODIFIED="1683884170852"/>
<node TEXT="トランザクションはテーブルのルートの置き換え" ID="ID_541885376" CREATED="1683884184294" MODIFIED="1683884194654"/>
<node TEXT="持続性" ID="ID_15924648" CREATED="1683884200660" MODIFIED="1683884206382">
<node TEXT="オンメモリーなRBTree" ID="ID_1253922918" CREATED="1683884211820" MODIFIED="1683884221207"/>
<node TEXT="SSD上のコピー" ID="ID_1148185240" CREATED="1683884223594" MODIFIED="1683884243957">
<node TEXT="ログ的にコピーしていく" ID="ID_1601869481" CREATED="1683884277811" MODIFIED="1683884287139"/>
</node>
</node>
<node TEXT="スキーマ" ID="ID_894019841" CREATED="1683884297816" MODIFIED="1683884301716">
<node TEXT="DBの各テーブルのレコードの型定義" ID="ID_148789198" CREATED="1683884326057" MODIFIED="1683884352477"/>
</node>
</node>
<node TEXT="インピーダンスミスマッチ" ID="ID_1186788713" CREATED="1683879688032" MODIFIED="1683879695817">
<node TEXT="プログラムで使用するデータ構造" ID="ID_1917732087" CREATED="1683884593868" MODIFIED="1683884611694">
<node TEXT="queue" ID="ID_1295277731" CREATED="1683884613901" MODIFIED="1683884615801"/>
<node TEXT="stack" ID="ID_1335632480" CREATED="1683884616552" MODIFIED="1683884618124"/>
</node>
<node TEXT="DBにはリストやキューは入らない" ID="ID_1480845790" CREATED="1683884626471" MODIFIED="1683884643941">
<node TEXT="第一正規系じゃないから" ID="ID_335463616" CREATED="1683884649155" MODIFIED="1683884659865"/>
</node>
<node TEXT="データ構造を持続的にしたい" ID="ID_900229592" CREATED="1683884683285" MODIFIED="1683884695737"/>
<node TEXT="なのでファイルシステムが必要" ID="ID_285640515" CREATED="1683884715014" MODIFIED="1683884724086"/>
</node>
<node TEXT="RBTreeベースのファイルシステム" ID="ID_1651173215" CREATED="1683884803188" MODIFIED="1683884813352">
<node TEXT="i-node番号をkeyにする" ID="ID_1204818335" CREATED="1683884816711" MODIFIED="1683884839827"/>
<node TEXT="inodeにはDGのリストが入る" ID="ID_158456106" CREATED="1683884847087" MODIFIED="1683884856157"/>
<node TEXT="持続性" ID="ID_828038948" CREATED="1683884200660" MODIFIED="1683884206382">
<node TEXT="オンメモリーなRBTree" ID="ID_1576608166" CREATED="1683884211820" MODIFIED="1683884221207"/>
<node TEXT="SSD上のコピー" ID="ID_1244723646" CREATED="1683884223594" MODIFIED="1683884243957">
<node TEXT="ログ的にコピーしていく" ID="ID_472869525" CREATED="1683884277811" MODIFIED="1683884287139"/>
</node>
</node>
</node>
<node TEXT="バックアップとロールバック" ID="ID_854574982" CREATED="1683885054716" MODIFIED="1683885061163">
<node TEXT="ロールバックの必要性" ID="ID_477502303" CREATED="1683885063629" MODIFIED="1683885092573">
<node TEXT="トランザクションの失敗" ID="ID_1422510197" CREATED="1683885097219" MODIFIED="1683885105977"/>
<node TEXT="システムクラッシュ" ID="ID_1971166091" CREATED="1683885108581" MODIFIED="1683885113653"/>
</node>
<node TEXT="SSDのログからロールバックする" ID="ID_1211991984" CREATED="1683885094116" MODIFIED="1683885137953"/>
</node>
<node TEXT="構成要素" ID="ID_276464145" CREATED="1683794743578" MODIFIED="1683794755540">
<node TEXT="すべてRBTreeで構成されている" ID="ID_332682241" CREATED="1683885311240" MODIFIED="1683885327061">
<node TEXT="検証はRBTreeだけで良い" ID="ID_582555526" CREATED="1683885328836" MODIFIED="1683885341818"/>
<node TEXT="invariantで証明する" ID="ID_139128895" CREATED="1683885345869" MODIFIED="1683885354111"/>
</node>
<node TEXT="RedBlackTreeによる権限の表現" ID="ID_1216462813" CREATED="1683794500652" MODIFIED="1683794512373">
<node TEXT="metaDGで行う" ID="ID_1630653969" CREATED="1683885292879" MODIFIED="1683885376757"/>
<node TEXT="ContextからアクセスできるRBTreeがある" ID="ID_246875372" CREATED="1683885399127" MODIFIED="1683885417137"/>
</node>
</node>
<node TEXT="信頼性の保証" ID="ID_1707333614" CREATED="1683885455061" MODIFIED="1683885460354">
<node TEXT="RBTreeの変更の正しさ" ID="ID_1947487467" CREATED="1683885464005" MODIFIED="1683885481235"/>
<node TEXT="トランザクションの正しさ" ID="ID_249206113" CREATED="1683885483792" MODIFIED="1683885490884"/>
<node TEXT="アクセス権限の正しさ" ID="ID_228944734" CREATED="1683885493942" MODIFIED="1683885502106"/>
<node TEXT="SSDへのコピーの正しさ" ID="ID_1162042910" CREATED="1683885517769" MODIFIED="1683885527425"/>
<node TEXT="ポータビリティ" ID="ID_1913557735" CREATED="1683885566839" MODIFIED="1683885574074">
<node TEXT="異なる計算機アーキテクチャ" ID="ID_1484140660" CREATED="1683885577528" MODIFIED="1683885596471"/>
<node TEXT="異なるエンコード" ID="ID_108264570" CREATED="1683885598095" MODIFIED="1683885606608"/>
<node TEXT="異なる分散ノード" ID="ID_215774197" CREATED="1683885608829" MODIFIED="1683885620441"/>
</node>
<node TEXT="正しくスキーマに対応しているかどうか" ID="ID_1511508705" CREATED="1683885679093" MODIFIED="1683885689717">
<node TEXT="違反しても良い" ID="ID_55096761" CREATED="1683885701723" MODIFIED="1683885708755"/>
</node>
</node>
<node TEXT="今後の課題" ID="ID_685047053" CREATED="1683793290797" MODIFIED="1683794487940">
<node TEXT="データクエリ言語" ID="ID_1616582759" CREATED="1683794794770" MODIFIED="1683794800026">
<node TEXT="SQL" ID="ID_76668619" CREATED="1683885753253" MODIFIED="1683885757190"/>
<node TEXT="SQLより良いものが欲しい" ID="ID_21165219" CREATED="1683885758848" MODIFIED="1683885767794">
<node TEXT="ファイルシステムとDBの両方で使える" ID="ID_403512281" CREATED="1683885769067" MODIFIED="1683885779073"/>
</node>
</node>
<node TEXT="時系列データ" ID="ID_332372763" CREATED="1683794801000" MODIFIED="1683794806307"/>
<node TEXT="スタンドアロンなDB" ID="ID_797110426" CREATED="1683794806575" MODIFIED="1683794819595"/>
</node>
</node>
</node>
</map>