今日(6月11日)db tech showcase 2015 Tokyoで「Neo4j:グラフデータベース」を聞いてきたので、その内容をメモメモ
・海外では絶賛されている。死角をカバー
・全体像を伝えたい
・Neo4j:SQLライクに使える
デジタルデータ量の増加予測
・2020年 40ZB
・ビッグデータの構成データと流通量の計量比較データ
・企業などにおけるデータ活用の実態→そんなにかわらない
・得られた効果:コスト削減など効果あり
・深度:可視化が一番良かった
・課題:10年前と変わっていない?
あなたはどこに注目していますか
・価値→よくわかっていない
・データの関係性:複雑になっていく(もともと複雑)
データ処理
・未来に向けてシミュレーションする
・関係性を理解すること→究極的価値:予測可能性
データ処理の道具
・アーキテクチャ
・データモデル
・SQL・NoSQL
・オペレーションDB/れポーティんぐDB
・インテグレーション/アプリケーション
データベースの進化
・正規化
・正規化しないでも
・キーバリュー・マップリデュース
・そのさき
データベ
ースの座標
で
ー カラムがた
た RDB
さ
い グラフがた
ず
関係性
強い関連性と弱い関連性
・関係性の認識:パターンマッチング→多次元的
統計処理:関係性ブラックボックス化
グラフとは
・チャートとグラフは違う
・グラフ理論のグラフ
点と線であらわす
グラフの3大構成要素
・ラベル
・ノード
・関係性
・属性=キーバリュー
関係性をデータとして書く
データモデル(ひな形)
・グラフDBのER図
・ふわっとした正規化:ドメインの認識
パターン
・3つのパターン
・現実の世界はいろんな形状
典型的グラフ
路線図→次の駅
SQLにするとものすごく難しい→グラフではない
Neo4j
・グラフ理論をデータ処理エンジンとして搭載しているDBMS
・強い関係性の処理に向いている
弱い関係性で集計をさせると・・・コスト的に
・サイファー・クエリー
・OLTPエンジン(トランザクション処理OK)
・インターフェース Webインターフェース、CORE API
・オープンソースと商用
顧客層も多種多様
スタンドアロン
HA:スレーブをリードレプリカにできる
HTTPSを装備
Hosted scripting OK
サイファークエリー
・パターンマッチングを持っている
グラフDB:関係性が永続化
トラバーサル処理
パターンマッチング
Cypher構文の階層構造はパイプ
データ数の制限
データ作成・更新・削除
BULK Data→LOAD CSV
トランザクション処理:REST API
グラフ出力
グラフ自体がレポート
事例
レコメンデーション
経理探し?
最短経路、最多経路
向いている
・強い関係性
・SQLでは表現できないデータ
・統計処理に不向きな因果関係
・指向錯誤
Neo4jユーザーグループ