SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
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がある
• InfluxDBとか本格派フレームワークが登場してきた
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

Más contenido relacionado

La actualidad más candente

Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネス
Mie Mori
 
傾向スコアを使ったキャンペーン効果検証V1
傾向スコアを使ったキャンペーン効果検証V1傾向スコアを使ったキャンペーン効果検証V1
傾向スコアを使ったキャンペーン効果検証V1
Kazuya Obanayama
 
Webクローリング&スクレイピングの最前線 公開用
Webクローリング&スクレイピングの最前線 公開用Webクローリング&スクレイピングの最前線 公開用
Webクローリング&スクレイピングの最前線 公開用
Lumin Hacker
 

La actualidad más candente (15)

GPT
GPTGPT
GPT
 
Big data解析ビジネス
Big data解析ビジネスBig data解析ビジネス
Big data解析ビジネス
 
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
 
「Data Infrastructure at Scale 」#yjdsw4
「Data Infrastructure at Scale 」#yjdsw4「Data Infrastructure at Scale 」#yjdsw4
「Data Infrastructure at Scale 」#yjdsw4
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
 
Hadoop~Yahoo! JAPANの活用について~
Hadoop~Yahoo! JAPANの活用について~Hadoop~Yahoo! JAPANの活用について~
Hadoop~Yahoo! JAPANの活用について~
 
傾向スコアを使ったキャンペーン効果検証V1
傾向スコアを使ったキャンペーン効果検証V1傾向スコアを使ったキャンペーン効果検証V1
傾向スコアを使ったキャンペーン効果検証V1
 
Webクローリング&スクレイピングの最前線 公開用
Webクローリング&スクレイピングの最前線 公開用Webクローリング&スクレイピングの最前線 公開用
Webクローリング&スクレイピングの最前線 公開用
 
Prophet入門【Python編】Facebookの時系列予測ツール
Prophet入門【Python編】Facebookの時系列予測ツールProphet入門【Python編】Facebookの時系列予測ツール
Prophet入門【Python編】Facebookの時系列予測ツール
 
文献データベースを使ったトレンドワード提示実験
文献データベースを使ったトレンドワード提示実験文献データベースを使ったトレンドワード提示実験
文献データベースを使ったトレンドワード提示実験
 
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例ヤフー音声認識サービスでのディープラーニングとGPU利用事例
ヤフー音声認識サービスでのディープラーニングとGPU利用事例
 
MapReduceによる大規模データ処理 at Yahoo! JAPAN
MapReduceによる大規模データ処理 at Yahoo! JAPANMapReduceによる大規模データ処理 at Yahoo! JAPAN
MapReduceによる大規模データ処理 at Yahoo! JAPAN
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
 
各種データベースの特徴とパフォーマンス比較
各種データベースの特徴とパフォーマンス比較各種データベースの特徴とパフォーマンス比較
各種データベースの特徴とパフォーマンス比較
 
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)
 

Más de Yuta Kashino

私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか
Yuta Kashino
 

Más de Yuta Kashino (20)

時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.sts時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.sts
 
Python kansai2019
Python kansai2019Python kansai2019
Python kansai2019
 
Mlse20190208
Mlse20190208Mlse20190208
Mlse20190208
 
Ml15m2018 10-27
Ml15m2018 10-27Ml15m2018 10-27
Ml15m2018 10-27
 
Pydata2017 11-29
Pydata2017 11-29Pydata2017 11-29
Pydata2017 11-29
 
私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか
 
Pycon2017
Pycon2017Pycon2017
Pycon2017
 
ベイジアンディープニューラルネット
ベイジアンディープニューラルネットベイジアンディープニューラルネット
ベイジアンディープニューラルネット
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計
 
Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12
 
確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward
 
PyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメPyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメ
 
機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
 
Chainer meetup2016 03-19pub
Chainer meetup2016 03-19pubChainer meetup2016 03-19pub
Chainer meetup2016 03-19pub
 
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
 
深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル
 
TensorFlow White Paperを読む
TensorFlow White Paperを読むTensorFlow White Paperを読む
TensorFlow White Paperを読む
 
Deep learning Libs @twm
Deep learning Libs @twmDeep learning Libs @twm
Deep learning Libs @twm
 
Gunosy2015 09-16ts
Gunosy2015 09-16tsGunosy2015 09-16ts
Gunosy2015 09-16ts
 

Gunosy go2015 06-02