SlideShare a Scribd company logo
1 of 49
グラフデータベース入門
株式会社セプテーニ・オリジナル
嶽 雅也
ご注意ください!!
• 本日の資料はグラフデータベースという概念を
知らない方向けの入門の資料となっています。
• Neo4jのチュートリアルをやったことある方やグ
ラフデータベースの書籍を読んだ方にとっては
物足りないかもしれません。
• グラフデータベース設計のモデリング、Cypher
の使い方などには今回の発表では触れません。
自己紹介
自己紹介
• 嶽 雅也(だけ まさや)と申します。
• 株式会社セプテーニ・オリジナル所属。
• 半年ほど前から「GANMA!」という漫画配信アプリの開発に
携わっています。
• 現職ではScalaで開発しており、最近ではiOS開発に加わり
Swiftでも開発するようになりました。
• 前職のR&D案件で、グラフデータベースという存在を知り、
Neo4jの技術調査などを行いました。
ここで皆さんに一つ質
問させてください。
本日は何のワードに刺さって
セッションを選んで頂けまし
たか?
グラフデータベース?
Neo4j?
パナマ文書関連?
アジェンダ
アジェンダ
• パナマ文書とは
• データベースの分類とは
• グラフデータベースとは
• Neo4jとは
• Neo4jを動かしてみよう
• グラフデータベースが有効なケース
• まとめ
• 参考文献
パナマ文書とは
パナマ文書の概要
• パナマ文書とは、パナマの法律事務所「モサック・
フォンセカ」から流出した膨大な量の内部文書にな
ります。
• 南ドイツ新聞が入手し、国際調査報道ジャーナリス
ト連合(ICIJ)とともに分析して、2016年4月3日に
検証結果を公表したものです。
• 昨年の4-5月にすごく話題になったので、まだ記憶
に新しいかと思います。
パナマ文書のデータ
• 今回、この流出したデータですが、電子メールや文書など様々なもの
をまとめると、2.6TBにもなります。
• この膨大な情報量の中からデータベース化できる部分が約3百万件に
及ぶドキュメントでした。
• ICIJの解析担当者が当初使用していた単純な検索ではなく、関係性の
検索を容易に行いたいと考えました。
• そこで、データをグラフ構造で持つグラフデータベースのNeo4j+グ
ラフ可視化ツールのLinkuriousを採用致しました。
グラフデータベースの置き換え前にはMySQL+Sigma.jsを使っていた
そうです。
パナマ文書での検索を実際に行
ってみましょう。
https://offshoreleaks.icij.org/
パナマ文書の解析の詳細
• ICIJの方が「ICIJがパナマ論文を解読するためにNeo4jをどのように使用
したか」というテーマで、GraphConnect Europe 2016というイベントで
発表されているので、興味のある方はご覧ください。
• スライド
• https://www.slideshare.net/neo4j/graphconnect-europe-2016-how-the-
icij-used-neo4j-to-unravel-the-panama-papers-mar-cabra
• プレゼンテーション
• https://www.youtube.com/watch?v=S20XMQyvANY&t=165s
グラフデータベースとは
の前に、混乱を避けるために、デ
ータベースの分類の話を先にさせ
てください。
データベースの分類とは
グラフデータベースとNoSQL
• 従来のRDBMS以外のデータベース管理システム
の総称をNoSQL(Not only SQL)と呼びます。
• 本日紹介するグラフデータベースですが、従来
のRDBMSや皆さんが既にご存知のNoSQL(Redis
、Cassandra、MongoDBなど)とは違います。
• 次のスライドで、書籍「NOSQLの基礎知識」に
あるNoSQLの分類の図を紹介致します。
NoSQLの分類
• 本日は他のNoSQLについては紹介しませんが、
興味のある方は書籍をご覧になってください。
グラフデータベースとは
グラフデータベースの概要
• 一言で言えば、グラフ構造を持ったデータベー
スです。
• 格納しているデータそのものではなく、データ
の相互関係に注力しているデータベースです。
• データの構造が従来のリレーションではなく、
ネットワーク状になっており、検索などの機能
を利用したい場合、効力を発揮します。
グラフのイメージ
• 例として、Neo4jの公式チュートリアルのグラフ
を見てみましょう。
グラフの基本要素
• グラフの基本的な要素は、「ノード」と「リレ
ーションシップ」です。「ノード」と「ノード
」を繋ぐ接続線を「リレーションシップ」と呼
びます。
グラフのノード
• 「ノード」には、情報を付加するためにラベル
とプロパティを設定できます。以下は、ノード
の例となります。
グラフのリレーションシップ
• 「リレーションシップ」にも、ラベルとプロパ
ティを設定できますが、始点と終点を決めて方
向性を持たせることができます。
他のグラフデータベース
• グラフデータベースについては、本日ご紹介するNeo4j以外にも種類があります。
• 私自身も使用したことがないため、今回は名前の紹介に留めておきます。
• TaitanDB
• http://titan.thinkaurelius.com/
• Oracle Spatial and Graph
• http://www.oracle.com/technetwork/jp/database/options/spatialandgraph/overvi
ew/index.html
• DataStax Enterprise Graph
• https://www.datastax.com/products/datastax-enterprise-graph
Neo4jとは
Neo4jの概要
• Neo Technology社に開発されたグラフ型データベース
• コミュニティ版とエンタープライズ版があります。
• コミュニティ版→GPL v3に基づき無償で使用できます。
• エンタープライズ版→拡張性/可用性に関する機能、ユー
ザサポートが追加された有償版(条件によっては無償)です
。
• 現在(2017/5/20時点)の最新バージョンは3.2となります。
Neo4jの特徴
• ACID特性
• トランザクションを利用して、データ整合性を保つことができます。
• 高いパフォーマンスによるOLTP
• データベースが肥大化してもクエリ処理速度の低下は少なく、1秒あたり数百のトランザ
クションを処理することができます。
• 宣言型クエリ言語「Cypher」
• アスキーアートのような直感的に記述できるドメイン特化言語(SQLのようなもの)
• 以下のCypherの例は、トムハンクスが演じた映画について検索するものです。
ex) MATCH (tom:Person {name: "Tom Hanks”})-
[:ACTED_IN]->(tomHanksMovies)
RETURN tom,tomHanksMovies
Neo4jを動かしてみよう
Neo4jのインストール方法
• 以下の3つの方法があります。
オススメは一番楽なので、Dockerを使用するパターンです。
1. Neo4jの公式ページからDownloadするパターン
• https://neo4j.com/download/community-edition/
2. brewを使用するパターン(Macのみ)
• brew install neo4j
(ただし、旧バージョンの3.1.4が入ります。)
3. Dockerを使用するパターン←オススメ
• docker pull neo4j
公式ページからダウンロード
• Neo4jの公式ページからDownloadしたパターン
• 起動
• Neo4jアプリケーションを起動し、Startボタンを押します。
• 停止
• Neo4jアプリケーションを起動し、Stopボタンを押します。
brewを使用する
• brewを使用したパターン
• 起動
• ターミナルで「neo4j start」コマンドで起動します。
• 昔のバージョン(1系と2系の古いバージョン)では起動時に以下のwarningが出て、ファ
イルディスクリプタのソフトリミットを変更する必要がありました。
「WARNING: Max 1024 open files allowed, minimum of 40 000 recommended. See
the Neo4j manual.」
• 今のバージョンではインストール直後に起動する時には、私のMac(macOS sierra)で
はこちらのwarningは出なかったです。
• 停止
• ターミナルで「neo4j stop」コマンドで停止します。
Dockerを使用する
• Dockerを使用したパターン
• 起動
docker run 
--detach 
--publish=7474:7474 --publish=7687:7687 
--volume=$HOME/neo4j/data:/data 
--volume=$HOME/neo4j/logs:/logs 
neo4j:3.2
• 停止
最後に起動したdockerコンテナを停止します。
docker ps -q -l | xargs docker stop | xargs docker rm
Neo4jにログインしてみよう
• 起動後に、http://localhost:7474/ へアクセスします
。UserName/Passwordを求められますが、デフォ
ルトはneo4j/neo4jと入力すれば、新しいパスワー
ドの入力を求められます。
Boltプロトコル
• ホストのプロトコルに指定しているBoltですが、クライアントアプリ
ケーションとデータベースサーバ間の通信に使用されるNeo4j独自の
バイナリプロトコルです。
• Neo4jのバージョン v3.0からはBoltプロトコルをベースにした「
.NET/Java/JavaScript/Python」の4つの言語の公式的なサポートを発
表しています。
https://neo4j.com/docs/developer-manual/current/drivers/get-started/
• これまでは各言語でHTTPやJVMベースのドライバーを提供していま
したが、パフォーマンスなどのいくつかの問題からBoltバイナリドラ
イバーの開発に着手してきたそうです。
ここからは実際にログインした後
の画面で、Neo4jの公式のチュー
トリアルのデモを行います。
グラフデータベースが
有効なケース
グラフデータベースが有効なケース
• グラフデータベースを活用したサービス事例には以下のものがあります。
• Google検索のナレッジグラフ
• FBなどのSNSのつながり(ソーシャルグラフ)
• 最短経路の検索
• 通信機器や高速道路の管理(私が経験した案件です)
• クレジットカードの不正検知
• 医療
まとめ
まとめ
• グラフデータベースはグラフのデータ構造を持ったデータベースで、データ
間の関係性を見出すのが得意です。
• Neo4jのグラフエンジンはデータの解析処理を高速に行う最適な設計がされ
ており、データベースが肥大化してもクエリ処理速度の低下は少ないです。
• Neo4jのCypherは直感的なクエリで、データを取得できます。
• パナマ文書のような巨大なデータかつ関係性の検索を行うようなケースでは
、グラフデータベースは有効です。
• Google検索のナレッジグラフやSNSのソーシャルグラフ、最短経路の検索な
ど様々な分野でグラフデータベースは活用されています。
おまけ
自社コミュニティ
新宿GeekLoungeの紹介
弊社のカフェスペースを利用して、お酒や食事をしながら行う
勉強会を継続的に実施するコミュニティ
Scala, DDD, Android, iOS, アーキテクチャetc…
新宿 Geek Lounge#1 開催予定
・日程 7月6日(木) 20:00 ~ 22:00
・参加枠 30~40名予定(無料)
・テーマ 「夏休みはScalaを書こう!」
・発表者
- 麻植さん 「Real World Android Akka」
- (弊社)助廣 「Scala コレクションメソッド 入門」
- LT 1時間 & 懇親会
参考文献
参考書籍
• NOSQLの基礎知識 (ビッグデータを活かすデータベース技術)
https://www.amazon.co.jp/exec/obidos/ASIN/4897978874/noimps
lmtbrk-22/
• グラフ型データベース入門 - Neo4jを使う
https://www.amazon.co.jp/exec/obidos/ASIN/4865940154/noimps
lmtbrk-22/
• グラフデータベース ―Neo4jによるグラフデータモデルとグラフ
データベース入門
https://www.amazon.co.jp/exec/obidos/ASIN/4873117143/noimps
lmtbrk-22/
参考URL #1
• Neo4j公式サイト各種ドキュメント
• DeveloprManual
https://neo4j.com/docs/developer-manual/current/
• Cypherリファレンス
https://neo4j.com/docs/cypher-refcard/current/
• Neo4j with Docker
https://neo4j.com/developer/docker/
http://neo4j.com/docs/operations-manual/current/installation/docker/
参考URL #2
• ブログ等のページ
• 「パナマ文書」解析の技術的側面
https://medium.com/@c_z/%E3%83%91%E3%83%8A%E3%83%9E%E6%96
%87%E6%9B%B8-
%E8%A7%A3%E6%9E%90%E3%81%AE%E6%8A%80%E8%A1%93%E7%9
A%84%E5%81%B4%E9%9D%A2-d10201bbe195
• ”パナマ文書”をグラフデータベースで高速に検索する事例の勉強会に行ってき
た。 #neo4j
https://www.creationline.com/lab/13916
• Neo4j公式の言語ドライバー(Bolt)によるプログラミング #neo4j
https://www.creationline.com/lab/14847

More Related Content

What's hot

RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRecruit Technologies
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOpsMariOhbuchi
 
(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめMitsutoshi Kiuchi
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようShinsuke Sugaya
 
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)Tokoroten Nakayama
 
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いマイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いota42y
 
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善Ito Takayuki
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介Tetsutaro Watanabe
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!Tetsutaro Watanabe
 
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLiveDXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLiveTokoroten Nakayama
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話Kumazaki Hiroki
 
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜Takahiko Ito
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門masayoshi takahashi
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうRyuji Tsutsui
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームKouhei Sutou
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with KarateTakanori Suzuki
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 

What's hot (20)

RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOps
 
(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
 
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
事業の進展とデータマネジメント体制の進歩(+プレトタイプの話)
 
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いマイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
 
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
CircleCIのinfrastructureを支えるTerraformのCI/CDパイプラインの改善
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLiveDXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 

Viewers also liked

Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.JustSystems Corporation
 
Arachne Unweaved (JP)
Arachne Unweaved (JP)Arachne Unweaved (JP)
Arachne Unweaved (JP)Ikuru Kanuma
 
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~Hiroyuki Ohnaka
 
2017spring jjug ccc_f2
2017spring jjug ccc_f22017spring jjug ccc_f2
2017spring jjug ccc_f2Kazuhiro Wada
 
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Kosuke Kida
 
Java libraries you can't afford to miss
Java libraries you can't afford to missJava libraries you can't afford to miss
Java libraries you can't afford to missAndres Almiray
 
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VMVMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VMyy yank
 
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求hajime funaki
 
Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)Logico
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善Works Applications
 
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~Yoshio Kajikuri
 
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜JustSystems Corporation
 
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8y_taka_23
 
Java8 コーディングベストプラクティス and NetBeansのメモリログから...
Java8 コーディングベストプラクティス and NetBeansのメモリログから...Java8 コーディングベストプラクティス and NetBeansのメモリログから...
Java8 コーディングベストプラクティス and NetBeansのメモリログから...なおき きしだ
 
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めたJJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めたKoichi Sakata
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 Hiroshi Ito
 
Introduction of Project Jigsaw
Introduction of Project JigsawIntroduction of Project Jigsaw
Introduction of Project JigsawYuichi Sakuraba
 

Viewers also liked (20)

Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.
 
Arachne Unweaved (JP)
Arachne Unweaved (JP)Arachne Unweaved (JP)
Arachne Unweaved (JP)
 
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
 
2017spring jjug ccc_f2
2017spring jjug ccc_f22017spring jjug ccc_f2
2017spring jjug ccc_f2
 
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1
 
Jjug ccc
Jjug cccJjug ccc
Jjug ccc
 
Java libraries you can't afford to miss
Java libraries you can't afford to missJava libraries you can't afford to miss
Java libraries you can't afford to miss
 
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VMVMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
 
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
 
Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
 
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
 
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
 
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
Javaチョットデキルへの道〜JavaコアSDKに見る真似したいコード10選〜
 
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
 
Java8 コーディングベストプラクティス and NetBeansのメモリログから...
Java8 コーディングベストプラクティス and NetBeansのメモリログから...Java8 コーディングベストプラクティス and NetBeansのメモリログから...
Java8 コーディングベストプラクティス and NetBeansのメモリログから...
 
日本Javaグループ2017年定期総会 #jjug
日本Javaグループ2017年定期総会 #jjug 日本Javaグループ2017年定期総会 #jjug
日本Javaグループ2017年定期総会 #jjug
 
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めたJJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
 
Introduction of Project Jigsaw
Introduction of Project JigsawIntroduction of Project Jigsaw
Introduction of Project Jigsaw
 

Similar to グラフデータベース入門

入門系の本を一冊も読まずにデータサイエンスに入門してみる
入門系の本を一冊も読まずにデータサイエンスに入門してみる入門系の本を一冊も読まずにデータサイエンスに入門してみる
入門系の本を一冊も読まずにデータサイエンスに入門してみるMasayuki Sakamoto
 
TokyoR#31 初心者セッション
TokyoR#31 初心者セッションTokyoR#31 初心者セッション
TokyoR#31 初心者セッションTokorosawaYoshio
 
足を地に着け落ち着いて考える
足を地に着け落ち着いて考える足を地に着け落ち着いて考える
足を地に着け落ち着いて考えるRyuji Tamagawa
 
MF GeeksNight pplogの話
MF GeeksNight pplogの話MF GeeksNight pplogの話
MF GeeksNight pplogの話Naoto Koshikawa
 
ドキュメントライブラリを便利にするかも?しれないテクニック
ドキュメントライブラリを便利にするかも?しれないテクニックドキュメントライブラリを便利にするかも?しれないテクニック
ドキュメントライブラリを便利にするかも?しれないテクニックTeruchika Yamada
 
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発Twitterにおける即時話題推定技術「どたばたかいぎ」の開発
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発Eric Sartre
 
自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由Daisuke Komatsu
 
チームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組みチームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組みShohei Okada
 
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化Shinichi Nakagawa
 
elasticsearch-hadoopをつかってごにょごにょしてみる
elasticsearch-hadoopをつかってごにょごにょしてみるelasticsearch-hadoopをつかってごにょごにょしてみる
elasticsearch-hadoopをつかってごにょごにょしてみるKatsushi Yamashita
 
視覚化サービス構築の際に気をつけること
視覚化サービス構築の際に気をつけること視覚化サービス構築の際に気をつけること
視覚化サービス構築の際に気をつけることKazufumi Ohkawa
 
sitTokyo2022_Dev_05_Kawanabe.pptx
sitTokyo2022_Dev_05_Kawanabe.pptxsitTokyo2022_Dev_05_Kawanabe.pptx
sitTokyo2022_Dev_05_Kawanabe.pptxssuser5bff5a
 
IoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxIoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxYasuhira Chiba
 
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれからcyberagent
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1Nishida Kansuke
 
_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門Hidetaka Okamoto
 
20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのかKatsunori Kanda
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料Takashi Aoe
 
サービス改善はログデータ分析から
サービス改善はログデータ分析からサービス改善はログデータ分析から
サービス改善はログデータ分析からKenta Suzuki
 

Similar to グラフデータベース入門 (20)

入門系の本を一冊も読まずにデータサイエンスに入門してみる
入門系の本を一冊も読まずにデータサイエンスに入門してみる入門系の本を一冊も読まずにデータサイエンスに入門してみる
入門系の本を一冊も読まずにデータサイエンスに入門してみる
 
TokyoR#31 初心者セッション
TokyoR#31 初心者セッションTokyoR#31 初心者セッション
TokyoR#31 初心者セッション
 
足を地に着け落ち着いて考える
足を地に着け落ち着いて考える足を地に着け落ち着いて考える
足を地に着け落ち着いて考える
 
MF GeeksNight pplogの話
MF GeeksNight pplogの話MF GeeksNight pplogの話
MF GeeksNight pplogの話
 
ドキュメントライブラリを便利にするかも?しれないテクニック
ドキュメントライブラリを便利にするかも?しれないテクニックドキュメントライブラリを便利にするかも?しれないテクニック
ドキュメントライブラリを便利にするかも?しれないテクニック
 
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発Twitterにおける即時話題推定技術「どたばたかいぎ」の開発
Twitterにおける即時話題推定技術「どたばたかいぎ」の開発
 
自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由
 
チームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組みチームで「きちんと」Laravel を使っていくための取り組み
チームで「きちんと」Laravel を使っていくための取り組み
 
FA概論
FA概論FA概論
FA概論
 
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
 
elasticsearch-hadoopをつかってごにょごにょしてみる
elasticsearch-hadoopをつかってごにょごにょしてみるelasticsearch-hadoopをつかってごにょごにょしてみる
elasticsearch-hadoopをつかってごにょごにょしてみる
 
視覚化サービス構築の際に気をつけること
視覚化サービス構築の際に気をつけること視覚化サービス構築の際に気をつけること
視覚化サービス構築の際に気をつけること
 
sitTokyo2022_Dev_05_Kawanabe.pptx
sitTokyo2022_Dev_05_Kawanabe.pptxsitTokyo2022_Dev_05_Kawanabe.pptx
sitTokyo2022_Dev_05_Kawanabe.pptx
 
IoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptxIoTゴミ箱作って運用してみた.pptx
IoTゴミ箱作って運用してみた.pptx
 
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1
 
_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門
 
20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料
 
サービス改善はログデータ分析から
サービス改善はログデータ分析からサービス改善はログデータ分析から
サービス改善はログデータ分析から
 

Recently uploaded

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Recently uploaded (9)

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

グラフデータベース入門