ク?ラフテ?ータヘ?ース入门
- 4. 自己绍介
? 嶽 雅也(だけ まさや)と申します。
? 株式会社セプテーニ?オリジナル所属。
? 半年ほど前から「GANMA!」という漫画配信アプリの開発に
携わっています。
? 現職ではScalaで開発しており、最近ではiOS開発に加わり
Swiftでも開発するようになりました。
? 前職のR&D案件で、グラフデータベースという存在を知り、
Neo4jの技術調査などを行いました。
- 29. Neo4jの特徴
? ACID特性
? トランザクションを利用して、データ整合性を保つことができます。
? 高いパフォーマンスによるOLTP
? データベースが肥大化してもクエリ処理速度の低下は少なく、1秒あたり数百のトランザ
クションを処理することができます。
? 宣言型クエリ言語「Cypher」
? アスキーアートのような直感的に記述できるドメイン特化言語(SQLのようなもの)
? 以下のCypherの例は、トムハンクスが演じた映画について検索するものです。
ex) MATCH (tom:Person {name: "Tom Hanks”})-
[:ACTED_IN]->(tomHanksMovies)
RETURN tom,tomHanksMovies
- 33. 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」コマンドで停止します。
- 34. 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
- 45. 新宿 Geek Lounge#1 開催予定
?日程 7月6日(木) 20:00 ~ 22:00
?参加枠 30~40名予定(無料)
?テーマ 「夏休みはScalaを書こう!」
?発表者
- 麻植さん 「Real World Android Akka」
- (弊社)助廣 「Scala コレクションメソッド 入門」
- LT 1時間 & 懇親会
- 48. 参考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/
- 49. 参考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