Upload
oren-eini
View
205
Download
0
Embed Size (px)
Citation preview
Zapping ever faster
Hagay Albo
Hagay AlboC.T.O & C.I.O at Zap GroupBSc Computer Science
facebook.com/hagay.albo.3
linkedin.com/in/hagay-albo-605a4722
A little bit about me
Who we are
Company Profile
Print Vs Online Income
Developing Language
Search Engine
Databases
50 Web .Net Developers20 Back Office DevelopersDevelopment
Problems we had
• Slow queries results• Expensive• No control• Complicated to develop on• Less Data per page• To many servers• To many points of failure• No updates and improvements
So we decided to look for an alternative NOSQL database
Server topology
Before After
Reasons we decided RavenDB
• Search abilities• Custom sorters• Simple to implement replication • Performance• All in C# (linq, extensions, analyzers …)• Easy to install• Wonderful support• Grate tools for monitoring and debugging• Built-in and easy to use facets and spatial• Simple to use studio
Search abilities
• Analyzers• Did You Mean• More Like This• Boosting• Scoring algorithm
Custom Sorters
• Easy to write complex sorting• Fast results• Pass arguments from query• All in C#
Example:
Replication
• Simple to implement• Failover• Load balancing• More than one master• Conflict resolutions
Performance
• Fast reads• Built in client/server caching• Reduce amount of servers• Increase amount of data per page
Amazon found that every 100ms of latency cost them 1% in sales
Performance results
• Improved page load time from 0.7s to 0.3s• Reduced average query time to 10ms• Reduced amount of DB servers by half • Doubled the amount of data per page• Around 300 queries a sec per server
The Result
• Increase of 25% in traffic• Better engagement on site• Improved our bounce rate• Faster to develop on• Developers Love It
Easy to develop on
• All code in C# (Client and Server)• .NET Client API (LINQ to RavenDB)• Built-in multi level caching• Safe by default• Lazy , multi queries• Simple implementation for security• Install and run in minutes• Easy to scale (replication, sharding)
Hagay [email protected]