SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
Apache Tinkerpop
とグラフデータベースの世界
JJUG CCC 2018 Spring
森下 雄貴
スピーカー
森下 雄貴
- プリンシパルアーキテクト @ DataStax Japan合同会社
- Apache Cassandra コミッター
DataStax
- Apache Tinkerpop のコードベースの大部分をコミット
- DataStax Enterprise
- マルチモデルデータベース
- Apache Tinkerpopベースのグラフアクセス
グラフ
グラフデータベース
グラフのデータ構造をそのまま扱うことができるデータベース
→ “つながり”をそのままデータとして持つ
グラフデータベースの利用例
- 不正検知
- 取引、ユーザー、端末、場所などの情報を結び付け、不正な取引との関連を調べる
- レコメンデーション/パーソナライズ
- ユーザーの振舞い、取引をすべて結び付け、次のアクションを相互の関連から提示
- カスタマー360 / マスターデータ管理
- 複雑な階層構造を持つデータの管理
Apache Tinkerpopプロジェクト
- https://tinkerpop.apache.org/
- 2015年からApacheプロジェクト
- 最新バージョン(2018年5月): v3.3.3
- Java!
Apache Tinkerpopプロジェクト
- グラフデータベース(OLTP)とグラフ分析(OLAP)のためのグラフコンピューティングフ
レームワーク
- グラフのデータ構造 (プロパティグラフ)とAPI
- TinkerGraph
- インメモリのグラフデータベース実装
- Gremlin
- グラフトラバーサル言語
- gremlin-console
- 対話的にGremlinを実行するためのコンソール
- gremlin-server
- リモートからグラフデータベースへアクセス
- ドライバー
- Java、Python、C#、...
Apache Tinkerpopプロジェクト
Azure CosmosDB
Amazon Neptune
Tinkerpopのプロパティグラフ
- Graph (グラフ)
- バーテックスとエッジの集合
- Vertex (バーテックス/ノード/頂点)
- ラベルとプロパティを持つ
- Edge (エッジ/辺)
- ラベルとプロパティ、方向を持つ
- Property (プロパティ)
- キーとバリュー
- バーテックスとエッジがプロパティを持つ
- メタプロパティ(プロパティのプロパティ )やマルチプロパティ(複数の値を持つプロパティ )がある
Tinkerpopのプロパティグラフ
Tinkerpopのプロパティグラフ
グラフ
Tinkerpopのプロパティグラフ
バーテックス
Tinkerpopのプロパティグラフ
バーテックスラ
ベル
Tinkerpopのプロパティグラフ
エッジ
Tinkerpopのプロパティグラフ
エッジ
ラベル
Tinkerpopのプロパティグラフ
プロパティ
Gremlin ~ グラフトラバーサル言語
データの問合せ/操作
- リレーショナルデータベース => SQL
- グラフデータベース => ????
- Cypher / openCypher (Neo4J, SAP HANA Graph …)
- PGQL (Oracle)
- SPARQL (RDFデータベース)
- Gremlin (Apache Tinkerpop実装グラフデータベース )
- ...
Gremlin ~ グラフトラバーサル言語
グラフトラバーサル:
エッジを通ってグラフを辿っていき、答えを見つける。
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
=> vadas
=> josh
Gremlin ~ グラフトラバーサル言語
// markoの友達の名前は?
g.V().
has("person", "name", "marko").
out("knows").
values("name")
ステップ
Gremlin ~ グラフトラバーサル言語
ステップの種類
- filter
- map
- flatMap
- sideEffect
- branch
Gremlin ~ グラフトラバーサル言語
// Gremlin
g.V().
has("person", "name", "marko").
out("knows").
values("name")
JavaのStream APIと同じように考えてみるとわかりやすい(かも)
// Java Stream API
Set vertices = ...
vertices.stream().
filter(person -> person.name == "marko").
flatMap(person -> person.knows).
map(person -> person.name)
Gremlin ~ グラフトラバーサル言語
// 新しいmarkoの友達を追加する
g.addV(“person”).
property("name", "yuki").as(“yuki”).
V().has(“person”, “name”, “marko”).
addE(“knows”).to(“yuki”)
// そして削除する
g.V().
has(“person”, “name”, “yuki”).
drop()
Gremlin ~ グラフトラバーサル言語
そのほかのGremlinの機能
- 制御
- repeat() / coalesce() /choose()
- パターンマッチ
- match()
- 集計
- count() / groupCount() / sum() / max() ...
- グラフ分析エンジンとの連携
- pageRank()
Gremlinコンソール
- Gremlinを対話的に実行できるコンソール
- https://tinkerpop.apache.org から単体でダウンロード可能
- コンソール内でインメモリのグラフを扱える
- リモートのGremlinサーバーへ接続してGremlinの実行も可能(後述)
デモ
- Gremlinコンソールの起動
- サンプルグラフデータの読み込み
- Gremlinクエリの実行
デモ: サンプルデータの読み込み
- SQL2Gremlin
- http://sql2gremlin.com
- マイクロソフトのSQL Server用デモデータである Northwindデータセットを使って、 SQLとGremlinの両
方の比較
デモ: サンプルデータの読み込み
デモ: サンプルデータの読み込み
Gremlin IO
- GraphML (XML)
- GraphSON (JSON)
- Gryo (Kryo: Javaのシリアライゼーション形式の一つ)
のデータの読み込み/書き込みをサポート
graph.io(gryo()).readGraph("../data/northwind.kryo")
graph.io(graphson()).writeGraph("../data/northwind.json")
デモ: Gremlinクエリ
// どんなデータが入っているの ?
g.V().groupCount().by(label)
デモ: Gremlinクエリ
// イクラを誰が、いつ、いくつ買った ?
g.V().has("product", "name", "Ikura").
in("is").as("item").
in("contains").
order().by("orderDate", decr).limit(10).as("order").
in("ordered").as("customer").
select("customer", "order", "item").
by("name").by("orderDate").by("quantity")
デモ: Gremlinクエリ
// この商品を買った人は、ほかにこのような商品も買っています。
// (リアルタイム協調フィルタリング )
g.V().has("customer", "name", “Paul Henriot”).as("customer").
out("ordered").out("contains").out("is").aggregate("products").
in("is").in("contains").in("ordered").where(neq("customer")).
out("ordered").out("contains").out("is").where(without("products")).
groupCount().order(local).by(values, decr).
select(keys).limit(local, 5).unfold().values("name")
Gremlinサーバー
- WebSocket / REST APIを介して、グラフデータベースへリモートからアクセス可能に
する
- Apache Tinkerpop対応グラフデータベースへは通常 Gremlinサーバーを経由してアクセス
- Gremlinクエリ / 実行結果は GraphSON もしくは Gryo (JVM言語のみ) としてやり取り
- SSL、ユーザー認証にも対応
アプリケーション
Gremlin
コンソール
Gremlin
サーバー
Tinke
rpop
API
Tinkerpop対応
グラフデータベース
Gremlin
ドライバー GraphSON / Gryo
over
WebSocket / REST
Gremlinサーバー
- https://tinkerpop.apache.org からGremlinサーバー単体をダウンロード可能
- インメモリのTinkerpopGraphをサーバー側で動かせる
デモ: Gremlinサーバー
- 設定ファイル
- シリアライゼーション形式や通信形式、認証などの各パラメータを設定
-
- デモではサーバー起動時にNorthwindのデータを読み込むよう設定
デモ: Gremlinサーバー
- Gremlinコンソールから接続してみる
gremlin> :remote connect tinkerpop.server conf/remote.yaml
==>Configured localhost/127.0.0.1:8182
gremlin> :remote console
==>All scripts will now be sent to Gremlin Server - [localhost/127.0.0.1:8182] - type
':remote console' to return to local mode
gremlin> g
==>graphtraversalsource[tinkergraph[vertices:3209 edges:6177], standard]
Javaプログラムからのアクセス
- ドライバー gremlin-java をアプリケーションに組み込む
<dependencies>
<dependency>
<groupId>org.apache.tinkerpop</groupId>
<artifactId>gremlin-driver</artifactId>
<version>${tinkerpop.version}</version>
</dependency>
</dependencies>
Javaプログラムからのアクセス
Gremlinクエリの実行はいくつか方法がある
- Gremlinクエリを文字列として投げる
- トラバーサルAPIをそのまま使う
https://gist.github.com/yukim/6e914f92e3dea4b6ad954e278b273167
クエリ結果の可視化
- 各グラフデータベースベンダー付属のツール
クエリ結果の可視化
- 商用ツール
Linkurious (https://linkurio.us/) Keylines
(https://cambridge-intelligence.com/keylines/ )
クエリ結果の可視化
- オープンソース
- グラフ描画ができるJavaScriptライブラリを利用
- d3.js
- Cytoscape.js
- など
- Graphexp (https://github.com/bricaud/graphexp)
まとめ
- グラフデータベースはグラフデータ構造をそのまま扱える
- “つながり”に注目すると、さまざまなビジネス課題に応用できる
- Apache Tinkerpopはグラフコンピューティングフレームワーク
- グラフデータベースに必要な APIやグラフトラバーサル言語 Gremlinを提供
- 実装データベースが増えてきた
さらに知りたい方
- https://tinkerpop.apache.org/
- オフィシャルウェブサイト
- https://github.com/krlawrence/graph
- Practical Gremlin: An Apache TinkerPop Tutorial
- 非常に充実したGremlinチュートリアル
- 英語
- https://academy.datastax.com/resources/ds330-datastax-enterprise-graph
- DSE Graphのオンライントレーニング
- 分散データベースを利用して Gremlinの基本が一通り学べる
- 英語
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
toshi_pp
 

Was ist angesagt? (20)

RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
Rustに触れて私のPythonはどう変わったか
Rustに触れて私のPythonはどう変わったかRustに触れて私のPythonはどう変わったか
Rustに触れて私のPythonはどう変わったか
 
マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話
 
JIRA / Confluence の 必須プラグインはこれだ
JIRA / Confluence の必須プラグインはこれだJIRA / Confluence の必須プラグインはこれだ
JIRA / Confluence の 必須プラグインはこれだ
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsug
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
 
ここがつらいよAws batch
ここがつらいよAws batchここがつらいよAws batch
ここがつらいよAws batch
 
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
 
深い親子関係のテーブル設計
深い親子関係のテーブル設計深い親子関係のテーブル設計
深い親子関係のテーブル設計
 
機械学習モデルのサービングとは?
機械学習モデルのサービングとは?機械学習モデルのサービングとは?
機械学習モデルのサービングとは?
 
爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
 

Ähnlich wie Apache tinkerpopとグラフデータベースの世界

Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)
Shintaro Fukushima
 
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
maebashi
 
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
linzhixing
 

Ähnlich wie Apache tinkerpopとグラフデータベースの世界 (20)

DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門DataStax EnterpriseでApache Tinkerpop入門
DataStax EnterpriseでApache Tinkerpop入門
 
Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)Rにおける大規模データ解析(第10回TokyoWebMining)
Rにおける大規模データ解析(第10回TokyoWebMining)
 
msgraph: Terraform provider for Microsoft Graph
msgraph: Terraform provider for Microsoft Graphmsgraph: Terraform provider for Microsoft Graph
msgraph: Terraform provider for Microsoft Graph
 
分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph分散グラフデータベース DataStax Enterprise Graph
分散グラフデータベース DataStax Enterprise Graph
 
Rubyによるお手軽分散処理
Rubyによるお手軽分散処理Rubyによるお手軽分散処理
Rubyによるお手軽分散処理
 
Googleの基盤クローン Hadoopについて
Googleの基盤クローン HadoopについてGoogleの基盤クローン Hadoopについて
Googleの基盤クローン Hadoopについて
 
「Grails-1.1を斬る!〜Grails-1.1からのチーム開発〜」
「Grails-1.1を斬る!〜Grails-1.1からのチーム開発〜」「Grails-1.1を斬る!〜Grails-1.1からのチーム開発〜」
「Grails-1.1を斬る!〜Grails-1.1からのチーム開発〜」
 
Data processing at spotify using scio
Data processing at spotify using scioData processing at spotify using scio
Data processing at spotify using scio
 
AWS Black Belt Tech シリーズ 2015 - Amazon Elastic MapReduce
AWS Black Belt Tech シリーズ 2015 - Amazon Elastic MapReduceAWS Black Belt Tech シリーズ 2015 - Amazon Elastic MapReduce
AWS Black Belt Tech シリーズ 2015 - Amazon Elastic MapReduce
 
Terraformで始めるInfrastructure as Code
Terraformで始めるInfrastructure as CodeTerraformで始めるInfrastructure as Code
Terraformで始めるInfrastructure as Code
 
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
 
2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction
2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction
2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction
 
BigtopでHadoopをビルドする(Open Source Conference 2021 Online/Spring 発表資料)
BigtopでHadoopをビルドする(Open Source Conference 2021 Online/Spring 発表資料)BigtopでHadoopをビルドする(Open Source Conference 2021 Online/Spring 発表資料)
BigtopでHadoopをビルドする(Open Source Conference 2021 Online/Spring 発表資料)
 
Tokyo r 25_lt_isobe
Tokyo r 25_lt_isobeTokyo r 25_lt_isobe
Tokyo r 25_lt_isobe
 
本気で使うStack storm
本気で使うStack storm本気で使うStack storm
本気で使うStack storm
 
Data management of cosmos db using apache gremlin
Data management of cosmos db using apache gremlinData management of cosmos db using apache gremlin
Data management of cosmos db using apache gremlin
 
[Cloud OnAir] GCP 上でストリーミングデータ処理基盤を構築してみよう! 2018年9月13日 放送
[Cloud OnAir] GCP 上でストリーミングデータ処理基盤を構築してみよう! 2018年9月13日 放送[Cloud OnAir] GCP 上でストリーミングデータ処理基盤を構築してみよう! 2018年9月13日 放送
[Cloud OnAir] GCP 上でストリーミングデータ処理基盤を構築してみよう! 2018年9月13日 放送
 
Azure Machine Learning Services 概要 - 2019年3月版
Azure Machine Learning Services 概要 - 2019年3月版Azure Machine Learning Services 概要 - 2019年3月版
Azure Machine Learning Services 概要 - 2019年3月版
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 

Mehr von Yuki Morishita

Mehr von Yuki Morishita (11)

Apache cassandra v4.0
Apache cassandra v4.0Apache cassandra v4.0
Apache cassandra v4.0
 
DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析DataStax Enterpriseによる大規模グラフ解析
DataStax Enterpriseによる大規模グラフ解析
 
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
 
サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方サンプルで学ぶCassandraアプリケーションの作り方
サンプルで学ぶCassandraアプリケーションの作り方
 
RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門RDB開発者のためのApache Cassandra データモデリング入門
RDB開発者のためのApache Cassandra データモデリング入門
 
事例で学ぶApache Cassandra
事例で学ぶApache Cassandra事例で学ぶApache Cassandra
事例で学ぶApache Cassandra
 
Apache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめApache Cassandra最新情報まとめ
Apache Cassandra最新情報まとめ
 
Datastax Enterpriseをはじめよう
Datastax EnterpriseをはじめようDatastax Enterpriseをはじめよう
Datastax Enterpriseをはじめよう
 
How you can contribute to Apache Cassandra
How you can contribute to Apache CassandraHow you can contribute to Apache Cassandra
How you can contribute to Apache Cassandra
 
CQL3 in depth
CQL3 in depthCQL3 in depth
CQL3 in depth
 
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
 

Kürzlich hochgeladen

Kürzlich hochgeladen (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

Apache tinkerpopとグラフデータベースの世界