Posts Tagged ‘ScyllaDB’
[AWSReInventPartnerSessions2024] Inside Tripadvisor’s Real-Time Personalization with ScyllaDB and AWS (DAT204)
Lecturer
Felipe Cardeneti Mendes acts as Technical Director at ScyllaDB, guiding technical strategies for high-throughput, low-latency databases. Based in São Paulo, Felipe has extensive experience in distributed systems optimized for data-intensive applications. Dean Poulin leads data engineering at Tripadvisor, focusing on scalable solutions for personalization in travel platforms.
Abstract
This thorough assessment explores Tripadvisor’s use of ScyllaDB on AWS for real-time personalization, analyzing challenges in data-intensive apps, methodological optimizations for throughput and latency, and implications for user experience and infrastructure efficiency.
Challenges in Data-Intensive Personalization
Tripadvisor assesses user preferences rapidly to deliver relevant content, requiring systems sustaining one million operations per second with single-digit millisecond latencies. Growth escalates costs, forcing trade-offs between performance and expenses.
ScyllaDB, compatible with Cassandra and DynamoDB, offers five times higher throughput and twenty times lower latencies, reducing infrastructure spend by up to seventy-five percent.
Methodological Deployment and Performance
Migration from on-prem Cassandra to Scylla Cloud, then bring-your-own-account model, achieved zero-downtime at forty thousand operations per second. Partitioning by visitor GUID and fact type, using leveled compaction, supports read-heavy workloads.
Microservices handle over one billion daily requests with 1.2-millisecond average latency. A six-node EC2 cluster processes 340,000 operations per second at twenty-one percent CPU.
Code sample for data partitioning in ScyllaDB:
CREATE TABLE facts (
visitor_guid UUID,
fact_type TEXT,
created_at TIMESTAMP,
attributes TEXT,
PRIMARY KEY ((visitor_guid, fact_type), created_at)
) WITH CLUSTERING ORDER BY (created_at DESC);
This structure optimizes queries for user events.
In summary, ScyllaDB enhances personalization, balancing scale and cost effectively.