Your SlideShare is downloading. ×
LODのOLAP分析を可能にするETLフレームワークの提案
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

LODのOLAP分析を可能にするETLフレームワークの提案

399
views

Published on

An ETL Framework for on-line analytical processing of Linked Open Data at DEIM2013, in Japanese.

An ETL Framework for on-line analytical processing of Linked Open Data at DEIM2013, in Japanese.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
399
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. LODのOLAP分析を可能にするETLフレームワークの提案 井上寛之1,天笠俊之2,3,北川博之2 1 筑波大学 大学院 システム情報工学研究科 コンピュータサイエンス専攻 2 筑波大学 システム情報系 情報工学域 3 宇宙航空研究開発機構 宇宙科学研究所 宇宙科学情報解析研究系 1
  • 2. 発表の流れ背景前提知識目的と問題関連研究提案手法実験まとめ,今後の課題 2
  • 3. Linked Open Data,RDFLinked Open Data の広がり  構造化されたデータをWebで公開・共有する方法の一つ  他のデータとリンクすることで「データのWeb」を構築 例)データシティ鯖江(福井県鯖江市)  市内トイレ情報,AED設置箇所,イベント情報,…  XML形式によるRDFデータの公開Resource Description Framework(RDF)  Webにおけるモノとモノの関係を記述するフレームワーク  W3C によって標準化1  三つ組(トリプル):主語,述語,目的語 タイトル http://www.tsukuba.ac.jp/ “筑波大学” 31. W3C:REC-rdf-syntax-19900222 楕円:リソース,矩形:リテラル(文字列)
  • 4. On-Line Analytical ProcessingOLAP1  大量に蓄積されたデータに対して,複雑で統計的な 問合せを行う分析手法の一つ Mac カテゴリ OS  製品の売上分析等,BIで活用 PC Win ノート  データキューブを構成 デスク 北海道 32 686  分析の対象となる数値(事実) 128 東 東北 8 2  分析の軸(次元) 100 64 地方 東京 386 686 386 8 32 大阪 128 2 西 4 16 広島 386 16 64 8 福岡 64 32 686 Q1 Q2 128 Q3 上期 Q41. E.F. Codd, S.B. Codd, C.T. Salley, and Inc Codd & Date. Providing OLAP (On-line Analytical Processing) to User-analysts: 下期 An IT Mandate. Codd amp; Associates, 1993. 時期 4 図: http://www.atmarkit.co.jp/fwin2ktutor/sql02/sql02_03.html
  • 5. OLAP のための ETL Extract, Transform, and Load(ETL)  Extract: 情報源からのデータ抽出  Transform: データの変換・加工  Load: データウェアハウスへの読み込み 関係データベースに格納されたデータに対するOLAP  スタースキーマ カテゴリ 次元表  事実表を中心とし, ID 複数の次元表から構成される 大カテゴリ 小カテゴリ 事実表 売上実績 次元表 次元表 時期 ID 地方 ID カテゴリ_id ID 上期下期 時刻_id 東西 四半期 店舗_id 都市名 売上高 5
  • 6. Linked Open Data の分析Linked Open Data(LOD)  分野: 政府,地理,医学,生物学,図書,映画,音楽,…  サイズ: 295データセット,310億トリプル,5.4億リンク1 数値・統計データが多く公開されている  国政データ – Data.gov(米国など),Eurostat(EU諸国)  科学データ – 遺伝子,創薬  センサデータ – 気象観測,放射線観測 数値・統計データが多く公開されており,分析が必要1. http://www.w3.org/wiki/SweoIG/TaskForces/CommunityProjects/LinkingOpenData 6
  • 7. 関連研究: LODに対するOLAP分析2つの方向性 1. RDFデータを関係DBへ格納後,OLAPを行う  Kampgen ら [1] – 既存のOLAPシステムを利用する点で有利 2. RDFデータに直接OLAP的な操作を行う  Etcheverry ら [2,3] – SPARQL(RDF問合せ言語)を利用 どちらの手法もOLAPの為の特定のRDF語彙を必要とする  RDF Data Cube (QB) Vocabulary  Open Cube Vocabulary,QB4OLAP 特定の語彙に依存しない,一般的な手法が必要である  Linked Open Data ではスキーマ,RDF語彙の利用に制約はない[1] B. Kampgen, and A. Harth. “Transforming Statistical Linked Data for Use in OLAP Systems”. In I-SEMANTICS 2011, 7th Int. Conf. on Semantic Systems, 2011.[2] L. Etcheverry and A. A. Vaisman. “Enhancing OLAP Analysis with Web Cubes”. In ESWC, volume 7295 of Lecture Notes in Computer Science, pages 469–483. Springer, 2012.[3] L. Etcheverry and A. A. Vaisman. “QB4OLAP: A Vocabulary for OLAP Cubes on the Semantic Web”. 7 In COLD, volume 905 of CEUR Workshop Proceedings. CEURWS.org, 2012.
  • 8. 関連研究: LODに対するOLAP分析 2つの方向性 1. RDFデータを関係DBへ格納後,OLAPを行う  Kampgen ら [1] – 既存のOLAPシステムを利用する点で有利 2. RDFデータに直接OLAP的な操作を行う  Etcheverry ら [2,3] – 本研究では,一般的な SPARQL(RDF問合せ言語)を利用 Linked Open Data に対して, 前者の関係DBに格納するアプローチで,  どちらの手法もOLAPの為の特定のRDF語彙を必要とする既存のOLAPシステムを利用した分析処理を行う手法を提案する  RDF Data Cube (QB) Vocabulary  Open Cube Vocabulary,QB4OLAP  特定の語彙に依存しない,一般的な手法が必要である  Linked Open Data ではスキーマ,RDF語彙の利用に制約はない [1] B. Kampgen, and A. Harth. “Transforming Statistical Linked Data for Use in OLAP Systems”. In I-SEMANTICS 2011, 7th Int. Conf. on Semantic Systems, 2011. [2] L. Etcheverry and A. A. Vaisman. “Enhancing OLAP Analysis with Web Cubes”. In ESWC, volume 7295 of Lecture Notes in Computer Science, pages 469–483. Springer, 2012. [3] L. Etcheverry and A. A. Vaisman. “QB4OLAP: A Vocabulary for OLAP Cubes on the Semantic Web”. 8 In COLD, volume 905 of CEUR Workshop Proceedings. CEURWS.org, 2012.
  • 9. 本研究の目的と問題目的 Linked Dataとして一般に公開されている数値・統計 データを,OLAPにより分析可能にする一連の変換 フレームワークの提案問題 Linked DataからOLAP分析へのマッピング  RDF(グラフ構造)を直接OLAPするのは困難  既存のOLAPシステムを用いた分析を行うための変換  OLAPでは分析の軸が必要  軸に利用する概念階層の作成 9
  • 10. 問題に対する本研究のアプローチ RDF の OLAP 分析 ↓ RDF(グラフ構造)を関係スキーマにマッピング OLAP に用いる分析の軸の準備 ↓ データ自身およびリンクする 外部の情報における概念階層から軸を導出 (RDF, Linked Data の特徴を利用) 10
  • 11. フレームワーク概要 関係スキーマへの マッピング1) RDFの抽出 2) RDFを関係データベースへ格納 4) スキーマの生成 <XML> Web 分析の軸の導出 3) 次元導出 11
  • 12. 1. RDFデータの取得1. RDFデータの取得 2. RDFを関係データベースへ格納 3. 次元の導出分析対象のRDFデータを取得 4. スキーマの生成  RDFダンプの読み込み  URIによるRDFの参照  同一ホスト内のリソース(URI)を再帰的に取得  目的語として利用されている外部リソースも取得 分析対象(www.example.com) 外部リソース(www.w3.org) 12
  • 13. 1. RDFデータの取得 2. RDFを関係データベースへ格2. RDFを関係DBへ格納 (1/3) 3. 次元の導出 OLAP分析に利用可能なように格納する必要がある 4. スキーマの生成  Property Table1(PT)- 主語とその全ての属性が一行に格納される URI 時刻 製品カテゴリ 売上高 店舗 売上実績_1 時刻_1 コンピュータ 190,000 つくば店 テーブルの属性を把握する必要がある  LODではRDFスキーマを利用する制限がない  あるリソースがどのような属性を持つのか把握できない Type-Partitioned Triple Store(TPTS) の提案  RDFリソースを rdf:type 毎に Triple Store2 に格納  三つ組(主語,述語,目的語)を一行で格納  “述語” の値から,rdf:type 毎の属性が把握することができる  Property Table として作り変える 1. Wilkinson, K.: Jena property table implementation. SSWS, pp. 35–46. Athens, Georgia, USA (2006) 2. Broekstra, J., et al.: Sesame: A Generic Architecture for Storing and Querying RDF and RDF Schema. 13 In: Horrocks, I., Hendler, J. (eds.) ISWC 2002. LNCS, vol. 2342, pp. 54–68. Springer, Heidelberg (2002)
  • 14. 1. RDFデータの取得2. RDFを関係DBへ格納 (2/3) 2. RDFを関係データベースへ格納 3. 次元の導出Type-partitioned Triple Store (TPTS) 4. スキーマの生成  rdf:type 毎のテーブルに分割  トリプルを一行に格納,目的語のデータ型も格納つくば店 コンピュータ “190,000”^^xsd:integer 店舗 製品カテゴリ 売上高 “売上実績” テーブル(TPTS) 売上実績_1 時刻_1 時刻 主語 述語 目的語 型 売上実績_1 時刻 時刻_1 リソース 売上実績_2 売上実績_1 製品カテゴリ コンピュー リソース 時刻 タ 時刻_2 売上実績_1 売上高 190,000 数値 売上高 売上実績_1 店舗 つくば店 リソースrdf:type “4,000” 売上実績_2 時刻 時刻_2 リソース売上実績 店舗 ^^xsd:integer 売上実績_2 売上高 4,000 数値 水戸店 14 売上実績_2 店舗 水戸店 リソース
  • 15. 1. RDFデータの取得2. RDFを関係DBへ格納 (3/3) 2. RDFを関係データベースへ格納 3. 次元の導出Property Table(PT) へ変換 4. スキーマの生成  各 rdf:type がどのような属性を持つか把握できた“売上実績” テーブル(TPTS) 得られたスキーマ主語 述語 目的語 値タイプ売上実績_1 時刻 時刻_1 リソース 売上実績売上実績_1 製品カテゴリ コンピュー リソース 主語[PK] タ 時刻[FK]売上実績_1 売上高 190,000 数値 製品カテゴリ[FK]売上実績_1 店舗 つくば店 リソース 売上高売上実績_2 時刻 時刻_2 リソース 店舗[FK]売上実績_2 売上高 4,000 数値 PK: 主キー FK: 外部キー売上実績_2 店舗 水戸店 リソース“売上実績” テーブル(PT)主語[PK] 時刻[FK] 製品カテゴリ[FK] 売上高 店舗[FK]売上実績_1 時刻_1 コンピュータ 190,000 つくば店売上実績_2 時刻_2 null 4,000 水戸店 15
  • 16. ユーザーによるメジャーの選択OLAPの分析対象とする値(メジャー)の 選択をユーザーに依頼する 在庫 URI 製品カテゴリ 売上実績 製品名 URI URI 製品カテゴリ_URI 名称 製品カテゴリ_URI 店舗_ID時刻 時刻_URI 在庫数URI 店舗_URI 店舗日時 売上高 URI 地名_URI gn:地名 URI 来客実績 地名 URI 店舗_URI 時刻_URI 来客数 16
  • 17. 1. RDFデータの取得 3. 次元の導出 2. RDFを関係データベースへ格納 3. 次元の導出 4. スキーマの生成 OLAPに利用する次元表を作成する  本研究では三種類の作成方法を提案1 2 データに直接記述されたリテラルの利用 データに内在する階層構造の利用 親カテゴリ URI 事実表 製品カテゴリ 売上実績 名称 URI URI 時刻 名称 製品カテゴリ_URI 3 URI 時刻_URI 親カテゴリ_URI データセット外部にある 日時 階層構造の利用 店舗_URI 売上高 店舗 URI GeoNames gn:地名_URI 17
  • 18. 3 データセット外部にある階層構造の利用 予め階層構造を取得できると把握されている 外部データセット(オントロジ)の利用 例)GeoNames  地理情報の階層構造を取得できるとわかっている  つくば市/茨城県/日本/アジア 外部データセット(リソース) 分析対象 つくば市 日本 水戸市 茨城県 階層構造 18
  • 19. 1. RDFデータの取得4. スキーマの生成 2. RDFを関係データベースへ格納 3. 次元の導出例)売上高 がメジャーの場合 4. スキーマの生成  事実表)売上実績  次元表)販売時刻,製品カテゴリ,店舗-gn:地名 製品カテゴリ 時刻 URI 実績 URI 名称 次元表 URI 時 製品カテゴリ_URI 店舗-gn:地名 日 販売時刻_URI URI 月 販売店舗_URI L1(市区町村) 四半期 売上高 L2(都道府県) 年 事実表 次元表 L3(国) L4(大陸) 次元表 スキーマの出力(Mondrian 向け XMLファイル) 19
  • 20. 実験目的  Linked Dataとして公開されている数値データを対象に, 本手法を用いてOLAPに用いるスキーマの導出が可能か検証実験)空間放射線量 観測データ  National Radioactivity Stat as Linked Data1  文部科学省発行の環境放射能水準調査2をRDF化したデータセットその他の実験  Linked Sensor/Observation Data3 への適用  マウス遺伝子データ等への適用 1 http://www.kanzaki.com/works/2011/stat/ra/ 2 http://radioactivity.mext.go.jp/ja/monitoring_by_prefecture/ 20 3 http://wiki.knoesis.org/index.php/LinkedSensorData
  • 21. 実験)結果(1/2) 放射線量 観測データはクローリングして取得  トリプル数:1,003,410 個(2011年03-12月)  地理情報:GeoNames ダンプデータの利用 rdf:type  観測インスタンス,観測時刻,観測地(GeoNames) 観測インスタンス 観測値 rdf:value ra:20110315/p02/t20 “0.040” ev:place ev:time 観測地 gn:2111833 観測時刻 tl:at time:20110315T22PT1H “2011-04-14T00:00:00”^^xsd:dateTime“ra” は “http://www.kanzaki.com/works/2011/stat/ra/”,”time” は “http://www.kanzaki.com/works/2011/stat/dim/d/”“gn” は “http://sws.geonames.org/”,”ev” は “http://purl.org/NET/c4dm/event.owl#” 21”tl” は “http://purl.org/NET/c4dm/timeline.owl#”,”rdf” は “http://www.w3.org/1999/02/22-rdf-syntax-ns#”
  • 22. 実験)結果(2/2)観測値をメジャーとした場合のスキーマを導出  事実表)観測値を含む,観測インスタンステーブル  次元表) 1. 観測時刻(観測時刻から階層構造を作成) 2. 観測地(GeoNamesのリソースから階層構造を取得)次元表 事実表 次元表time(観測時刻) observation_instance place(観測地)subject(主語) (観測インスタンス) subject(主語)sec(秒) subject(主語) layer_1(市区町村)min(分) place (Place_subject) layer_2(都道府県)hour(時) time (Time_subject) layer_3(国)day(日) value(観測値) layer_4(大陸)month(月)year(年) 22
  • 23. 実験)Mondrian OLAP による分析例 観測地 観測地 観測時刻 (μSv/h)(GeoNames) 23
  • 24. 観測地について Drilled Down 実験)Mondrian OLAP による分析例 観測地 観測地 観測時刻 (μSv/h)(GeoNames) 24
  • 25. 観測地について Drilled Down 実験)Mondrian OLAP による分析例 観測地 観測地 観測時刻 福島県を観測時刻で Drilled Down (μSv/h)(GeoNames) 25
  • 26. まとめ,今後の課題 LODのOLAP分析を可能にするETLフレームワークを提案  OLAPの為の特定のRDF語彙の利用を必要としない  既存手法よりも多くのLODをOLAP分析可能にする  RDF(グラフ構造)を関係スキーマにマッピング  データの内部,および外部の情報から階層構造を取得  RDF,Linked Dataの特徴を生かした処理 気象観測,生物情報学データに本手法を適用  分析対象を決めた時の,分析の軸を導出  OLAP分析に利用するスタースキーマを生成 今後の課題  本手法は “rdf:type” に強く依存  “rdf:type” が,複数記述されている主語に対する処理  “rdf:type” が,記述されていない主語に対する処理  分析対象LODの更新を,スキーマへ更新する仕組みの検討 26
  • 27. ご清聴ありがとうございました 27