SlideShare a Scribd company logo
1 of 21
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
グラフをインタラクティブに可視化する
アプリを作ってみた
Confidential – Oracle Internal/Restricted/Highly Restricted
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
Confidential – Oracle Internal/Restricted/Highly Restricted
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
開発目標
Confidential – Oracle Internal/Restricted/Highly Restricted 3
グラフっぽい画面を
Webアプリケーションっ
ぽい感じで見せる。
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
開発目標(Sub)
•せっかく作るのなら、なるべく
汎用的に使えるようにする。
•グラフの操作を考えると、
Single Page Applicationっぽい
感じがいい。
Confidential – Oracle Internal/Restricted/Highly Restricted 4
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Logical Architecture
Confidential – Oracle Internal/Restricted/Highly Restricted 5
JavaScript
- JQuery
- Sigma.js
HTML/CSS
Client / Browser Web Server PGX Server DB Server
REST/Ajax HTTP
(PGQL)
JDBC
RESTful Service
(Glassfish)
PGX Java Library
JSONIC
PGX
(Server Mode)
Oracle Database
12.2
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 6
DEMO
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
デモ環境セットアップ方法
Confidential – Oracle Internal/Restricted/Highly Restricted 7
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Current Physical Architecture
Confidential – Oracle Internal/Restricted/Highly Restricted 8
JavaScript
- JQuery
- Sigma.js
HTML/CSS
Client / Browser Web Server PGX Server DB Server
REST/Ajax JDBC
RESTful Service
(Glassfish)
PGX Java Library
JSONIC
PGX
(Server Mode)
Oracle Database
12.2
この範囲で1つの仮想マシン上で動作
Oracle Linux + Oracle DB 12.2
今のところ、すべてクライアントPC上で動作
PC上にGlassfish
(もしくはNetbeans)を
直インストール
Chromeで動作
HTTP
(PGQL)
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
1.DBサーバ + PGXサーバ
• Virtual Boxでセットアップ
– セットアップ方法は以下をご参照
• https://github.com/oracle4engineer/graph-analytics
– もちろんVirtualBoxを使わずにセットアップしていただいても結構です。
Confidential – Oracle Internal/Restricted/Highly Restricted 9
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
2.Webサーバのセットアップ
• Glassfishサーバ(4.x)をダウンロード
– zipを展開すればインストール完了
• Binフォルダから「asadmin start-domain」で起動
– Domain1というドメインが勝手に作られます。
• 管理ツール「Glassfish console」からwarファイルをデプロイ
– 後述
Confidential – Oracle Internal/Restricted/Highly Restricted 10
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
デプロイ方法
Confidential – Oracle Internal/Restricted/Highly Restricted 11
メニューから「Application」
をクリック
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
デプロイ方法
Confidential – Oracle Internal/Restricted/Highly Restricted 12
デプロイボタンをクリック
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
デプロイ方法
Confidential – Oracle Internal/Restricted/Highly Restricted 13
「ファイルを選択」をクリッ
クし、PgxRest.warファイル
を選択
「Implicit CDI」のチェック
ボックスを外す
あとは手なりでOK
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
設定ファイル
Confidential – Oracle Internal/Restricted/Highly Restricted 14
JavaScript
- JQuery
- Sigma.js
HTML/CSS
Client / Browser Web Server PGX Server DB Server
REST/Ajax HTTP JDBC
RESTful Service
(Glassfish)
PGX Java Library
JSONIC
PGX
(Server Mode)
Oracle Database
12.2
PGX接続用JSONpgxrest.properties
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 15
pgxrest.properties
Content
pgxurl=<PGXサーバのURL>:<PGXサーバのポート>
pgxjson=<PGXサーバ接続用JSONのファイル名(path名)>
Webサーバ上のコンテナ起動ディレクトリの下に配置
・Glassfishの場合は<ドメインルート>/config
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Pgx接続用JSONファイル
• このファイルをWebサーバ上のどこかに適当に置いておき、その場所を先
の「Pgxrest.properties」ファイルに記載しておく
– 相対パスで記載する場合のカレントディレクトリは、 <ドメインルート>/config
– Pgxrest.propertiesファイルと同じ場所でも全然問題なし
Confidential – Oracle Internal/Restricted/Highly Restricted 16
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
グラフ用データ
• 適当に用意してください
• ただし、本ツールには以下の制約があります。
– 基本的にすべてのノードは「name」プロパティと「type」プロパティを持つ必要がある
• Nameプロパティがなくても動くっちゃ動きますが、ノードの名前が見えません。
• Typeプロパティがなくても動きますが、ノードの色分けはされません。
– 最初にアクセスするノード(=ルートノード)は「isroot」プロパティを持つ必要があり、
そこに「1(整数型)」をセットする必要がある。
• ルートノードは最大6個まで指定可能
• ルートノードの種類=typeの種類になり、typeプロパティの値を元に、色分けされます。
• 6個以上のルートノード、typeの種類があっても、動くっちゃ動きますが、見た目崩れます。
• isrootプロパティがセットされていないと、データを取りに行けないので動きません。
Confidential – Oracle Internal/Restricted/Highly Restricted 17
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
ソースコード他
• Githubにて公開しています。
– https://github.com/no-zone6/pgxvis
• WARファイルもその中にありますので、ご活用ください。
Confidential – Oracle Internal/Restricted/Highly Restricted 18
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
今後の開発目標(暇があったら)
• グラフデータの絞り込み検索
• グラフデータの登録・更新機能
• グラフ分析機能の活用
Confidential – Oracle Internal/Restricted/Highly Restricted 19
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 20
Oracle PGXの可視化ツールを作ってみた

More Related Content

What's hot

2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話Daisuke Ikeda
 
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例Zabbixのご紹介 - 会社概要、製品、サービス、活用事例
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例Zabbix
 
OpenStack環境構築支援について
OpenStack環境構築支援についてOpenStack環境構築支援について
OpenStack環境構築支援についてSatoshi Konno
 
#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側recotech
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops裕貴 荒井
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code裕貴 荒井
 
自動化のコストパフォーマンス
自動化のコストパフォーマンス自動化のコストパフォーマンス
自動化のコストパフォーマンス裕貴 荒井
 
第6回zabbix jp勉強会資料
第6回zabbix jp勉強会資料第6回zabbix jp勉強会資料
第6回zabbix jp勉強会資料Daisuke Ikeda
 
Introducing NGINX App Protect (Japanese Webinar)
Introducing NGINX App Protect (Japanese Webinar)Introducing NGINX App Protect (Japanese Webinar)
Introducing NGINX App Protect (Japanese Webinar)NGINX, Inc.
 
NGINX + Ansible Automation Webinar (日本語版)
NGINX + Ansible Automation Webinar (日本語版)NGINX + Ansible Automation Webinar (日本語版)
NGINX + Ansible Automation Webinar (日本語版)NGINX, Inc.
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1近藤 繁延
 
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)Yuji Otani
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2近藤 繁延
 
Why NGINX Plus/NGINX Controller for NGINX OSS users
Why NGINX Plus/NGINX Controller for NGINX OSS usersWhy NGINX Plus/NGINX Controller for NGINX OSS users
Why NGINX Plus/NGINX Controller for NGINX OSS usersNGINX, Inc.
 
NGINX New Features (Japanese Webinar)
NGINX New Features (Japanese Webinar)NGINX New Features (Japanese Webinar)
NGINX New Features (Japanese Webinar)NGINX, Inc.
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)Masaya Tahara
 
#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたことrecotech
 

What's hot (19)

2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
2019/4/18 Zabbix勉強会 徹底活用本の改訂の話
 
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例Zabbixのご紹介 - 会社概要、製品、サービス、活用事例
Zabbixのご紹介 - 会社概要、製品、サービス、活用事例
 
OpenStack環境構築支援について
OpenStack環境構築支援についてOpenStack環境構築支援について
OpenStack環境構築支援について
 
#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側
 
Cndt2021 casareal
Cndt2021 casarealCndt2021 casareal
Cndt2021 casareal
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
自動化のコストパフォーマンス
自動化のコストパフォーマンス自動化のコストパフォーマンス
自動化のコストパフォーマンス
 
第6回zabbix jp勉強会資料
第6回zabbix jp勉強会資料第6回zabbix jp勉強会資料
第6回zabbix jp勉強会資料
 
Introducing NGINX App Protect (Japanese Webinar)
Introducing NGINX App Protect (Japanese Webinar)Introducing NGINX App Protect (Japanese Webinar)
Introducing NGINX App Protect (Japanese Webinar)
 
NGINX + Ansible Automation Webinar (日本語版)
NGINX + Ansible Automation Webinar (日本語版)NGINX + Ansible Automation Webinar (日本語版)
NGINX + Ansible Automation Webinar (日本語版)
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
 
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)
MariaDB+GaleraClusterの運用事例(MySQL勉強会2016-01-28)
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
 
Why NGINX Plus/NGINX Controller for NGINX OSS users
Why NGINX Plus/NGINX Controller for NGINX OSS usersWhy NGINX Plus/NGINX Controller for NGINX OSS users
Why NGINX Plus/NGINX Controller for NGINX OSS users
 
NGINX New Features (Japanese Webinar)
NGINX New Features (Japanese Webinar)NGINX New Features (Japanese Webinar)
NGINX New Features (Japanese Webinar)
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
 
ニフクラのサービス基盤運用におけるCIの取り組み
ニフクラのサービス基盤運用におけるCIの取り組みニフクラのサービス基盤運用におけるCIの取り組み
ニフクラのサービス基盤運用におけるCIの取り組み
 
#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと
 

Similar to Oracle PGXの可視化ツールを作ってみた

Oracle cloud infrastructure shared file service comparison 20181019 ss
Oracle cloud infrastructure shared file service comparison 20181019 ssOracle cloud infrastructure shared file service comparison 20181019 ss
Oracle cloud infrastructure shared file service comparison 20181019 ssKenichi Sonoda
 
Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介Nakakoshi Yuji
 
Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Kazuyuki Sato
 
20150131 ChugokuDB-Shimane-MySQL
20150131 ChugokuDB-Shimane-MySQL20150131 ChugokuDB-Shimane-MySQL
20150131 ChugokuDB-Shimane-MySQLRyusuke Kajiyama
 
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)Shinya Sugiyama
 
Drupal deployment trial on Engine Yard
Drupal deployment trial on Engine YardDrupal deployment trial on Engine Yard
Drupal deployment trial on Engine Yard惠 紀野
 
OCI serverless introduction
OCI serverless introductionOCI serverless introduction
OCI serverless introductionSuguruSugiyama
 
Oracle GoldenGate for Big Data 12.2 セットアップガイド
Oracle GoldenGate for Big Data 12.2 セットアップガイドOracle GoldenGate for Big Data 12.2 セットアップガイド
Oracle GoldenGate for Big Data 12.2 セットアップガイドオラクルエンジニア通信
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...オラクルエンジニア通信
 
Oracle Data Integrator Cloud Serviceユーザーズガイド
Oracle Data Integrator Cloud ServiceユーザーズガイドOracle Data Integrator Cloud Serviceユーザーズガイド
Oracle Data Integrator Cloud Serviceユーザーズガイドオラクルエンジニア通信
 
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントOracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントSolarisJP
 

Similar to Oracle PGXの可視化ツールを作ってみた (20)

GDLC11 oracle-ai
GDLC11 oracle-aiGDLC11 oracle-ai
GDLC11 oracle-ai
 
Oracle cloud infrastructure shared file service comparison 20181019 ss
Oracle cloud infrastructure shared file service comparison 20181019 ssOracle cloud infrastructure shared file service comparison 20181019 ss
Oracle cloud infrastructure shared file service comparison 20181019 ss
 
Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介
 
ACI Kubernetes Integration
ACI Kubernetes IntegrationACI Kubernetes Integration
ACI Kubernetes Integration
 
Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能Oracle Solaris 11デベロッパーが押さえておきたい機能
Oracle Solaris 11デベロッパーが押さえておきたい機能
 
Oracle R Advanced Analytics for Hadoop利用方法
Oracle R Advanced Analytics for Hadoop利用方法Oracle R Advanced Analytics for Hadoop利用方法
Oracle R Advanced Analytics for Hadoop利用方法
 
20150131 ChugokuDB-Shimane-MySQL
20150131 ChugokuDB-Shimane-MySQL20150131 ChugokuDB-Shimane-MySQL
20150131 ChugokuDB-Shimane-MySQL
 
Oracle GoldenGate Cloud Service(GGCS)概要
Oracle GoldenGate Cloud Service(GGCS)概要Oracle GoldenGate Cloud Service(GGCS)概要
Oracle GoldenGate Cloud Service(GGCS)概要
 
第9回しゃちほこオラクル倶楽部
第9回しゃちほこオラクル倶楽部第9回しゃちほこオラクル倶楽部
第9回しゃちほこオラクル倶楽部
 
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)
MySQL InnoDB Clusterによる高可用性構成(DB Tech Showcase 2017)
 
Drupal deployment trial on Engine Yard
Drupal deployment trial on Engine YardDrupal deployment trial on Engine Yard
Drupal deployment trial on Engine Yard
 
Oracle GoldenGate Cloud Serviceユーザーズガイド
Oracle GoldenGate Cloud ServiceユーザーズガイドOracle GoldenGate Cloud Serviceユーザーズガイド
Oracle GoldenGate Cloud Serviceユーザーズガイド
 
OCI serverless introduction
OCI serverless introductionOCI serverless introduction
OCI serverless introduction
 
Oracle GoldenGate for Big Data 12.2 セットアップガイド
Oracle GoldenGate for Big Data 12.2 セットアップガイドOracle GoldenGate for Big Data 12.2 セットアップガイド
Oracle GoldenGate for Big Data 12.2 セットアップガイド
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...
[Modern Cloud Day Tokyo 2019] Oracle CloudでDevOps!?Javaアプリケーションのモダン開発を支援するOra...
 
Oracle Data Integrator Cloud Serviceユーザーズガイド
Oracle Data Integrator Cloud ServiceユーザーズガイドOracle Data Integrator Cloud Serviceユーザーズガイド
Oracle Data Integrator Cloud Serviceユーザーズガイド
 
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイントOracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
Oracle Solaris 10 から Oracle Solaris 11.1 への移行準備とポイント
 
Oracle GoldenGate Studioセットアップガイド
Oracle GoldenGate StudioセットアップガイドOracle GoldenGate Studioセットアップガイド
Oracle GoldenGate Studioセットアップガイド
 
Oracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみるOracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみる
 

Oracle PGXの可視化ツールを作ってみた

  • 1. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | グラフをインタラクティブに可視化する アプリを作ってみた Confidential – Oracle Internal/Restricted/Highly Restricted
  • 2. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Confidential – Oracle Internal/Restricted/Highly Restricted
  • 3. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 開発目標 Confidential – Oracle Internal/Restricted/Highly Restricted 3 グラフっぽい画面を Webアプリケーションっ ぽい感じで見せる。
  • 4. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 開発目標(Sub) •せっかく作るのなら、なるべく 汎用的に使えるようにする。 •グラフの操作を考えると、 Single Page Applicationっぽい 感じがいい。 Confidential – Oracle Internal/Restricted/Highly Restricted 4
  • 5. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Logical Architecture Confidential – Oracle Internal/Restricted/Highly Restricted 5 JavaScript - JQuery - Sigma.js HTML/CSS Client / Browser Web Server PGX Server DB Server REST/Ajax HTTP (PGQL) JDBC RESTful Service (Glassfish) PGX Java Library JSONIC PGX (Server Mode) Oracle Database 12.2
  • 6. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 6 DEMO
  • 7. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | デモ環境セットアップ方法 Confidential – Oracle Internal/Restricted/Highly Restricted 7
  • 8. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Current Physical Architecture Confidential – Oracle Internal/Restricted/Highly Restricted 8 JavaScript - JQuery - Sigma.js HTML/CSS Client / Browser Web Server PGX Server DB Server REST/Ajax JDBC RESTful Service (Glassfish) PGX Java Library JSONIC PGX (Server Mode) Oracle Database 12.2 この範囲で1つの仮想マシン上で動作 Oracle Linux + Oracle DB 12.2 今のところ、すべてクライアントPC上で動作 PC上にGlassfish (もしくはNetbeans)を 直インストール Chromeで動作 HTTP (PGQL)
  • 9. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 1.DBサーバ + PGXサーバ • Virtual Boxでセットアップ – セットアップ方法は以下をご参照 • https://github.com/oracle4engineer/graph-analytics – もちろんVirtualBoxを使わずにセットアップしていただいても結構です。 Confidential – Oracle Internal/Restricted/Highly Restricted 9
  • 10. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 2.Webサーバのセットアップ • Glassfishサーバ(4.x)をダウンロード – zipを展開すればインストール完了 • Binフォルダから「asadmin start-domain」で起動 – Domain1というドメインが勝手に作られます。 • 管理ツール「Glassfish console」からwarファイルをデプロイ – 後述 Confidential – Oracle Internal/Restricted/Highly Restricted 10
  • 11. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | デプロイ方法 Confidential – Oracle Internal/Restricted/Highly Restricted 11 メニューから「Application」 をクリック
  • 12. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | デプロイ方法 Confidential – Oracle Internal/Restricted/Highly Restricted 12 デプロイボタンをクリック
  • 13. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | デプロイ方法 Confidential – Oracle Internal/Restricted/Highly Restricted 13 「ファイルを選択」をクリッ クし、PgxRest.warファイル を選択 「Implicit CDI」のチェック ボックスを外す あとは手なりでOK
  • 14. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 設定ファイル Confidential – Oracle Internal/Restricted/Highly Restricted 14 JavaScript - JQuery - Sigma.js HTML/CSS Client / Browser Web Server PGX Server DB Server REST/Ajax HTTP JDBC RESTful Service (Glassfish) PGX Java Library JSONIC PGX (Server Mode) Oracle Database 12.2 PGX接続用JSONpgxrest.properties
  • 15. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 15 pgxrest.properties Content pgxurl=<PGXサーバのURL>:<PGXサーバのポート> pgxjson=<PGXサーバ接続用JSONのファイル名(path名)> Webサーバ上のコンテナ起動ディレクトリの下に配置 ・Glassfishの場合は<ドメインルート>/config
  • 16. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Pgx接続用JSONファイル • このファイルをWebサーバ上のどこかに適当に置いておき、その場所を先 の「Pgxrest.properties」ファイルに記載しておく – 相対パスで記載する場合のカレントディレクトリは、 <ドメインルート>/config – Pgxrest.propertiesファイルと同じ場所でも全然問題なし Confidential – Oracle Internal/Restricted/Highly Restricted 16
  • 17. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | グラフ用データ • 適当に用意してください • ただし、本ツールには以下の制約があります。 – 基本的にすべてのノードは「name」プロパティと「type」プロパティを持つ必要がある • Nameプロパティがなくても動くっちゃ動きますが、ノードの名前が見えません。 • Typeプロパティがなくても動きますが、ノードの色分けはされません。 – 最初にアクセスするノード(=ルートノード)は「isroot」プロパティを持つ必要があり、 そこに「1(整数型)」をセットする必要がある。 • ルートノードは最大6個まで指定可能 • ルートノードの種類=typeの種類になり、typeプロパティの値を元に、色分けされます。 • 6個以上のルートノード、typeの種類があっても、動くっちゃ動きますが、見た目崩れます。 • isrootプロパティがセットされていないと、データを取りに行けないので動きません。 Confidential – Oracle Internal/Restricted/Highly Restricted 17
  • 18. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | ソースコード他 • Githubにて公開しています。 – https://github.com/no-zone6/pgxvis • WARファイルもその中にありますので、ご活用ください。 Confidential – Oracle Internal/Restricted/Highly Restricted 18
  • 19. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 今後の開発目標(暇があったら) • グラフデータの絞り込み検索 • グラフデータの登録・更新機能 • グラフ分析機能の活用 Confidential – Oracle Internal/Restricted/Highly Restricted 19
  • 20. Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 20