狠狠撸

狠狠撸Share a Scribd company logo
GOLANG TIPS
DATA PYTHONISTAの雑感
2015-06-02 @GUNOSY
1
Wednesday, June 3, 15
WHO
? バクフー株式会社?柏野 雄太
? 大規模リアルタイムデータのPPPP (P4)
? preprocess /process /persistence /providing
Wednesday, June 3, 15
WHO
? Zope3の開発
? Pythonがネイティブランゲージ
? いくつかの本
? バックグラウンドは宇宙物理学
? 大規模データ統計解析,科学計算
Wednesday, June 3, 15
WHAT: データプラットフォーム
? 大規模?リアルタイム?オンタイム
リアルタイムデータ 処理 ストア
API, 検索
ストリーミング
API, 検索
可視化 通知
API, 検索
ストリーミング
API, 検索
可視化
経済データ ES / redis /
s3
異常値検知
混雑データ ES / S3変換/分類
気象データ ES/S3変換/分類
ES/Solr/
mongoDB
自然言語処理/LDA/セ
ンチメント解析twitter
Wednesday, June 3, 15
HOW: 支える技術
? 分散マイクロサービス
async
tornado (eposs/kqueue)
asyncio (gevent/libev/libuv...)
gevent/greenlet (libev+libio)
node.js (libuv)
messaging ZeroMQ
MQS
RQ + Redis
Celery + RabbitMQ
DB
Elasticsearch / Solr
Redis, MongoDB
HDFS, Cassandra
MySQL / PostgreSQL
S3
ML/Sci
Numpy/Scipyツールチェーン
vowpal_wabbit
Theano / keras / caffe
Wednesday, June 3, 15
現状
? Pythonベースのマイクロサービスによる分散処理
? asyncサーバー + メッセージング
? asnycサーバー + MQS
? 大規模分散フレームワーク
? 実際問題,Pythonハウスとして全然困っていない
Wednesday, June 3, 15
ただ…
? Gunosy粟飯原さん「柏野さん,Tornadoもいいけれ
ど,Goはいいっすよ,ほんと早い」
? 新しいイケてる技術に乗っておかないと老衰死する
Wednesday, June 3, 15
そこで…
? サービスのAPIの一部をGolangで置き換え
? negroni + net/http
Wednesday, June 3, 15
感想: たしかに良い
? お気軽で速い (チューンなしで倍速)
? 単なるforが速い <- Pythonではforを使うと負け
? ただweb系サーバ自体の性能はほとんど変わらず…
? タイムスタンプとか普通に苦労しない
? cgoがある
? In?uxDBとか本格派フレームワークが登場してきた
Wednesday, June 3, 15
感想: つらさも…
? 型がキツい
? goroutine/chanのスタイルがステキだが古くさい
? ジェネレータ的なコンカレントなスタイルが難しい
? zmqあればgorutineなくても別に困らない…
? ライブラリ等がカオス (awesome goはあるが…)
? 開発エコシステムがスケールしない?
Wednesday, June 3, 15
感想: つらさも…2
? Go + MeCab / Chasen... とかつらすぎる
? 結局cgoで自前バインディングという…
? といいますか,日本語の自然言語処理全般に無理すぎ
感が…
? 逆に必要なcのライブラリさえあれば,cgoがあれば,
自力で少ない努力でなんでもできるという面はある
Wednesday, June 3, 15
感想: つらさも…3
? ML/科学計算エコシステムが未成熟
? pandasのようなデータフレームがない
? numpy/scipyのような
? ML特に深層学習などイケてる技術は壊滅…
? リアルタイムwebが未成熟
? websocketライブラリが… (net, gorilla)
Wednesday, June 3, 15
暫定的な結論
? 大々的に移行するモチベーションは未だ強くはない
? しかし,実行速度速いので継続的に利用したい
? 特に並列化できない処理の部分に
? 他の言語に負けない領域で,尖るものがでてくること
を期待したい…
Wednesday, June 3, 15
Wednesday, June 3, 15

More Related Content

Gunosy go2015 06-02