Suche senden
Hochladen
Neo4jで始めるグラフDB入門 - LT Thursday
•
0 gefällt mir
•
1,679 views
Yusuke Komahara
Folgen
グラフDBの概要とneo4jの紹介
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 23
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
あなたのプレゼンをぐっとレベルアップさせる小手先の技術
あなたのプレゼンをぐっとレベルアップさせる小手先の技術
Takahiro Ogoshi
フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感
Chao Li
Performance optimisation with GraphQL
Performance optimisation with GraphQL
yann_s
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
Takahiro Inoue
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
Phantom Type in Scala
Phantom Type in Scala
Yasuyuki Maeda
141027 シックスアパート様セミナー資料
141027 シックスアパート様セミナー資料
Masaki Suzuki
データプロダクトを支えるビッグデータ基盤
データプロダクトを支えるビッグデータ基盤
Google Cloud Platform - Japan
Empfohlen
あなたのプレゼンをぐっとレベルアップさせる小手先の技術
あなたのプレゼンをぐっとレベルアップさせる小手先の技術
Takahiro Ogoshi
フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感
Chao Li
Performance optimisation with GraphQL
Performance optimisation with GraphQL
yann_s
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
Takahiro Inoue
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
Phantom Type in Scala
Phantom Type in Scala
Yasuyuki Maeda
141027 シックスアパート様セミナー資料
141027 シックスアパート様セミナー資料
Masaki Suzuki
データプロダクトを支えるビッグデータ基盤
データプロダクトを支えるビッグデータ基盤
Google Cloud Platform - Japan
LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話
GIG inc.
子供達と プログラミングをはじめよう
子供達と プログラミングをはじめよう
Masao Niizuma
ブランディングを意識したサービス開発の一歩
ブランディングを意識したサービス開発の一歩
Haiji Haiiro
Data-centricなML開発
Data-centricなML開発
Takeshi Suzuki
新卒採用を、まっとうに ー面接者への通信簿ー
新卒採用を、まっとうに ー面接者への通信簿ー
慧悟 岩本
分析手法のご紹介
分析手法のご紹介
Recruit Technologies
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
Kentaro Someya
石狩でのプログラミング教育支援~2年目の成果~
石狩でのプログラミング教育支援~2年目の成果~
さくらインターネット株式会社
機械学習に取り組んでいる企業の紹介
機械学習に取り組んでいる企業の紹介
Kazuma Kadomae
20221116_テスト自動化プラットフォーム mabl はいいぞ!
20221116_テスト自動化プラットフォーム mabl はいいぞ!
Shohei Oda
20171129 #jbug tokyo_#3_lt_beajouneyman
20171129 #jbug tokyo_#3_lt_beajouneyman
Journeyman
楽天エンジニアライフ
楽天エンジニアライフ
Rakuten Group, Inc.
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ivanov23
ユーザテストと定量分析ツールの併用方法
ユーザテストと定量分析ツールの併用方法
Ryota Ono
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ivanov23
ODBC/JDBC/ADOで(も)つながるSaasの世界
ODBC/JDBC/ADOで(も)つながるSaasの世界
CData Software Japan
20130928 ゼロディレ運用編スライド
20130928 ゼロディレ運用編スライド
Kenta Nakamura
集客ROI 最大化セミナー
集客ROI 最大化セミナー
IMJ Corporation
090601 担当者のコトバに振り回されるな!
090601 担当者のコトバに振り回されるな!
Ryohei Katayama
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
さくらインターネット株式会社
Weitere ähnliche Inhalte
Ähnlich wie Neo4jで始めるグラフDB入門 - LT Thursday
LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話
GIG inc.
子供達と プログラミングをはじめよう
子供達と プログラミングをはじめよう
Masao Niizuma
ブランディングを意識したサービス開発の一歩
ブランディングを意識したサービス開発の一歩
Haiji Haiiro
Data-centricなML開発
Data-centricなML開発
Takeshi Suzuki
新卒採用を、まっとうに ー面接者への通信簿ー
新卒採用を、まっとうに ー面接者への通信簿ー
慧悟 岩本
分析手法のご紹介
分析手法のご紹介
Recruit Technologies
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
Kentaro Someya
石狩でのプログラミング教育支援~2年目の成果~
石狩でのプログラミング教育支援~2年目の成果~
さくらインターネット株式会社
機械学習に取り組んでいる企業の紹介
機械学習に取り組んでいる企業の紹介
Kazuma Kadomae
20221116_テスト自動化プラットフォーム mabl はいいぞ!
20221116_テスト自動化プラットフォーム mabl はいいぞ!
Shohei Oda
20171129 #jbug tokyo_#3_lt_beajouneyman
20171129 #jbug tokyo_#3_lt_beajouneyman
Journeyman
楽天エンジニアライフ
楽天エンジニアライフ
Rakuten Group, Inc.
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ivanov23
ユーザテストと定量分析ツールの併用方法
ユーザテストと定量分析ツールの併用方法
Ryota Ono
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ivanov23
ODBC/JDBC/ADOで(も)つながるSaasの世界
ODBC/JDBC/ADOで(も)つながるSaasの世界
CData Software Japan
20130928 ゼロディレ運用編スライド
20130928 ゼロディレ運用編スライド
Kenta Nakamura
集客ROI 最大化セミナー
集客ROI 最大化セミナー
IMJ Corporation
090601 担当者のコトバに振り回されるな!
090601 担当者のコトバに振り回されるな!
Ryohei Katayama
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
さくらインターネット株式会社
Ähnlich wie Neo4jで始めるグラフDB入門 - LT Thursday
(20)
LT.22 機械学習におけるPDCAを回せる環境構築の話
LT.22 機械学習におけるPDCAを回せる環境構築の話
子供達と プログラミングをはじめよう
子供達と プログラミングをはじめよう
ブランディングを意識したサービス開発の一歩
ブランディングを意識したサービス開発の一歩
Data-centricなML開発
Data-centricなML開発
新卒採用を、まっとうに ー面接者への通信簿ー
新卒採用を、まっとうに ー面接者への通信簿ー
分析手法のご紹介
分析手法のご紹介
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
転職潜在層採用のためのダイレクトリクルーティング&タレントプール
石狩でのプログラミング教育支援~2年目の成果~
石狩でのプログラミング教育支援~2年目の成果~
機械学習に取り組んでいる企業の紹介
機械学習に取り組んでいる企業の紹介
20221116_テスト自動化プラットフォーム mabl はいいぞ!
20221116_テスト自動化プラットフォーム mabl はいいぞ!
20171129 #jbug tokyo_#3_lt_beajouneyman
20171129 #jbug tokyo_#3_lt_beajouneyman
楽天エンジニアライフ
楽天エンジニアライフ
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ユーザテストと定量分析ツールの併用方法
ユーザテストと定量分析ツールの併用方法
アプリ開発、SaaS開発を経て最近考えていること.pdf
アプリ開発、SaaS開発を経て最近考えていること.pdf
ODBC/JDBC/ADOで(も)つながるSaasの世界
ODBC/JDBC/ADOで(も)つながるSaasの世界
20130928 ゼロディレ運用編スライド
20130928 ゼロディレ運用編スライド
集客ROI 最大化セミナー
集客ROI 最大化セミナー
090601 担当者のコトバに振り回されるな!
090601 担当者のコトバに振り回されるな!
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
正解はどれ?『プログラミング教育』を取り巻くステークホルダーと議論
Neo4jで始めるグラフDB入門 - LT Thursday
1.
neo4jで はじめる グラフDB 入門 2016-07-20
2.
駒原 雄祐 (こまはら
ゆうすけ) 35歳 妻と生後1ヶ月の娘と2歳のチワワの 3人と1匹暮らし 大学卒業後、 某SIerでJavaプログラマ ↓ 某BI専門のコンサル会社でコンサルタントおよびアーキテクト ↓ 2010年にサイバーエージェント中途入社 (もうすぐ丸6年) 課金系(アメゴールド、月額課金など)の基盤 Amebaなうなどの旧Amebaコミュニティサービス 2012年後半から広告系のお仕事 現在MDHにて広告プロダクトA.J.A.の開発・運用
3.
Agenda ● グラフDBって何? ● RDBとのデータ構造比較 ●
neo4j ● demo
4.
Agenda ● グラフDBって何? ● RDBとのデータ構造比較 ●
neo4j ● demo
5.
グラフ理論を基礎とした、 グラフ構造を持つデータベース
6.
グラフ構造って何? ● 点(ノード)と線(エッジ)でエンティティとリレーションを表現する ● ノードとエッジはプロパティを持つことができる
(プロパティグラフ) User User User Group Group follow follow follow join join join name: taro age: 20 name: jiro age: 25 job: engineer name: hanako age: 33 job: president name: JJUG name: ScalaJP at: 2010-08-31 at: 2013-02-16 at: 2015-01-21
7.
User User User Group Group follow follow follow join join join name: taro age: 20 name:
jiro age: 25 job: engineer name: hanako age: 33 job: president name: JJUG name: ScalaJP at: 2010-08-31 at: 2013-02-16 at: 2015-01-21 ノード
8.
User User User Group Group follow follow follow join join join name: taro age: 20 name:
jiro age: 25 job: engineer name: hanako age: 33 job: president name: JJUG name: ScalaJP at: 2010-08-31 at: 2013-02-16 at: 2015-01-21 エッジ
9.
User User User Group Group follow follow follow join join join name: taro age: 20 name:
jiro age: 25 job: engineer name: hanako age: 33 job: president name: JJUG name: ScalaJP at: 2010-08-31 at: 2013-02-16 at: 2015-01-21 プロパティ
10.
Agenda ● グラフDBって何? ● RDBとのデータ構造比較 ●
neo4j ● demo
11.
グラフDBのデータ構造 User User User Group Group follow follow follow join join join name: taro age: 20 name:
jiro age: 25 job: engineer name: hanako age: 33 job: president name: JJUG name: ScalaJP at: 2010-08-31 at: 2013-02-16 at: 2015-01-21
12.
name age job taro
20 (null) jiro 25 engineer hanako 33 president name JUGG ScalaJP user_name group_name at jiro JUGG 2013-02-16 jiro ScalaJP 2015-01-21 hanako JUGG 2010-08-31 User Group UserJoinGroup RDBのデータ構造
13.
グラフDB分かりやすい!
14.
RDBとのTraverse比較
15.
グラフDBの場合 親 親 子 子 子 孫 孫 孫 孫 グループ グループ グループ 赤い親が持つ赤い子が持つ孫のうち、グループから赤いリレーションが貼られているものを除外 → (neo4j Cypher
Queryの場合のイメージ) MATCH (p: 親 {color: ‘red’}-[:HAS]->(c: 子 {color: ‘red’})-[:HAS]->(g: 孫)<-[b:BELONG]-(gr: グループ) WHERE b.color != ‘red’ RETURN g
16.
RDBの場合 親ID 色 子ID 色 親ID 孫ID 色 子ID 孫ID グループID 色 グループID 親 子 孫
グループグループ所属孫 赤い親が持つ赤い子が持つ孫のうち、グループから赤いリレーションが貼られているものを除外 → SQLのイメージ SELECT 孫.* FROM 親 INNER JOIN 子 ON 親.親ID = 子.親ID INNER JOIN 孫 ON 子.子ID = 孫.子ID INNER JOIN グループ所属孫 ON 孫.孫ID = グループ所属孫.孫ID INNER JOIN グループ ON グループ所属孫.グループID = グループ.グループID WHERE 親.色 = ‘red’ AND 子.色 = ‘red’ AND グループ所属孫.色 <> ‘red’ JOINの繰り返し! クエリの複雑化 動作が重くなる (><)
17.
グラフDB簡潔&Traversal動作速い!
18.
Agenda ● グラフDBって何? ● RDBとのデータ構造比較 ●
neo4j ● demo
19.
そんなグラフDBで (たぶん)一番メジャーな存在 それが
20.
https://neo4j.com/
21.
neo4j ● neo technology社が開発したグラフデータベース ●
OLTP対応 ● ACID準拠 ● Cypher Query Language (Cypher, CQL)という宣言型クエリ言語でのデータ参照 ○ 従来アプリケーションで表現していた複雑な処理や、 RDB上のSQLでは多重結合になるような処理 でも、簡潔に表現でき、高速に実行することができる ● 幅広い実行インターフェース ○ Webインターフェース ○ RESTful API ○ 主要な言語のクライアントライブラリ ● 有償エンタープライズ版 ○ 高パフォーマンスキャッシュ ○ master/slave型のHA構成 ○ オンラインバックアップ ○ カスタマーサポート etc…
22.
チュートリアルが同梱されている
23.
demo
Jetzt herunterladen