D-OceanではじめるSDP #02

エンティティを共有する。

「D-OceanではじめるSDP #01」では、人とデータが出会う場であるソーシャル・データプラットフォーム(Social Data Platform:SDP)と、具現化したサービス「D-Ocean」の概要について触れましたが、今回はその使い方をご案内します。SDPにはソーシャルネットワークとデータプラットフォームの二つの側面がありますが、それぞれについて見ていきます。

その前にエンティティとグループの概念について説明しておきます。D-Oceanでは登録されているデータセットのことをエンティティ(Entity)と呼び、これを登録や共有、あるいは欲しいデータが見つからなければ要求するなどして、データを軸としたコミュケーションを行います。

エンティティは、まずはマイエンティティと呼ばれるログインしているユーザー本人でしか参照や編集ができない領域に登録することになります。マイエンティティにはスタートページの画面上部の[MY ENTITIES]から遷移します。

マイエンティティに登録したエンティティを公開することで他のユーザーとのコミュニケーションを行うわけですが、エンティティの公開範囲を特定のユーザー間に限定したい場合はグループという機能を使います。グループは招待制で、参加してほしいユーザーのみで構成することができるため、目的に応じて個別に作成するとよいでしょう。グループにはスタートページの画面上部の[GROUP]から遷移します。

なお、エンティティやグループの作成方法については後述します。

データプラットフォームとして使う。

では、データプラットフォームとして使ってみましょう。まずはエンティティの登録を行います。データセットは「BigQueryではじめるSQL #01」でも使用したKaggleの「E-Commerce Data」を使用します。このデータセットのページ右上部の「Download」というリンクをクリックすれば、登録用データの準備は完了です。

スタートページの画面上部の[MY ENTITIES]をクリックして、マイエンティティのページに遷移します。そこで画面右下に表示される[+]ボタンをクリックすると[Add new entity]というモーダルが表示されるので、こちらでエンティティの登録を行います。[ファイル選択]ボタンからさきほどダウンロードした「data.csv」を選択し、各設定項目を任意に入力後、モーダル下部の[Submit]をクリックすればエンティティの登録は完了です。

なお、各設定項目の意味は以下のとおりです。

  • Entity name:エンティティの名前(半角)
  • Description:説明(半角、全角)
  • Tag:検索に使用されるタグ(半角、全角)
  • Column Definition : 列の定義(auto もしくは [カラム名:データ型], [カラム名:データ型], … で指定)
  • Option : 未使用
  • Style : エンティティ一覧での表示形式
  • Data file : ブラウザ経由でアップロードする CSV ファイル

登録した「ec_data」がマイエンティティに表示されているので、タイトルエリアをクリックして詳細画面を表示します。

画面下部の[Query]ボタンからクエリ画面を表示します。入力エリアに「SELECT * FROM $ec_data LIMIT 1000」というSQL文が表示されるかと思います。そのSQL文の「SELECT」と「FROM」の間に「InvoiceNo, StockCode」というテキストを挿入して、青い[Execute]ボタンをクリックしてみましょう。「InvoiceNo」と「StockCode」の二つの列と1,000行に絞られたデータが右下ペインに表示されるかと思います。このように非常に手軽にSQLを実行することができるわけです。

SELECT
  InvoiceNo
 ,StockCode
FROM 'ec_data'
LIMIT 1000

ソーシャルネットワークとして使う。

では、ソーシャルネットワークとして使ってみましょう。他のユーザーとのコミュニケーションを行うために、以下の機能が用意されています。

  • 投票する(♡を送る)
  • コメントする
  • ユーザーをフォローする
  • データをリクエストする
  • グループを作る

エンティティの一覧や詳細から[♡](ハートマーク)をクリックすることで、そのエンティティに投票することができます。

エンティティの詳細から、そのエンティティへのコメントを付けることができます。

気になるユーザーがいたら、フォローすることでそのユーザーの行動に応じた通知を受け取ることができます。画面左側の人型のアイコンをクリックして[USERS]画面に遷移し、右上の検索ボックスで名前を入力して検索して表示されるユーザー一覧から[Follow]ボタンをクリックしてフォローします。

欲しいデータが見つからない場合は、他のユーザーやグループに対してリクエストを投稿することができます。マイエンティティの画面右下に表示される[+]ボタンから[Add new entity]モーダルを表示し、一番上のプルダウンで[Submit Request]を選択します。どのようなデータが欲しいかを[Description]に記入し[Submit to]でリクエストの公開範囲を指定して[Submit]ボタンをクリックすれば投稿完了です。

最後にグループの作成方法について説明しておきます。冒頭でも触れたとおり、エンティティの公開範囲を特定のユーザー間に限定したい場合にはグループ機能を使います。グループの作成には、スタートページの画面上部の[GROUP]をクリックして、グループのページに遷移します。そこで画面右上に表示される[Create Group]ボタンをクリックすると[Adding a new group]というモーダルが表示されるので、こちらでグループの作成を行います。

また、すでに存在するグループに参加することも可能です。例えば「D-Ocean User Group」に参加するには、グループ画面右上の検索ボックスに「D-Ocean User Group」と入力して検索すると該当のグループが一覧に表示されるため、そこで[Join]ボタンからグループへの参加申請をすることが可能です。

このように、データプラットフォームとしてエンティティの登録やクエリを簡単に行うことができ、さらにソーシャルネットワークとしてデータを軸に他のユーザーと気軽にコミュニケーションを行うことが可能となっています。ぜひ、人とデータが出会う場であるSDPの世界に触れてもらえればと思います。