メインコンテンツへスキップ

オレンジペーパー独占インタビュー:データベースはアプリケーションサーバーを消滅させなかった。ブロックチェーンもすべてを引き継ぐことはできない

Retric
インタビュー

著者: Retric

メディア: オレンジペーパー

日付: 2018 年 12 月 7 日

ArcBlock-オレンジペーパー

今朝、arcblock の老冒と 1 時間話をした。彼が挙げた点のうち、いくつかがとても興味深いと感じた:

1、スマートコントラクトは、データベースにおける「ストアドプロシージャ」の発展になぞらえることができる。

データベースのストアドプロシージャ(Stored Procedure)には、最も成功した使い方が 2 つある。1 つは validator(バリデーター)、もう 1 つは trigger(トリガー)だ。

1、validator は、各フィールドのデータが妥当な範囲内にあることを保証するために使われる。たとえば従業員の給与データを保存する場合、データベースを設計する時点で、従業員 1 人の月給が 100 万を超えないことがあらかじめ分かっているため、保存する数値を 0~100 万の範囲に制限しておけば、不正な数値は保存できなくなる。

2、trigger は、特定の条件下で処理を実行させるために使われる。たとえば銀行のデータベースで、ある顧客の銀行残高が 0 を下回った場合、通知を発し、この利用者が破産しそうだと銀行に知らせる。以前はトリガーがなかったため、データベースを何度もポーリングするしかなかったが、trigger が登場したことで、いくつかのロジックをデータベース内へ簡単に組み込めるようになった。

この 2 つが登場した当時、業界は一時大いに沸き、これは次世代のデータベースだと考えられた。さらには、もはやアプリケーションサーバーは不要で、すべてのコードをデータベースに書き込めばよいと考える人さえいた。しかし今日、データベースはアプリケーションサーバーに取って代わらなかったことが事実として証明されている。データベースは非常に重要なインフラを提供したにすぎず、その上にはさらに多くの中間層が重なっている。

ブロックチェーンになぞらえるなら、スマートコントラクトはストアドプロシージャのごく自然な発展だ。昨年、私たちも一時は Ethereum がすべてを引き継ぎ、あらゆるアプリケーションが Ethereum 上で動くべきだと考えていた。しかし今日では誰もが、スマートコントラクトは非常に有用であるものの、大部分のアプリケーションはオフチェーンにあり、ブロックチェーンはその中の技術要素の 1 つにすぎないと知っている。とはいえ、それによってブロックチェーンの偉大さが損なわれるわけではない。今日のデータベースも代替不可能な地位にあるのと同じで、ただその市場シェアの多くがアプリケーションに奪われるだけだ。現在のブロックチェーンが使いにくいのも、一般利用者にデータベース上で直接 SQL 文を使って操作ややり取りをさせようとしているからだ。

注:いわゆる「ストアドプロシージャ」とは、大規模なデータベースシステムにおいて、特定の機能を実現するための SQL 文の集合を指す。これはデータベース内に保存され、初回のコンパイル後は呼び出すたびに再コンパイルする必要がなく、利用者はストアドプロシージャの名前を指定し、(そのストアドプロシージャに引数がある場合は)引数を与えて実行する。ストアドプロシージャはデータベースにおける重要なオブジェクトである。

この定義は、実際のところ本当に「スマートコントラクト」によく似ている。

2、R3 は以前、人間が読めるスマートコントラクトを手がけていた。スマートコントラクトと現在の法律を折衷的かつ迅速につなぐもので、興味深い事例だ。

R3 の Corda は分散型台帳であり、2016 年に非常に興味深いイノベーションを提案した。チェーン上に 1 つのコントラクトをデプロイすると、同時に 2 種類が生成される。1 つは機械が理解できる(machine-readable)マシンコード、もう 1 つは人間が読んで理解できる(human-readable)法的条項だ。

スマートコントラクトはルールを機械上に記述して制約を課し、送金などの操作をチェーン上で強制的に実行できるものの、現実世界と法律の世界との対応関係は依然として保証できない、と多くの人が指摘している。法律がオンライン上のスマートコントラクトを認めない可能性があるからだ。この問題を解決するために、R3 はスマートコントラクトのデプロイと同時に有効な法的契約も生成するようにした。これにより、法律が徐々に整備され、スマートコントラクトに関する法制度を具体的にどう定めるかが明確になるのを待たずに、問題を迅速に解決できる。

これは興味深い試みだが、現在どのように進展しているのかは分からない。

3、コンピューターはますます忠実に現実世界をシミュレートしているが、人間と技術は最終的に互いに適応しながら発展していく。

データベースの発展を見ると、かつてはすべてのデータの保存と保守を 1 台のコンピューターに置けばよかった。その後、徐々に分散型の環境へと発展し、それらのマシンはすべて信頼できると仮定して、中央から統一的にスケジューリングするようになった。そして現在、私たちは再び、これらのノードは信頼できないと仮定する状況へと徐々に戻っている。実際には、現実世界の本当の状況へますます近づいているのだ。

しかし、人間も技術と互いに適応しながら発展する必要があるのかもしれない。この点で 1 つの例を思いついた。人間の協働組織のあり方は、実のところ常に技術的な実現方法によって制限されてきた。過去に私たちが会社という単位で発展してきたのは、金融技術が会社という単位での発展しか支えられなかったからだ。この組織形態は、伝統的な家族や部族と比べれば、すでに非常に大きなイノベーションだった。今、私たちは新しい技術を手にしており、組織のあり方にも新たな変化が必要だ。

将来、AI が一定の段階まで発展すれば、ブロックチェーンは、こうした技術が危険な方向へ進まないことを保証するのに十分強力なガバナンスツールとして、私たちに利用されるかもしれない。

P.S:弱気相場の中でブロックチェーンに注目する人はますます減っている。今後、私たちはこのような「記事」をもっと書いていくつもりだ――比較的シンプルで直接的、短く、文章としての華やかさもないメモだ。今でも記事を読もうという人は、きっと筋金入りの仲間たちだろう。この業界を本当に気にかけている人、あるいはこの業界に関わる実務者の皆さんにとって、時間は貴重だ。それなら純度の高い話をしよう。素朴な議論と交流に立ち返ろう。

ArcBlock-オレンジペーパー

原文リンク: https://orange.xyz/p/272