SlideShare uma empresa Scribd logo
1 de 57
Baixar para ler offline
user
behavior
system     http://www.matmotu.com




           work @ youa WED team
           http://t.sina.com/rank
user
behavior
system
           marmot you
           http://www.matmotu.com




           work @ youa WED team
           http://t.sina.com/rank
marmot
100
flash

            V.S
   php
clickheat          canvas
DOM
                cpu                 dom
    flash

                                    dom
php clickheat

                              dom
   canvas             html5
                                          DOM
referer+url
  client js                     marmot server




                   marmotID
  Sid+Mid                         url match
                    sessionID




  client log
                 seq=0
                                  server log
                 seq=n
processor API
mousemove   mousedown     target

 mouseup      click     event type

 dblclick     focus     timestamp

  scroll     keydown    custom data
•
•
•
•   API

•
O=(0,0)
1024*768                              1280*800




    O=(document.documentElement.scrollWidth/2|0,0)




                  align = middle




                relative coordinate
DOM path

MDP
Marmot DOM Path
body


   div#container(HTMLElement)

       div(HTMLElement)        div(HTMLElement)




                   Marmot.getPath


            path=[div.container, ~1div]

            path.replace(/~(d+)([^~]+)/gi,
               '~$2:nth-of-type($1)')
               .replace(/~/gi, '>')
               .replace(/./gi, '#');

   selector=’div#container>div:nth-of-type(1)’
•   marmot.log.js   click

•       hover       MDP     •
•       selector MDP        •
•
•                   HDFS/

•
target

event type

timestamp

custom data
move
                        start




        mouse           mouse           delta
        move      -     move     =      hover




        mouse           mouse
        down      +      up      =      click




mouse           mouse           mouse           delta
down     +      move     +       up      =      select
body

                                                    x=300
     div#container(HTMLElement)
                                                    y=100

         div(HTMLElement)    div(HTMLElement)




mdp selector = ‘div#container>div:nth-of-type(1)’
relative coordinate x = event.x; //300
relative coordinate y = event.y; //100




var el = document.querySelector(mdp selector); //
var xy = Dom.getXY(el);
var corrective x = xy[0] + relative coordinate x;
var corrective y = xy[1] + relative coordinate y;
1024px



               1px*1px



768px


        Math.floor(document.documentElement.scrollWidth/n)




               9px*9px
...
...
AB test
•A           a->b->c->d->...

•B           c->b->d->a->...

•C           a->b->c->a->...

•D           a->c->b->a->...

     a->b->c->a
key path
['', 'input.rd_fv_30', 'input.phone_number', 'button.btn-charge']



similar path
['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0']
['', 'input.rd_fv_30', 'input.phone_number', 'button.btn-charge', 'input.PassInputUsername0',
'input.PassInputPassword0']
['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0']
['', 'input.rd_ct_slow', 'input.phone_number', 'button.btn-charge', 'div.pdc-
wrap~2div~1div~1div~1a', '']
['', 'input.phone_number']
['', 'input.phone_number', 'button.btn-charge', 'div.user_register_ctn~1h4',
'button.user_register_btn']
['', 'input.rd_fv_50', 'input.phone_number', 'input.phone_number', 'input.phone_number',
'button.btn-charge']
['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0',
'form.PassFormlogin~1fieldset~1p~1button', 'form.PassFormlogin~1fieldset~1p~1button']
PV
Q:   ,
•
•
•
•   80
marmot v2 design UDC
ABtest



hadoop
         framework
(HDFS)

           beta
          publish




         marmot


          WPO
thanks

Mais conteúdo relacionado

Mais procurados

MongoDBで作るソーシャルデータ新解析基盤
MongoDBで作るソーシャルデータ新解析基盤MongoDBで作るソーシャルデータ新解析基盤
MongoDBで作るソーシャルデータ新解析基盤Takahiro Inoue
 
Javascript & Ajax Basics
Javascript & Ajax BasicsJavascript & Ajax Basics
Javascript & Ajax BasicsRichard Paul
 
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móvilesDesarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móvilesLuis Curo Salvatierra
 
Study of aloha protocol using ns2 network java proram
Study of aloha protocol using ns2 network java proramStudy of aloha protocol using ns2 network java proram
Study of aloha protocol using ns2 network java proramMeenakshi Devi
 
C++ Programming - 8th Study
C++ Programming - 8th StudyC++ Programming - 8th Study
C++ Programming - 8th StudyChris Ohk
 
Having fun with graphs, a short introduction to D3.js
Having fun with graphs, a short introduction to D3.jsHaving fun with graphs, a short introduction to D3.js
Having fun with graphs, a short introduction to D3.jsMichael Hackstein
 
An Introduction to Windows PowerShell
An Introduction to Windows PowerShellAn Introduction to Windows PowerShell
An Introduction to Windows PowerShellDale Lane
 
PostgreSQLからMongoDBへ
PostgreSQLからMongoDBへPostgreSQLからMongoDBへ
PostgreSQLからMongoDBへBasuke Suzuki
 
20090622 Vimm4
20090622 Vimm420090622 Vimm4
20090622 Vimm4id774
 
Advanced Analytics & Statistics with MongoDB
Advanced Analytics & Statistics with MongoDBAdvanced Analytics & Statistics with MongoDB
Advanced Analytics & Statistics with MongoDBJohn De Goes
 
Making Games in JavaScript
Making Games in JavaScriptMaking Games in JavaScript
Making Games in JavaScriptSam Cartwright
 

Mais procurados (20)

Snow
SnowSnow
Snow
 
MongoDBで作るソーシャルデータ新解析基盤
MongoDBで作るソーシャルデータ新解析基盤MongoDBで作るソーシャルデータ新解析基盤
MongoDBで作るソーシャルデータ新解析基盤
 
Javascript & Ajax Basics
Javascript & Ajax BasicsJavascript & Ajax Basics
Javascript & Ajax Basics
 
Funcd
FuncdFuncd
Funcd
 
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móvilesDesarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móviles
 
Study of aloha protocol using ns2 network java proram
Study of aloha protocol using ns2 network java proramStudy of aloha protocol using ns2 network java proram
Study of aloha protocol using ns2 network java proram
 
C++ Programming - 8th Study
C++ Programming - 8th StudyC++ Programming - 8th Study
C++ Programming - 8th Study
 
Having fun with graphs, a short introduction to D3.js
Having fun with graphs, a short introduction to D3.jsHaving fun with graphs, a short introduction to D3.js
Having fun with graphs, a short introduction to D3.js
 
The State of JavaScript
The State of JavaScriptThe State of JavaScript
The State of JavaScript
 
An Introduction to Windows PowerShell
An Introduction to Windows PowerShellAn Introduction to Windows PowerShell
An Introduction to Windows PowerShell
 
Class & sub class
Class & sub classClass & sub class
Class & sub class
 
MongoDB Oplog入門
MongoDB Oplog入門MongoDB Oplog入門
MongoDB Oplog入門
 
PostgreSQLからMongoDBへ
PostgreSQLからMongoDBへPostgreSQLからMongoDBへ
PostgreSQLからMongoDBへ
 
20090622 Vimm4
20090622 Vimm420090622 Vimm4
20090622 Vimm4
 
Fact, Fiction, and FP
Fact, Fiction, and FPFact, Fiction, and FP
Fact, Fiction, and FP
 
Advanced Analytics & Statistics with MongoDB
Advanced Analytics & Statistics with MongoDBAdvanced Analytics & Statistics with MongoDB
Advanced Analytics & Statistics with MongoDB
 
The jsdom
The jsdomThe jsdom
The jsdom
 
Making Games in JavaScript
Making Games in JavaScriptMaking Games in JavaScript
Making Games in JavaScript
 
Clojure functions 4
Clojure functions 4Clojure functions 4
Clojure functions 4
 
Tt subtemplates-caching
Tt subtemplates-cachingTt subtemplates-caching
Tt subtemplates-caching
 

Destaque

Cultural and Political Issues in the Middle East
Cultural and Political Issues in the Middle EastCultural and Political Issues in the Middle East
Cultural and Political Issues in the Middle EastFrancis Ho
 
Spiritualism Materialism And Namasmaran Dr. Shriniwas J. Kashalikar
Spiritualism Materialism And Namasmaran  Dr. Shriniwas J.  KashalikarSpiritualism Materialism And Namasmaran  Dr. Shriniwas J.  Kashalikar
Spiritualism Materialism And Namasmaran Dr. Shriniwas J. Kashalikarshriniwaskashalikar
 
Securing Windows Remote Desktop With Copssh
Securing Windows Remote Desktop With CopsshSecuring Windows Remote Desktop With Copssh
Securing Windows Remote Desktop With CopsshCrismer La Pignola
 
Freedom Dr. Shriniwas Kashalikar
Freedom Dr. Shriniwas KashalikarFreedom Dr. Shriniwas Kashalikar
Freedom Dr. Shriniwas Kashalikarshriniwaskashalikar
 
Kvorning Presentation
Kvorning PresentationKvorning Presentation
Kvorning Presentationguesta8f207
 
Marc, Èlia, Naiara, Nikita, Pol
Marc, Èlia, Naiara, Nikita, PolMarc, Èlia, Naiara, Nikita, Pol
Marc, Èlia, Naiara, Nikita, Polsbolader
 
N E W S T U D Y O F G I T A N O V 5 D R
N E W  S T U D Y  O F  G I T A  N O V 5  D RN E W  S T U D Y  O F  G I T A  N O V 5  D R
N E W S T U D Y O F G I T A N O V 5 D Rshriniwaskashalikar
 
W H A T I S N A M A S M A R A N D R
W H A T  I S  N A M A S M A R A N  D RW H A T  I S  N A M A S M A R A N  D R
W H A T I S N A M A S M A R A N D Rshriniwaskashalikar
 
Q U E S T I O N S A N D U N I V E R S A L L E A R N I N G D R S H R I N ...
Q U E S T I O N S  A N D  U N I V E R S A L  L E A R N I N G  D R  S H R I N ...Q U E S T I O N S  A N D  U N I V E R S A L  L E A R N I N G  D R  S H R I N ...
Q U E S T I O N S A N D U N I V E R S A L L E A R N I N G D R S H R I N ...shriniwaskashalikar
 
黄希彤:【无障碍访问】Margin
黄希彤:【无障碍访问】Margin黄希彤:【无障碍访问】Margin
黄希彤:【无障碍访问】Margintaobao.com
 
Pere L, Gina, Abdeladim, Txell
Pere L, Gina, Abdeladim, TxellPere L, Gina, Abdeladim, Txell
Pere L, Gina, Abdeladim, Txellsbolader
 
ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016Francis Ho
 
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011SEO, LLC dba www.SplinternetMarketing.com
 
Obesitas Ina Beerendonk
Obesitas   Ina BeerendonkObesitas   Ina Beerendonk
Obesitas Ina BeerendonkMijnZorgnet
 
Java & Script ─ 清羽
Java & Script ─ 清羽Java & Script ─ 清羽
Java & Script ─ 清羽taobao.com
 
Presentació
PresentacióPresentació
Presentaciósbolader
 

Destaque (20)

Cultural and Political Issues in the Middle East
Cultural and Political Issues in the Middle EastCultural and Political Issues in the Middle East
Cultural and Political Issues in the Middle East
 
Spiritualism Materialism And Namasmaran Dr. Shriniwas J. Kashalikar
Spiritualism Materialism And Namasmaran  Dr. Shriniwas J.  KashalikarSpiritualism Materialism And Namasmaran  Dr. Shriniwas J.  Kashalikar
Spiritualism Materialism And Namasmaran Dr. Shriniwas J. Kashalikar
 
Securing Windows Remote Desktop With Copssh
Securing Windows Remote Desktop With CopsshSecuring Windows Remote Desktop With Copssh
Securing Windows Remote Desktop With Copssh
 
Freedom Dr. Shriniwas Kashalikar
Freedom Dr. Shriniwas KashalikarFreedom Dr. Shriniwas Kashalikar
Freedom Dr. Shriniwas Kashalikar
 
Kvorning Presentation
Kvorning PresentationKvorning Presentation
Kvorning Presentation
 
金瓜石
金瓜石金瓜石
金瓜石
 
Marc, Èlia, Naiara, Nikita, Pol
Marc, Èlia, Naiara, Nikita, PolMarc, Èlia, Naiara, Nikita, Pol
Marc, Èlia, Naiara, Nikita, Pol
 
N E W S T U D Y O F G I T A N O V 5 D R
N E W  S T U D Y  O F  G I T A  N O V 5  D RN E W  S T U D Y  O F  G I T A  N O V 5  D R
N E W S T U D Y O F G I T A N O V 5 D R
 
W H A T I S N A M A S M A R A N D R
W H A T  I S  N A M A S M A R A N  D RW H A T  I S  N A M A S M A R A N  D R
W H A T I S N A M A S M A R A N D R
 
Q U E S T I O N S A N D U N I V E R S A L L E A R N I N G D R S H R I N ...
Q U E S T I O N S  A N D  U N I V E R S A L  L E A R N I N G  D R  S H R I N ...Q U E S T I O N S  A N D  U N I V E R S A L  L E A R N I N G  D R  S H R I N ...
Q U E S T I O N S A N D U N I V E R S A L L E A R N I N G D R S H R I N ...
 
H O L I S T I C H E A L T H Dr
H O L I S T I C  H E A L T H  DrH O L I S T I C  H E A L T H  Dr
H O L I S T I C H E A L T H Dr
 
黄希彤:【无障碍访问】Margin
黄希彤:【无障碍访问】Margin黄希彤:【无障碍访问】Margin
黄希彤:【无障碍访问】Margin
 
Pere L, Gina, Abdeladim, Txell
Pere L, Gina, Abdeladim, TxellPere L, Gina, Abdeladim, Txell
Pere L, Gina, Abdeladim, Txell
 
Cl201 using social media to build community k medit
Cl201 using social media to build community k meditCl201 using social media to build community k medit
Cl201 using social media to build community k medit
 
ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016ACA-ACE Framework Alliance Contract - 25 February 2016
ACA-ACE Framework Alliance Contract - 25 February 2016
 
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011
SEO, LLC dba Www.Splinternet Marketing.Com Search Engine Rankings On 4-18-2011
 
Telling your story
Telling your story Telling your story
Telling your story
 
Obesitas Ina Beerendonk
Obesitas   Ina BeerendonkObesitas   Ina Beerendonk
Obesitas Ina Beerendonk
 
Java & Script ─ 清羽
Java & Script ─ 清羽Java & Script ─ 清羽
Java & Script ─ 清羽
 
Presentació
PresentacióPresentació
Presentació
 

Semelhante a 刘平川:【用户行为分析】Marmot实践

Amir Salihefendic: Redis - the hacker's database
Amir Salihefendic: Redis - the hacker's databaseAmir Salihefendic: Redis - the hacker's database
Amir Salihefendic: Redis - the hacker's databaseit-people
 
Windows Remote Management - EN
Windows Remote Management - ENWindows Remote Management - EN
Windows Remote Management - ENKirill Nikolaev
 
kissy-past-now-future
kissy-past-now-futurekissy-past-now-future
kissy-past-now-futureyiming he
 
KISSY 的昨天、今天与明天
KISSY 的昨天、今天与明天KISSY 的昨天、今天与明天
KISSY 的昨天、今天与明天tblanlan
 
Jquery In Rails
Jquery In RailsJquery In Rails
Jquery In Railsshen liu
 
Designing a database like an archaeologist
Designing a database like an archaeologistDesigning a database like an archaeologist
Designing a database like an archaeologistyoavrubin
 
Scalding big ADta
Scalding big ADtaScalding big ADta
Scalding big ADtab0ris_1
 
Ruby is Awesome
Ruby is AwesomeRuby is Awesome
Ruby is AwesomeAstrails
 
OWASP PHPIDS talk slides
OWASP PHPIDS talk slidesOWASP PHPIDS talk slides
OWASP PHPIDS talk slidesguestd34230
 
#NewMeetup Performance
#NewMeetup Performance#NewMeetup Performance
#NewMeetup PerformanceJustin Cataldo
 
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.GeeksLab Odessa
 
The Art Of Readable Code
The Art Of Readable CodeThe Art Of Readable Code
The Art Of Readable CodeBaidu, Inc.
 
Zend Framework Study@Tokyo #2
Zend Framework Study@Tokyo #2Zend Framework Study@Tokyo #2
Zend Framework Study@Tokyo #2Shinya Ohyanagi
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeLaurence Svekis ✔
 
Metrics 2.0 & Graph-Explorer
Metrics 2.0 & Graph-ExplorerMetrics 2.0 & Graph-Explorer
Metrics 2.0 & Graph-ExplorerDieter Plaetinck
 
Logstash for SEO: come monitorare i Log del Web Server in realtime
Logstash for SEO: come monitorare i Log del Web Server in realtimeLogstash for SEO: come monitorare i Log del Web Server in realtime
Logstash for SEO: come monitorare i Log del Web Server in realtimeAndrea Cardinale
 

Semelhante a 刘平川:【用户行为分析】Marmot实践 (20)

Amir Salihefendic: Redis - the hacker's database
Amir Salihefendic: Redis - the hacker's databaseAmir Salihefendic: Redis - the hacker's database
Amir Salihefendic: Redis - the hacker's database
 
Windows Remote Management - EN
Windows Remote Management - ENWindows Remote Management - EN
Windows Remote Management - EN
 
kissy-past-now-future
kissy-past-now-futurekissy-past-now-future
kissy-past-now-future
 
KISSY 的昨天、今天与明天
KISSY 的昨天、今天与明天KISSY 的昨天、今天与明天
KISSY 的昨天、今天与明天
 
Jquery In Rails
Jquery In RailsJquery In Rails
Jquery In Rails
 
Designing a database like an archaeologist
Designing a database like an archaeologistDesigning a database like an archaeologist
Designing a database like an archaeologist
 
Scalding big ADta
Scalding big ADtaScalding big ADta
Scalding big ADta
 
Ruby is Awesome
Ruby is AwesomeRuby is Awesome
Ruby is Awesome
 
OWASP PHPIDS talk slides
OWASP PHPIDS talk slidesOWASP PHPIDS talk slides
OWASP PHPIDS talk slides
 
R-House (LSRC)
R-House (LSRC)R-House (LSRC)
R-House (LSRC)
 
#NewMeetup Performance
#NewMeetup Performance#NewMeetup Performance
#NewMeetup Performance
 
Fluent 2012 v2
Fluent 2012   v2Fluent 2012   v2
Fluent 2012 v2
 
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
 
The Art Of Readable Code
The Art Of Readable CodeThe Art Of Readable Code
The Art Of Readable Code
 
Performance patterns
Performance patternsPerformance patterns
Performance patterns
 
Zend Framework Study@Tokyo #2
Zend Framework Study@Tokyo #2Zend Framework Study@Tokyo #2
Zend Framework Study@Tokyo #2
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
 
Metrics 2.0 & Graph-Explorer
Metrics 2.0 & Graph-ExplorerMetrics 2.0 & Graph-Explorer
Metrics 2.0 & Graph-Explorer
 
Logstash for SEO: come monitorare i Log del Web Server in realtime
Logstash for SEO: come monitorare i Log del Web Server in realtimeLogstash for SEO: come monitorare i Log del Web Server in realtime
Logstash for SEO: come monitorare i Log del Web Server in realtime
 

Mais de taobao.com

编辑器设计U editor
编辑器设计U editor编辑器设计U editor
编辑器设计U editortaobao.com
 
淘宝开放产品前端实践
淘宝开放产品前端实践淘宝开放产品前端实践
淘宝开放产品前端实践taobao.com
 
广告投放代码和创意代码持续优化
广告投放代码和创意代码持续优化广告投放代码和创意代码持续优化
广告投放代码和创意代码持续优化taobao.com
 
第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践taobao.com
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editortaobao.com
 
百度前端性能监控与优化实践
百度前端性能监控与优化实践百度前端性能监控与优化实践
百度前端性能监控与优化实践taobao.com
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践taobao.com
 
Kind editor设计思路
Kind editor设计思路Kind editor设计思路
Kind editor设计思路taobao.com
 
Java script physical engine
Java script physical engineJava script physical engine
Java script physical enginetaobao.com
 
Html5环保小游戏
Html5环保小游戏Html5环保小游戏
Html5环保小游戏taobao.com
 
阅读类Web应用前端技术探索
阅读类Web应用前端技术探索阅读类Web应用前端技术探索
阅读类Web应用前端技术探索taobao.com
 
完颜:移动网站的兼容性探索
完颜:移动网站的兼容性探索完颜:移动网站的兼容性探索
完颜:移动网站的兼容性探索taobao.com
 
张平:JavaScript引擎实现
张平:JavaScript引擎实现张平:JavaScript引擎实现
张平:JavaScript引擎实现taobao.com
 
高力:19楼现有前端架构
高力:19楼现有前端架构高力:19楼现有前端架构
高力:19楼现有前端架构taobao.com
 
李成银:前端编译平台
李成银:前端编译平台李成银:前端编译平台
李成银:前端编译平台taobao.com
 
钱宝坤:多浏览器集成的JavaScript单元测试工具
钱宝坤:多浏览器集成的JavaScript单元测试工具钱宝坤:多浏览器集成的JavaScript单元测试工具
钱宝坤:多浏览器集成的JavaScript单元测试工具taobao.com
 
张克军:前端基础架构的实践和思考
张克军:前端基础架构的实践和思考张克军:前端基础架构的实践和思考
张克军:前端基础架构的实践和思考taobao.com
 
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践taobao.com
 
前端Mvc探讨及实践
前端Mvc探讨及实践前端Mvc探讨及实践
前端Mvc探讨及实践taobao.com
 

Mais de taobao.com (20)

编辑器设计U editor
编辑器设计U editor编辑器设计U editor
编辑器设计U editor
 
Berserk js
Berserk jsBerserk js
Berserk js
 
淘宝开放产品前端实践
淘宝开放产品前端实践淘宝开放产品前端实践
淘宝开放产品前端实践
 
广告投放代码和创意代码持续优化
广告投放代码和创意代码持续优化广告投放代码和创意代码持续优化
广告投放代码和创意代码持续优化
 
第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践
 
编辑器设计Kissy editor
编辑器设计Kissy editor编辑器设计Kissy editor
编辑器设计Kissy editor
 
百度前端性能监控与优化实践
百度前端性能监控与优化实践百度前端性能监控与优化实践
百度前端性能监控与优化实践
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
 
Kind editor设计思路
Kind editor设计思路Kind editor设计思路
Kind editor设计思路
 
Java script physical engine
Java script physical engineJava script physical engine
Java script physical engine
 
Html5环保小游戏
Html5环保小游戏Html5环保小游戏
Html5环保小游戏
 
阅读类Web应用前端技术探索
阅读类Web应用前端技术探索阅读类Web应用前端技术探索
阅读类Web应用前端技术探索
 
完颜:移动网站的兼容性探索
完颜:移动网站的兼容性探索完颜:移动网站的兼容性探索
完颜:移动网站的兼容性探索
 
张平:JavaScript引擎实现
张平:JavaScript引擎实现张平:JavaScript引擎实现
张平:JavaScript引擎实现
 
高力:19楼现有前端架构
高力:19楼现有前端架构高力:19楼现有前端架构
高力:19楼现有前端架构
 
李成银:前端编译平台
李成银:前端编译平台李成银:前端编译平台
李成银:前端编译平台
 
钱宝坤:多浏览器集成的JavaScript单元测试工具
钱宝坤:多浏览器集成的JavaScript单元测试工具钱宝坤:多浏览器集成的JavaScript单元测试工具
钱宝坤:多浏览器集成的JavaScript单元测试工具
 
张克军:前端基础架构的实践和思考
张克军:前端基础架构的实践和思考张克军:前端基础架构的实践和思考
张克军:前端基础架构的实践和思考
 
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践
吴英杰:【用户行为分析】淘宝页面显微镜系统原理及实践
 
前端Mvc探讨及实践
前端Mvc探讨及实践前端Mvc探讨及实践
前端Mvc探讨及实践
 

Último

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 

Último (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

刘平川:【用户行为分析】Marmot实践

  • 1. user behavior system http://www.matmotu.com work @ youa WED team http://t.sina.com/rank
  • 2. user behavior system marmot you http://www.matmotu.com work @ youa WED team http://t.sina.com/rank
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. 100
  • 19.
  • 20. flash V.S php clickheat canvas
  • 21. DOM cpu dom flash dom php clickheat dom canvas html5 DOM
  • 22.
  • 23. referer+url client js marmot server marmotID Sid+Mid url match sessionID client log seq=0 server log seq=n processor API
  • 24. mousemove mousedown target mouseup click event type dblclick focus timestamp scroll keydown custom data
  • 25. • • • • API •
  • 26.
  • 27. O=(0,0) 1024*768 1280*800 O=(document.documentElement.scrollWidth/2|0,0) align = middle relative coordinate
  • 29. body div#container(HTMLElement) div(HTMLElement) div(HTMLElement) Marmot.getPath path=[div.container, ~1div] path.replace(/~(d+)([^~]+)/gi, '~$2:nth-of-type($1)') .replace(/~/gi, '>') .replace(/./gi, '#'); selector=’div#container>div:nth-of-type(1)’
  • 30.
  • 31. marmot.log.js click • hover MDP • • selector MDP • • • HDFS/ •
  • 33. move start mouse mouse delta move - move = hover mouse mouse down + up = click mouse mouse mouse delta down + move + up = select
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39. body x=300 div#container(HTMLElement) y=100 div(HTMLElement) div(HTMLElement) mdp selector = ‘div#container>div:nth-of-type(1)’ relative coordinate x = event.x; //300 relative coordinate y = event.y; //100 var el = document.querySelector(mdp selector); // var xy = Dom.getXY(el); var corrective x = xy[0] + relative coordinate x; var corrective y = xy[1] + relative coordinate y;
  • 40.
  • 41. 1024px 1px*1px 768px Math.floor(document.documentElement.scrollWidth/n) 9px*9px
  • 42. ...
  • 43. ...
  • 45.
  • 46. •A a->b->c->d->... •B c->b->d->a->... •C a->b->c->a->... •D a->c->b->a->... a->b->c->a
  • 47. key path ['', 'input.rd_fv_30', 'input.phone_number', 'button.btn-charge'] similar path ['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0'] ['', 'input.rd_fv_30', 'input.phone_number', 'button.btn-charge', 'input.PassInputUsername0', 'input.PassInputPassword0'] ['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0'] ['', 'input.rd_ct_slow', 'input.phone_number', 'button.btn-charge', 'div.pdc- wrap~2div~1div~1div~1a', ''] ['', 'input.phone_number'] ['', 'input.phone_number', 'button.btn-charge', 'div.user_register_ctn~1h4', 'button.user_register_btn'] ['', 'input.rd_fv_50', 'input.phone_number', 'input.phone_number', 'input.phone_number', 'button.btn-charge'] ['', 'input.phone_number', 'button.btn-charge', 'input.PassInputPassword0', 'form.PassFormlogin~1fieldset~1p~1button', 'form.PassFormlogin~1fieldset~1p~1button']
  • 48. PV
  • 49. Q: ,
  • 50.
  • 53.
  • 54.
  • 55.
  • 56. ABtest hadoop framework (HDFS) beta publish marmot WPO