论使⽤用python实现

推荐引擎的优越性
Zalora South East Asia 架构师 翁伟
于我
•

汕头人

•

常驻新加坡

•

.net、python、GO
•

•

对python感情非常深厚!

新浪微博 @Wuvist 吃货慎

注!
Zalora South East Asia
•

2012年初成立

•

东南亚时尚电商
•

新加坡(总部)⻢马来西亚 印尼 香港 越南 泰国
菲律宾 文莱

•

约1000名员工(IT部

约40人)
推荐引擎

•

今年上半年以试验性(20%时间)项⺫⽬目开发

•

**最终**使用了python
学习的优越性
•

协同过滤、推荐、聚类

、甚⾄至搜索都有介绍

•

以python实现为例













资源的优越性
•

phpserialize

•

tornado

•

supervisord

•

….
调试的优越性

•

IPython
•

•

http://ipython.org

交互式的编码、调试
论使用Python开发推荐引擎的优越性
性能的优越性
•

pandas
•

http://pandas.pydata.org

•

高级的数据操作抽象

•

成组的数据计算

•

与IPython完美结合

其快
**最终**使用了python
一

始用的是groovy...
来自Groovy
• 推荐计算 其慢	

• 分析20万订单需要5个小时
我是会Python的
• 花了一 上重新把核心用PY重写	

• 果然很快	

• 分钟 定
用PY推倒重来的理由
• 我不熟Groovy?	

• Python比Groovy快	

• 为什么Groovy慢?
论使用Python开发推荐引擎的优越性
• Groovy/JVM版本比PY快50%	

• (当然瓶颈不在此)
pandas

•

py版本快3倍 (1小时 => 20分钟)

•

(当然,也有架构上的优化)
IPython + pandas
demo
兼容的优越性

•

对windows友好 (请批判的理解)
•

hg / IPython / pandas等等
部署的优越性
•

vitualenv并不足
•

•

不同应用依赖不同版本的python肿么破?

pyenv
•

https://github.com/yyuu/pyenv
论使用Python开发推荐引擎的优越性
@laiyonghao
推荐引擎很有优越性!
•

单机可容纳所有数据

•

适合中小公司快速实现

•

利用20%时间开发推荐引擎
•

http://www.infoq.com/cn/presentations/twentypercent-time-to-develop-recommendationengine
谢谢〜~
wuvist@gmail.com

More Related Content

PDF
Fastest golang ORM implemented with generic
PDF
Migrate PHP E-Commerce Site to Go
PDF
About Caching
PDF
Metaprogramming Go
PDF
Why use Go for web development?
PDF
谈谈缓存
PPTX
用PY实现"Go元编程"
PPTX
Go for web
Fastest golang ORM implemented with generic
Migrate PHP E-Commerce Site to Go
About Caching
Metaprogramming Go
Why use Go for web development?
谈谈缓存
用PY实现"Go元编程"
Go for web

More from Weng Wei (7)

PDF
Go for web
PDF
Python to go
PDF
Zalora php to_go
PDF
A byte of git
KEY
My understanding of Git
KEY
Sharding
KEY
Inside Zend Framework
Go for web
Python to go
Zalora php to_go
A byte of git
My understanding of Git
Sharding
Inside Zend Framework
Ad

论使用Python开发推荐引擎的优越性