2025-11-12T05:58:09.775127

Comparative Performance Analysis of Modern NoSQL Data Technologies: Redis, Aerospike, and Dragonfly

Bodra, Khairnar
The rise of distributed applications and cloud computing has created a demand for scalable, high-performance key-value storage systems. This paper presents a performance evaluation of three prominent NoSQL key-value stores: Redis, Aerospike, and Dragonfly, using the Yahoo! Cloud Serving Benchmark (YCSB) framework. We conducted extensive experiments across three distinct workload patterns (read-heavy, write-heavy), and balanced while systematically varying client concurrency from 1 to 32 clients. Our evaluation methodology captures both latency, throughput, and memory characteristics under realistic operational conditions, providing insights into the performance trade-offs and scalability behaviour of each system
academic

Analisi Comparativa delle Prestazioni delle Moderne Tecnologie Dati NoSQL: Redis, Aerospike e Dragonfly

Informazioni Fondamentali

  • ID Articolo: 2510.08863
  • Titolo: Comparative Performance Analysis of Modern NoSQL Data Technologies: Redis, Aerospike, and Dragonfly
  • Autori: Deep Bodra (Harrisburg University of Science and Technology), Sushil Khairnar (Virginia Tech)
  • Classificazione: cs.DB cs.DC
  • Rivista di Pubblicazione: Journal of Research, Innovation and Technologies, Volume IV, Issue 2(8), 2025
  • Link Articolo: https://doi.org/10.57017/jorit.v4.2(8).05

Riassunto

Con l'emergere delle applicazioni distribuite e del cloud computing, la domanda di sistemi di archiviazione chiave-valore scalabili e ad alte prestazioni è in costante crescita. Questo articolo presenta una valutazione delle prestazioni di tre principali sistemi NoSQL di archiviazione chiave-valore utilizzando il framework Yahoo! Cloud Serving Benchmark (YCSB): Redis, Aerospike e Dragonfly. Lo studio ha condotto esperimenti estensivi sotto tre diversi modelli di carico di lavoro (lettura intensiva, scrittura intensiva e bilanciato), variando sistematicamente il numero di client concorrenti da 1 a 32. La metodologia di valutazione ha catturato latenza, throughput e caratteristiche di memoria in condizioni operative realistiche, fornendo approfondimenti significativi sui compromessi di prestazione e sui comportamenti di scalabilità di ciascun sistema.

Contesto di Ricerca e Motivazione

Definizione del Problema

  1. Sfide dei Requisiti delle Applicazioni Moderne: L'ambiente digitale contemporaneo comporta la creazione e l'utilizzo di grandi volumi di dati; la rapida espansione delle applicazioni web, della tecnologia mobile e dei dispositivi IoT pone nuove sfide ai sistemi di database
  2. Limitazioni dei Database Tradizionali: Sebbene i tradizionali sistemi di gestione di database relazionali siano potenti, incontrano difficoltà nel soddisfare i requisiti di prestazione e scalabilità delle applicazioni moderne, in particolare per applicazioni che richiedono tempi di risposta sub-millisecondo e l'elaborazione di milioni di operazioni al secondo
  3. L'Ascesa dei Database NoSQL: I database NoSQL, in particolare gli archivi chiave-valore, superano queste sfide enfatizzando prestazione e scalabilità

Importanza della Ricerca

  • Valore Pratico: Fornisce orientamenti pratici agli architetti di sistema nella scelta di soluzioni di archiviazione chiave-valore appropriate
  • Valore Accademico: Colma il divario nella valutazione sistematica comparativa dei sistemi Redis, Aerospike e Dragonfly
  • Valore Tecnico: Rivela le caratteristiche di prestazione di ciascun sistema attraverso una valutazione sistematica con diversi modelli di carico di lavoro e livelli di concorrenza

Limitazioni della Ricerca Esistente

Sebbene questi sistemi siano ampiamente utilizzati, manca una ricerca comparativa completa che valuti sistematicamente le loro caratteristiche di prestazione sotto vari modelli di carico di lavoro e livelli di concorrenza.

Contributi Principali

  1. Confronto Completo delle Prestazioni: Fornisce un'analisi comparativa completa delle prestazioni includendo metriche di latenza e throughput
  2. Analisi delle Caratteristiche di Consumo di Memoria: Analizza in profondità i modelli di utilizzo della memoria e l'efficienza dei tre sistemi
  3. Valutazione Multi-Carico di Lavoro: Valutazione sistematica sotto tre tipi di carico di lavoro: lettura intensiva, scrittura intensiva e bilanciato
  4. Analisi di Scalabilità: Rivela le caratteristiche di espansione di ciascun sistema attraverso test con 1-32 client concorrenti
  5. Orientamenti Pratici: Fornisce indicazioni pratiche agli architetti di sistema per la scelta di soluzioni di archiviazione chiave-valore appropriate

Dettagli Metodologici

Panoramica dei Sistemi

Redis:

  • Archivio di strutture dati in memoria open source, sviluppato nel 2009
  • Architettura single-thread, che elimina complessi meccanismi di blocco ma limita la scalabilità su sistemi multi-core
  • Supporta molteplici strutture dati: stringhe, hash, liste, insiemi, insiemi ordinati, ecc.
  • Implementa la persistenza attraverso snapshot periodici o file append-only

Aerospike:

  • Database NoSQL distribuito, fondato nel 2009
  • Architettura di memoria ibrida: DRAM per l'archiviazione degli indici, SSD per l'archiviazione dei dati
  • Architettura shared-nothing, con ogni nodo che opera indipendentemente
  • Fornisce coerenza forte e failover automatico

Dragonfly:

  • Archivio dati in memoria lanciato nel 2022, come sostituto diretto di Redis
  • Architettura multi-thread e shared-nothing, in grado di sfruttare i core CPU multipli
  • Compatibile con il protocollo Redis
  • Implementa gestione della memoria complessa e strutture dati lock-free

Configurazione Sperimentale

Ambiente Hardware:

  • Sistema: Mac OS con chip Apple M3 Pro
  • Configurazione: 12 core, 36GB RAM, macOS Sequoia
  • Distribuzione: Utilizzo di container Docker per garantire ambienti coerenti e isolati

Framework di Benchmark:

  • Utilizzo di Yahoo! Cloud Serving Benchmark (YCSB)
  • Approccio a due fasi: fase di caricamento per popolare i dati iniziali, fase di esecuzione per eseguire le operazioni di benchmark
  • Livelli di concorrenza: 1, 2, 4, 8, 16, 32 client
  • Distribuzione della selezione delle chiavi: distribuzione Zipfian, che simula modelli di accesso non uniformi realistici

Configurazione del Carico di Lavoro

Carico di Lavoro Lettura Intensiva:

  • 95% operazioni di lettura, 5% operazioni di aggiornamento
  • 1KB di dati per record (10 campi, 100 byte ciascuno)
  • Caricamento di 1.474.560 record
  • Simula scenari di cache, sistemi di distribuzione di contenuti, ecc.

Carico di Lavoro Bilanciato:

  • 50% operazioni di lettura, 50% operazioni di aggiornamento
  • Stessa struttura di record da 1KB
  • Rappresenta modelli di accesso misto di piattaforme di social media, applicazioni collaborative, ecc.

Carico di Lavoro Scrittura Intensiva:

  • 10% operazioni di lettura, 90% operazioni di inserimento
  • Dati di serie temporali, 64 campi, 8 caratteri per campo
  • La fase di esecuzione esegue 2.949.120 operazioni di inserimento
  • Simula scenari di acquisizione dati ad alto throughput di applicazioni IoT, sistemi di monitoraggio, ecc.

Risultati Sperimentali

Prestazioni del Carico di Lavoro Lettura Intensiva

Aerospike Mostra le Prestazioni Migliori:

  • Latenza P99: 436ms (singolo client) a 2.979ms (32 client)
  • Throughput: 3.348 ops/s a 32.592 ops/s
  • Il vantaggio di prestazione deriva dall'architettura di memoria ibrida e dal design shared-nothing

Redis Mostra Prestazioni Medie:

  • Latenza P99: 862ms a 4.447ms
  • Throughput: 1.656 a 17.158 ops/s
  • L'architettura single-thread diventa un collo di bottiglia di prestazione ad alta concorrenza

Dragonfly Presenta la Latenza Più Alta:

  • Latenza P99: 1.137ms a 4.883ms
  • Throughput: 1.371 a 16.328 ops/s
  • L'overhead di coordinamento multi-thread compensa i vantaggi dell'elaborazione parallela

Prestazioni del Carico di Lavoro Bilanciato

La Gerarchia di Prestazione Rimane Coerente:

  • Aerospike: Latenza P99 441ms-2.409ms, throughput 3.372-33.741 ops/s
  • Redis: Latenza P99 874ms-4.017ms, throughput 1.664-17.004 ops/s
  • Dragonfly: Latenza P99 1.187ms-4.631ms, throughput 1.278-16.497 ops/s

Prestazioni del Carico di Lavoro Scrittura Intensiva

Tutti i Sistemi Mostrano le Migliori Prestazioni:

  • Aerospike: Latenza P99 410ms-2.233ms, throughput 3.562-34.896 ops/s
  • Redis: Latenza P99 808ms-3.547ms, throughput 1.757-17.170 ops/s
  • Dragonfly: Latenza P99 1.124ms-3.859ms, throughput 1.331-16.925 ops/s

Analisi del Consumo di Memoria

SistemaPrima dell'Esecuzione (MB)Dopo l'Esecuzione (MB)Fattore di Crescita
Redis36.32261072x
Aerospike232.1772.33.3x
Dragonfly58.98235040x

Scoperte Chiave:

  • Aerospike presenta la massima efficienza di memoria, grazie al modello di archiviazione ibrida
  • Redis presenta il massimo overhead di memoria, riflettendo le limitazioni dell'archiviazione in memoria su singolo nodo
  • Dragonfly si posiziona tra i due, con overhead aggiuntivo dovuto alle strutture di coordinamento multi-thread

Analisi di Scalabilità

Caratteristiche di Espansione del Throughput:

  • Aerospike: Espansione quasi lineare, miglioramento di 9-10x
  • Redis: Miglioramento di 10-11x, ma con crescita di latenza più significativa
  • Dragonfly: Miglioramento di 12-13x, ma con prestazioni baseline inferiori

Lavori Correlati

L'articolo cita molteplici ricerche correlate:

  1. Framework di Benchmark: Il framework YCSB di Cooper et al. (2010) ha stabilito le basi per il benchmark dei sistemi di servizio cloud
  2. Ricerche Comparative NoSQL: Confronto empirico degli archivi chiave-valore di Anthony & Rao
  3. Ricerche Specifiche di Sistema: Ricerca su Aerospike di Volminger (2021), analisi di Redis di Charan et al.
  4. Sviluppi Recenti: Valutazione NoSQL di carichi di lavoro OLAP di Mohan et al. (2024)

Conclusioni e Discussione

Conclusioni Principali

  1. Aerospike Guida Complessivamente: Mostra le migliori prestazioni sotto tutti i carichi di lavoro e livelli di concorrenza, con la migliore scalabilità di throughput e latenza relativamente bassa
  2. Redis Stabile e Affidabile: Mostra prestazioni stabili e prevedibili sotto tutti i modelli di carico di lavoro, ma è limitato dall'architettura single-thread
  3. Dragonfly: Potenziale e Sfide Coesistono: Sebbene moderno nel design, mostra prestazioni di latenza scadenti, con potenziale dimostrato in scenari di scrittura intensiva
  4. L'Impatto del Carico di Lavoro è Significativo: Tutti i database mostrano le migliori prestazioni in condizioni di scrittura intensiva

Orientamenti Pratici

  • Requisiti di Massima Prestazione: Scegliere Aerospike
  • Priorità della Semplicità Operativa: Redis è sufficiente per soddisfare i requisiti
  • Requisiti di Compatibilità Redis: Dragonfly è una scelta interessante, ma richiede una valutazione attenta per applicazioni sensibili alla latenza

Limitazioni

  1. Ambiente di Test Single-Machine: Tutti i test sono stati condotti su una singola macchina, non riflettendo pienamente i vantaggi dei sistemi distribuiti
  2. Condizioni di Rete Limitate: Non considera l'impatto della latenza di rete e delle partizioni sulle prestazioni
  3. Distribuzione Dati Singola: Utilizza solo la distribuzione Zipfian, mentre le applicazioni reali potrebbero avere modelli diversi
  4. Assenza di Modalità Cluster: Non testa scenari di distribuzione distribuita reale

Direzioni Future

  1. Test in Ambiente di Produzione: Valutare le prestazioni del sistema in condizioni di produzione reali
  2. Scenari Distribuiti: Testare la scalabilità distribuita reale in modalità cluster
  3. Ricerca sui Modelli di Coerenza: Impatto del teorema CAP sulla progettazione di ciascun sistema
  4. Meccanismi di Tolleranza ai Guasti: Valutazione dei meccanismi di tolleranza ai guasti durante i guasti dei nodi
  5. Replica Cross-Datacenter: Coerenza dei dati e latenza di replica sotto partizioni di rete

Valutazione Approfondita

Punti di Forza

  1. Metodologia Rigorosa: Utilizzo del framework YCSB standard garantisce un confronto equo
  2. Esperimenti Completi: Copertura di molteplici carichi di lavoro e livelli di concorrenza
  3. Analisi Approfondita: Fornisce non solo dati di prestazione, ma analizza anche le cause architettoniche
  4. Alto Valore Pratico: Fornisce orientamenti chiari per la scelta effettiva del sistema
  5. Scrittura Chiara: Struttura razionale, descrizioni tecniche accurate

Insufficienze

  1. Limitazioni Ambientali: L'ambiente Docker single-machine non può mostrare pienamente i vantaggi dei sistemi distribuiti
  2. Configurazione Singola: Non testa l'impatto di diversi parametri di configurazione sulle prestazioni
  3. Assenza di Persistenza: Manca una valutazione dettagliata dell'impatto dei meccanismi di persistenza sulle prestazioni
  4. Assenza di Analisi dei Costi: Non considera i costi hardware e la complessità operativa
  5. Stabilità a Lungo Termine: Mancano test di stabilità durante l'esecuzione prolungata

Impatto

  1. Valore Accademico: Fornisce un approccio sistematico alla ricerca sulle prestazioni dei database NoSQL
  2. Valore Pratico: Fornisce riferimenti per l'industria nella scelta di sistemi di archiviazione chiave-valore appropriati
  3. Contributo Metodologico: Dimostra come confrontare sistematicamente le prestazioni dei sistemi NoSQL
  4. Riproducibilità: La descrizione dettagliata della configurazione sperimentale facilita la riproduzione e l'estensione

Scenari Applicabili

  1. Selezione del Sistema: Fornisce riferimenti per progetti che necessitano di scegliere sistemi di archiviazione chiave-valore
  2. Ottimizzazione delle Prestazioni: Fornisce benchmark per l'ottimizzazione delle prestazioni del sistema esistente
  3. Progettazione dell'Architettura: Fornisce basi per la progettazione dell'architettura di sistemi distribuiti su larga scala
  4. Ricerca Accademica: Fornisce dati di base e riferimenti metodologici per la ricerca in campi correlati

Bibliografia

L'articolo cita molteplici riferimenti importanti, tra cui:

  • Cooper, B.F. et al. (2010). Benchmarking cloud serving systems with YCSB
  • Anthony, A., & Rao, Y. N. M. Memcached, Redis, and Aerospike Key-Value Stores Empirical Comparison
  • Mohan, R. K. et al. (2024). Evaluating NoSQL Databases for OLAP Workloads
  • Nonché documentazione ufficiale e materiali tecnici dei sistemi di database

Questo articolo fornisce un contributo prezioso al campo della valutazione delle prestazioni dei database NoSQL. Attraverso una progettazione sperimentale sistematica e un'analisi approfondita, fornisce riferimenti importanti per comprendere le caratteristiche di prestazione dei moderni sistemi di archiviazione chiave-valore e per scegliere soluzioni tecnologiche appropriate.