Softwares for Data Sharing

参考

共有対象の情報

まとめ

ソリューション

OSS

組織

メモ

そもそもデータ共有対象のデータって何があるのか?

機密性を保持するべきデータ

セキュリティ対策は何故必要か? によると企業が保護すべき情報には「個人情報」と「企業内機密情報」があるとのこと。 機密情報とは?営業秘密との違いや管理方法、漏洩リスク等を解説! には、「機密情報」の定義が記載されている。

企業が保有している情報のうち、外部への開示が予定されていないこと 情報秘密として管理されている情報 開示されれば、企業に損害が生じ得る情報

また、不正競争防止法に「営業秘密」の定義が載っている。(ようだ)

秘密管理性(秘密として管理されていること) 有用性(有用な営業上又は技術上の情報であること) 非公知性(公然と知られていないこと)

オープンなデータ

網羅性、という意味ではオープンなデータも共有対象になる。

いわゆる「オープンデータ」の意義・目的が総務省の情報通信白書に記載されている。 第1部 特集 「スマートICT」の戦略的活用でいかに日本に元気と成長をもたらすか 参照。

これに合致しなくとも、企業などで取り扱うデータには機密性を保たなくてもよい類の情報もあるだろう。

まとめ系の情報源

DATA COLLABORATION GUIDE にデータコラボレーションに関するまとめが記載されている。 データコラボレーションの具体例(パートナーとアライアンス、チャネル販売、など)に触れながら、 データエスクローについて紹介している。

What is data collaboration?にデータコラボレーションによってもたらされるメリットなどに少し触れている生地記事。 「データブリッジ」というクエリを移動させる方式(考え方?)が紹介されていた。 データコラボレーションは、線シティブナデータを共有することなく、サイロ化したデータを組み合わせられる仕組みであると紹介されている。

データ共有のためのオープンソースソフトウェア

CKAN

CKAN の通り、データ共有のためのAPI、データストア管理、機能拡張の仕組みなどを提供する。 ポータルサイトを構築可能。

そのほかにも、地理情報に基づく管理、メタデータ管理、データ管理用ウェブフロントエンド、検索などを提供する。

フェデレーションも可能そうである。 ハーベスト(収穫?)機能を利用し、リモートのメタデータを収集する。

ファイルストアには、ローカルのデータストアのほか、クラウドのデータストアも利用可能。

データカタログソフトウェア「CKAN」の使い方について備忘録 にAPIの特徴についての考察が記載されている。

CKANのショーケース には公式の例が載っている。

Eclipse Dataspace Connector

Business Data Sharing Based on Open-Source Technology の通り、IDS企画に準拠したコネクター。

Eclipse Dataspace Connector がプロジェクトディレクトリのようだがメタな情報しかない。

アクティブな開発者としては、BMWなどが挙げられるがMicrosoftも重要な位置付けにあるようだ。 もともとMicrosoftが開発していた(?)Data Appliance GXとIDS Dataspace Connectorを基にしているからだろうか。

eclipse-dataspaceconnector / DataSpaceConnector にソースコードがある。

X-Road

X-Road の通り、「distributed data exchage layer」とのこと。 X-Roadのインスタンス同士でデータ交換が可能になる。

X-RoadのGitHub によると、

The following activities, among others, are undertaken by the Nordic Institute for Interoperability Solutions (NIIS) with regard to the X-Road core

とのこと。NIISが主にメンテ活動しているようだ。

特徴

特徴:

  • address management
  • message routing
  • access rights management
  • organization-level authentication
  • machine-level authentication
  • transport-level encryption
  • time-stamping
  • digital signature of messages
  • logging
  • error handling.

大まかな構成

X-Roadで作られたエコシステムに接続するにはCAによって証明されないといけない。

X-Roadの組織モデル にある通り、

  • X-Road Operator ... エコシステムの責任者。規約・ルールの策定・事項、新しいメンバの受け入れ、など。
  • Member組織 ... サービスの提供者・利用者。オンボードプロセスを経て、エコシステムに参加可能
  • Trust Service Provider ... Time-stamp Authority(TSA)、Certification Authority(CA)機能を提供。第三者機関でもよいし、X-Road Operatorが兼ねることもある。

という関係者で構成される。

モデルとしては、中央集権的である。 X-Roadのアーキテクチャ にあるように、Central Serivceを提供するためのCentral Serverがあり、 X-Road Operatorが責任をもって運用する。 そこにはMemberの登録情報やポリシーが管理されている。 なお、分散配置されたSecurity Serverを通じて、これらの情報を利用可能になっている。

MemberはSecurity Serverを通じてX-Roadのセキュリティ面の機能を利用可能。 Security ServerはCentral Serverに保持されたコンフィグやTrust Service Provierが持っているAuthorityの情報を取得し、ローカルにキャッシュし動作する。

Information SystemはREST or SOAPプロトコルを用いてMemberが持つデータを提供・利用可能。 Security Serverがエントリポイントになり、Information Systemを利用可能。

データ交換のログが保存される。やり取りされるメッセージにはタイムスタンプが付く。 ログにはタイムスタンプとデジタル署名が用いられ、訴訟手続などにも利用可能。 TSAがタイムスタンプを提供し、Security Serverがログを保存する。 CAがメッセージへのサインを提供する。

詳しくは、 X-Roadのアーキテクチャ詳細 参照。そこの絵がわかりやすい。

フェデレーション

X-Roadエコシステム間のフェデレーション にあるように、異なるX-Roadエコシステム間をフェデレーションできる。 複数のエコシステムとフェデレーション可能だが、推移的なつながりは不可能であり、直接つながった同士のみ。

Federating X-Road System Overview にも記載がある。

開発ロードマップ

X-Roadの開発ロードマップ によると、

  • 同期的なメッセージングからPub/Subモデルへの対応(Kafkaなど)
  • 大量データノストリームへの対応
  • アーキテクチャの改善。モジュライズの促進。拡張機能を取り込みやすくする

といった改善が見込まれているようだ。次期バージョンはX-Road 7。

歴史

X-Roadの歴史 にあるように、2001年にエストニアにおいてプロジェクトが始まった。 前身から考えるとかなり歴史のあるプロダクトである。 また、歴史的背景から、最初は公的機関での利用が前提となっており、そこから民間に広がりつつあるような印象である。 民間での利用を促進するにはどうしたらよいのか?という主旨と思われる論文も公開されている。 -> On the Systematic Exploitation of the Estonian Data Exchange Layer X-Road for Strengthening Public-Private Partnerships

世界中で採用が進む

X-ROAD® WORLD MAP を見ると、世界各地でX-Road採用実績がある。 日本にも採用実績がある。 ニチガスの例。 なお、本事例にPlanetway社が関係している。Planetway社のプロフィール 参照。

実装モデル

X-Road Implementation Models に示されている通り、X-Roadの実装モデルは複数挙げられる。 上記サイトに掲載されていた例は以下の通り。

  • 国家で単一のX-Roadモデル
  • 地域ごとのX-Roadモデル
  • ビジネスドメインやセクタごとのX-Roadモデル
  • 組織ごとのX-Roadモデル

またX-Roadはフェデレーション機能を持っているので、 異なるX-Roadエコシステム間を繋ぎ利用することができる。 国際間で繋いでいる例もある。

またIstioのようなマイクロサービスアーキテクチャに対し、 X-Roadはあくまで異なるステークホルダ間のデータ連携を対象としているため、 一見似たように見えても異なるモデルである。

開発(ソースコード)

X-RoadのGitHub

関連文献

関連する論文がいくつかありそうだった。 On the Systematic Exploitation of the Estonian Data Exchange Layer X-Road for Strengthening Public-Private Partnerships 等。

なお、X-Roadのドキュメントライブラリに一覧が載っている。

X-Roadの広がりに関する課題

On the Systematic Exploitation of the Estonian Data Exchange Layer X-Road for Strengthening Public-Private Partnerships にて X-Roadの民間利用が進まない原因と対策のマトリクスが紹介されていた。 以下に簡単に翻訳したものを示す。

問題/ソリューション 認知を挙げる 契約の簡素化(単一化) セミナー・ハッカソン 導入マテリアル 収益性に関する具体的な例 メンバーシップパッケージの充実(?) セクター別のアプローチ 官僚を減らす(?) 様々なチャンネルでの情報発信
X-Roadのアクセスや利用が複雑すぎる y y y y y
プロセスに関係者が多すぎる y y y
プラットフォームが高すぎる y y
十分に認知されていない y y y
収益性についての理解が足りない y y y

ソリューションに付帯されるデータ共有の仕組み

Snowflake Data Sharing

Snowflake Secure Data Sharingの紹介 のとおり、 Snowflakeに保存したオブジェクトを他のSnowflakeアカウントに共有できる。 ポイントは「他のSnowflakeアカウントに」というところである。つまり異るサービス間で共有する目的のものではなさそう。 ただ、その後の説明を読むと「リーダーアカウント」(ここではReaderか)を発行でき、リーダーアカウント向けに読み取り専用でデータを共有できるようだ。

共有できるオブジェクトは以下の通り。

  • テーブル
  • 外部テーブル
  • 安全なビュー
  • 安全なマテリアライズドビュー
  • 安全な UDFs

共有されたデータを利用する際は、「読み取り専用」のデータベースが定義される。 また実際にコピー/転送されるわけではない。(同じ実態をコンピュートリソースが参照するという意味だと理解)

S3 Access Points

S3 Access Pointsに関するAWSブログ に記載の通り、2019年時点でS3に個別のアクセスポイントを設ける機能がリリースされている。

アクセスポイントを発行し、アクセスポイントポリシーを適用可能。 以前であれば、バケットに対してバケットポリシーを適用していたのだが、S3 Access Pointsを利用して個別のアクセスポイントを払い出すことができるようになった。 つまり、バケットポリシーで個別の制御を実現しようとすると、たくさんのポリシーをひとつのバケットポリシーに記載する必要があったが、 ひとつの接続可否をひとつのポリシーで管理出来るようになった、と言える。

S3アクセスポイントのうれしい点を自分なりの理解で解説してみる あたりにユーザ視点での意義が書かれている。分かり易い。

Amazon S3 Access Points が公式情報。

AWS Storage Gateway

AWS Storage Gateway にアーキテクチャの絵がまとまっているが、S3とオンプレのシステムを繋いでデータ共有するにあたり、 ゲートウェイの機能を提供する。

AWS上で素朴にS3バケットポリシーを使ってアカウント間共有

もっと素朴に実現する方法はあるのか?という意味では、Amazon S3のバケットを特定のAWSアカウントに共有する のブログの通り、S3のバケットポリシー上の工夫で対応可能。 バケットポリシーで特定のAWSアカウントを指定して共有できる。

ただし、この場合は、S3 Access Pointsで示したようなバケットポリシーの課題が生じる。

AWS Redshift Data Sharing

Amazon Redshift Data Sharing が一般提供開始となり、東京リージョンでもご利用可能 のとおり、 Redshift間でデータを共有する機能がある。

Announcing Amazon Redshift data sharing (preview) の通り、アカウントまたぎも可能そうに見える。

Treasure Data Data Exchange

トレジャーデータ契約企業同士のデータ連携を簡単に実現する「Data Exchange」機能を紹介! の通り、 ユーザが自身で所有しているデータを他のアカウントにデータを共有する事が可能。

また共有する際に、データ抽出量のクエリを渡すことができる。 これにより、特定のデータだけ渡す、などが可能。

PlanetCross

Planetway 社が提供するソリューション。 PlanetCorss の通り、エストニアの電子政府で利用されているX-Roadを 民間企業向けにカスタマイズして提供している。

上記ウェブサイトに記載されているが、ユーザ企業ごとにPlanetCross環境を立て、 それを通じて互いにデータ連携できるようになっている。

このモデルだと、GAIA-X/IDSのコネクタでデータスペースをつなげるモデルに近い。

受賞歴を見ると、特に2016、2017年あたりに注目を集めた様子。

(関連)Nortal社

Nortal 社はエストニアの電子政府ソリューションの40%異常を計画・実行した実績を持つ。 eIDに強みを持つようだ。

Aktors社

Aktors 社はX-Roadの先駆者。 Aktors CEOのAleksander Reitsakasは、2001年の最初のX-Roadプロジェクトマネージャ。

データエスクロー(第三者預託)

Crossbeam

CROSSBEAMDATA ESCROW 101あたりに紹介されている。 データを預かり、利害関係者に部分的に共有する機能を提供する。 パートナーマネジメントの一貫。

codekeeper

Codekeeperのエスクローサービス に記載の通り、重要なデータを預かるサービス。

データコラボレーションに関する研究機関

AIDAC

AIDAC の通り、筑波大学の研究グループ。 データコラボレーション 解析 を中心とした研究。

主旨は以下の通り。

組織や分野を越えたデータ統合には、データサイズが巨大であることや組織ごとのデータ特性の違いなどの課題があります。またさらにデータの秘匿性についても考慮する必要があります。本事業では、組織や分野にまたがって分散したデータに対して、元データの直接的な統合を行うことなく、高度な統合解析を可能とするための技術開発を行います。

また、以下の通りNEDOプロジェクトとして手がけた様だ。

本プロジェクトは、独立行政法人新エネルギー・産業技術総合開発機構(NEDO)の委託を受けて、 「人工知能技術適用によるスマート社会の実現(人工知能技術の社会実装に関する日米共同研究開発)」において実施するものです。

人工知能技術適用によるスマート社会の実現によると、 実施期間は以下の通り。

事業期間:2018年度~2022年度、2020年度予算:19.5億円

人工知能技術適用によるスマート社会の実現 プロジェクト紹介 に具体的なプロジェクトタイトルが載っている。

気になったプロジェクトは以下の通り。

  • MyData に基づく人工知能開発運用プラットフォームの構築:国立大学法人東京大学他
  • データコラボレーション解析による生産性向上を目指した次世代人工知能技術の研究開発:国立大学法人筑波大学他

セキュリティの情報共有

MISP

MISP にあるとおり、セキュリティの脅威を共有するプラットフォームとオープンソースソフトウェア。

共有