高いTPS(Transaction per Second)を誇る分散型アプリケーション(DApps)向けプラットフォームの構築を目指すことで知られるEOS(イオス)ですが、DAppsの開発において、このデータを格納するメモリーとしてEOS RAM(ラム)と呼ばれるものがあります。
本記事では、そんなEOS RAMのGithub上の開発進捗についてを簡単にまとめていきます。
EOS RAM(ラム)に関してを簡単におさらい
EOSでは、ブロックチェーン上にデータを格納する際、RAMの購入が必要とされます。開発者は、RAMの市場価格に応じてbancorのアルゴリズムを利用することでEOSブロックチェーン上のメモリーの売買を行うことができます。
このRAMはEOSと平行するサイドチェーンのようなもので、RAMには分散型アプリケーションで利用されるスマートコントラクトやアカウント情報などが格納されます。
これに関しての詳細は以下の記事をご覧ください。
EOS RAM(ラム)の開発状況進捗
Bandwidth(帯域幅)やCPUなどと並んでEOSの重要なリソースとされるRAMですが、この開発状況を調査しました。Githubを参考にした主に開発面での進捗の調査ということで、少しテクニカルな部分もありますが、ご容赦願います。
Account have sufficient balance, but can’t buy ram or delegatebw cpu #4297 (2018年6月23日)
サードパーティを介してアカウントの作成を行った場合、RAMやDelegatedbw CPUの購入の際十分な残高があるにも関わらず、これが不足していると表示される問題に関してです。これを解決するために「buy ram」と「delegatebw cpu」のアクションを追加する提案がなされました。
参照元:Account have sufficient balance, but can’t buy ram or delegatebw cpu #4297
cleos system buyram kbytes #4427 (2018年6月30日)
cleos(client(クライアント) + eos)のbuyramがトークンの総量をパラメータとして取得するようになりました。また、ユーザーはbuyramにおいてトークンの総量ではなくkbytes(キロバイト)を単位として、総量を指定することができるようになります。
参照元:cleos system buyram kbytes #4427
Low RAM Shutdown Integration Test #4813 (2018年7月24日)
RAMの閾値が低下した際に、nodeos(node(ノード) + eos)を一度シャットダウンし、flagsを再起動/再同期する必要なく最大RAMでnodeosを再ローンチするための統合テストが追加されました。
参照元:Low RAM Shutdown Integration Test #4813
まとめ
EOS RAMに関して、簡単な概要とGithub上の開発やコミットの状況をまとめました。
現段階では、まだまだ一部のデベロッパー向けの内容となっていますが、EOSのRAMはEOSのブロックチェーンにおいても根幹をなす技術です。
現在でも紹介の通り開発が進められていますが、今後さらに問題が解決されユーザーフレンドリーな仕様となることを期待していきたいですね。