26,99 €
In modern applications, efficiency in both operational and analytical aspects is paramount, demanding predictable performance across varied workloads. This book introduces you to Redis Stack, an extension of Redis and guides you through its broad data modeling capabilities. With practical examples of real-time queries and searches, you’ll explore Redis Stack’s new approach to providing a rich data modeling experience all within the same database server.
You’ll learn how to model and search your data in the JSON and hash data types and work with features such as vector similarity search, which adds semantic search capabilities to your applications to search for similar texts, images, or audio files. The book also shows you how to use the probabilistic Bloom filters to efficiently resolve recurrent big data problems. As you uncover the strengths of Redis Stack as a data platform, you’ll explore use cases for managing database events and leveraging introduce stream processing features. Finally, you’ll see how Redis Stack seamlessly integrates into microservices architectures, completing the picture.
By the end of this book, you’ll be equipped with best practices for administering and managing the server, ensuring scalability, high availability, data integrity, stored functions, and more.
Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:
Veröffentlichungsjahr: 2023
Build real-time multi-model applications at any scale with Redis
Luigi Fugaro
Mirko Ortensi
Copyright © 2023 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Group Product Manager: Kaustubh Manglurkar
Publishing Product Manager: Heramb Bhavsar
Book Project Manager: Kirti Pisat
Content Development Editor: Manikandan Kurup
Technical Editor: Kavyashree K S
Copy Editor: Safis Editing
Proofreader: Safis Editing
Indexer: Rekha Nair
Production Designer: Alishon Mendonca
Senior DevRel Marketing Coordinator: Nivedita Singh
First published: December 2023
Production reference: 1151223
Published by Packt Publishing Ltd.
Grosvenor House
11 St Paul’s Square
Birmingham
B3 1RB, UK.
ISBN 978-1-83763-818-5
www.packtpub.com
Dedications are always tough. To mention or not to mention your beloved ones is the real dilemma. Unfortunately, this year I lost a special person in my life, so I decided to dedicate this book to him – Grazie Oscarino.
– Luigi Fugaro
Dedicated to Angela, my remarkable 101-year-old grandmother. Your enduring patience, infectious good humor, melodious singing voice, and quiet resilience have imparted invaluable life lessons. This book is a tribute to you.
– Mirko Ortensi
Luigi Fugaro’s computer science career began with a fascination for video games on the Vic 20 and Atari ST1040, where he enjoyed manipulating game code. This interest sparked his journey into programming, leading to a varied career in mastering numerous languages, including Fortran, Java, Go, Delphi, Visual Basic, and Python. While he is ambivalent about JavaScript and doesn’t consider HTML a programming language, he appreciates its utility.
Luigi’s career expanded into observability, monitoring, and data management, with significant experiences at Red Hat and Redis, where he understood the importance of application performance. Despite many side projects, most unfinished, Luigi’s notable contributions to literature reflect his enduring passion and drive for technology and innovation in computer science.
In the journey of crafting a book, a myriad of dynamics come into play, mirroring the numerous individuals who grace our daily lives. This holds particularly true for my family, including my children, Giada, Filippo, and Viola. I’ve borrowed time from them – moments that I couldn’t spend by their side. Yet, they are the spark that kindles my hope and fuels my drive to be better. For this gift, my gratitude and love for them knows no bounds.
Mirko Ortensi wrote his first lines of code on a Commodore 64 in Basic when he was 10. It was love at first sight. Eventually, he earned a degree in electronic engineering and a master’s degree in software engineering at Università Politecnica delle Marche in Italy in 2002, with a thesis about pattern recognition at UPC in Barcelona, Spain. Mirko’s career has spanned several roles in software and services businesses, encompassing development and testing, system management, and support, mainly centered around databases and distributed systems. As a senior technical enablement architect at Redis, Mirko shares technical knowledge about Redis’s products, services, and features.
I extend heartfelt thanks to my incredible family – my loving wife, children, and Gizmo the cat – for their unwavering patience and support during the countless hours I disappeared into the world of writing and coding. Your understanding and encouragement were my pillars throughout this journey.
Luigi and Mirko express their deep gratitude to everyone at Redis who contributed to this book. They extend special thanks to Alexandre Vasseur, David Maier, Tal Shkolnik, Raffaele Landoni, Cody Henshaw, Myra El-Bayoumi, Claudia Di Martino, and all the contributors to Redis open source. Additionally, they thank Packt for believing in this project, particularly Heramb Bhavsar, Kirti Pisat, and Manikandan Kurup for their support throughout Luigi and Mirko’s journey.
Sumit Shatwara, a solution architect, brings a wealth of expertise from his previous role at Redis, the global leader in real-time data platforms. At Redis, Sumit led the charge in designing and building cutting-edge, real-time data solutions, driving technology sales, and serving as a trusted advisor to enterprise clients within the banking, financial services, and digital native sectors. Sumit’s extensive career spans experiences with renowned companies such as Red Hat, NetApp, and Capgemini, where he facilitated the adoption of cloud-native technologies for numerous clients. Sumit’s future aspirations include becoming an artificial intelligence specialist and ultimately establishing himself as a thought leader in the realms of data and AI.
Redis Stack combines the core features of Redis with its most successful capabilities, offering a comprehensive understanding of Redis fundamentals and advanced functionalities. It distinguishes itself from Redis by its modular architecture, expanding its capabilities to serve as a document store, vector database, and time-series database. Redis Stack is versatile, functioning as an in-memory real-time cache, session store, leaderboard storage, and message broker. Its probabilistic data types enhance problem-solving efficiency, positioning it as a modern alternative to traditional relational databases for various applications.
The installation of Redis Stack is straightforward across popular operating systems such as Linux, macOS, and Windows, with native packages and Docker images available. To support developers, Redis Stack includes client libraries for major programming languages such as Python, Go, C#, Java, and JavaScript, along with the Redis OM framework for object mapping. This makes Redis Stack a user-friendly and adaptable solution for real-time data processing and management needs.
This part contains the following chapters:
Chapter 1, Introducing Redis StackChapter 2, Developing Modern Use Cases with Redis StackChapter 3, Getting Started with Redis StackChapter 4, Setting Up Client Libraries