2017-04-03 Information Retrieval vs. The Real World Rolf Michelsen Industrial software engineering Creating a platform product costs an order of magnitude more than creating a program . — Frederick P. Brooks, jr. 1
2017-04-03 Background Large Scale Web Search 2
2017-04-03 Web search — algorithm Web search — system Content Q&R Internet Crawler Search Front End Index Processing Processing Global Analysis 3
2017-04-03 Web search — application Intent Outcome Web search — business model Users Publishers Advertisers 4
2017-04-03 New Possibilities 5
2017-04-03 Computing is free 3,3 GHz multi-core CPU 4 GB memory 1 TB disk 150 W power supply Raspberry Pi 3 1,2 GHz multi-core CPU Price $899 1 GB RAM Price $50 The data center is free $ aws ec2 run-instances --image-id ami-xxxxxxxx --count 100 --instance-type t1.micro --key-name MyKeyPair 6
2017-04-03 “Magic” is free <input id="text"> <button onclick="talk()">Talk It!</button> <button onclick="listen()">Voice</button> <script src="http://jyunming-chen.github.io/webspeech/platform/platform.js"></script> <script src="http://jyunming-chen.github.io/webspeech/webspeech/src/webspeech.js"></script> var speaker = new RobotSpeaker(); var listener = new AudioListener(); function talk() { speaker.speak("en", document.getElementById("text").value); } function listen() { listener.listen("en", function (text) { document.getElementById("text").value = text; }); } More “Magic” is free 7
2017-04-03 Technical Challenges Engineering complex systems «Anyone can build a fast CPU. The trick is to build a fast system.» — Seymour Cray (1926-1996) 8
2017-04-03 Scaling strategy — scaling up or out Scalable architecture Dispatch Search 9
2017-04-03 Large scale systems 10
2017-04-03 Failure 11
2017-04-03 Engineering for failure Repair & recovery Fault tolerance Fault detection Bug or failure Synchronization 12
2017-04-03 The CAP Theorem Consistency Performance Availability 13
2017-04-03 Information Retrieval vs. The Real World Rolf Michelsen 14
2017-04-03 Quality What is quality? 15
2017-04-03 What is quality? Measuring quality «When you can measure what you are speaking about, and express it in numbers, you know something about it; but when you cannot express it in numbers, your knowledge is of a meager and unsatisfactory kind; it may be the beginning of knowledge, but you have scarcely, in your thoughts, advanced to the stage of science, whatever the matter may be.» — Lord Kelvin (1824 – 1907) 16
2017-04-03 Performance measurements • Statistical models. • Lab setup. • Load generation tools and data. • Measurement tools and reporting. • Diagnostics to identify bottlenecks. • System skills. Metrics Hard metrics Soft metrics 17
2017-04-03 User studies The future • Task completion • Intent detection • Personalization 18
2017-04-03 Operations The Environment 19
2017-04-03 20
2017-04-03 21
2017-04-03 Organizational Challenges 22
2017-04-03 How do we win this war? 23
2017-04-03 Lean Startup Build → Measure → Learn 1. Business hypothesis 2. Iterative development 3. Minimum viable product 4. Validated learning 5. Pivot No silver bullet There is no single development, in either technology or management technique, which by itself promises even one order-of-magnitude improvement within a decade in productivity, in reliability, in simplicity. — Frederick P. Brooks, jr. 24
2017-04-03 Technical debt «Here is Edward Bear, coming downstairs now, bump, bump, bump on the back of his head, behind Christopher Robin. It is, as far as he knows, the only way of coming downstairs, but sometimes he feels that there really is another way, if only he could stop bumping for a moment and think of it. And then he feels that perhaps there isn’t.» Rolf Michelsen Rolf.michelsen@cxense.com 25
Recommend
More recommend