<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Apache Cassandra on foojay.io - Friends Of OpenJDK</title><link>https://foojay.io/today/category/apache-cassandra/</link><description>Recent content in Apache Cassandra on foojay.io - Friends Of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 13 Nov 2025 08:43:29 +0000</lastBuildDate><atom:link href="https://foojay.io/today/category/apache-cassandra/index.xml" rel="self" type="application/rss+xml"/><item><title>Foojay Podcast #56: Vectors in Java Code, Databases, and LLMs</title><link>https://foojay.io/today/foojay-podcast-56/</link><pubDate>Mon, 08 Jul 2024 07:33:28 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-56/</guid><description>&lt;p&gt;In this Foojay podcast, we enter the world of mathematics by discussing Vectors and how they are crucial for AI and machine learning.&lt;/p&gt;&#10;&lt;p&gt;As ChatGPT explains: &lt;strong&gt;&amp;ldquo;A Vector is a mathematical structure that holds numerical values. Vectors are fundamental to the field of Artificial Intelligence, as they allow mathematical operations to be performed efficiently and form the basis of many machine learning algorithms.&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;OK, but&amp;hellip; how are these vectors crucial for the whole Artificial Intelligence evolution?&lt;/p&gt;</description></item><item><title>Released: JVector 1.0</title><link>https://foojay.io/today/jvector-1-0/</link><pubDate>Mon, 02 Oct 2023 12:36:20 +0000</pubDate><guid>https://foojay.io/today/jvector-1-0/</guid><description>&lt;p&gt;JVector is a pure Java embedded vector search engine that powers &lt;a href="https://www.datastax.com/products/datastax-astra" target="_blank" rel="noopener noreferrer"&gt;DataStax Astra&lt;/a&gt; and is being &lt;a href="https://issues.apache.org/jira/browse/CASSANDRA-18557" target="_blank" rel="noopener noreferrer"&gt;added to Apache Cassandra&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://hackernoon.com/how-llms-and-vector-search-have-revolutionized-building-ai-applications" target="_blank" rel="noopener noreferrer"&gt;Vector search is a critical part of today&amp;rsquo;s generative AI applications&lt;/a&gt;, allowing developers to quickly retrieve the most relevant context to give the large language model enough information to answer accurately and without hallucinating, but innovation in this space has mostly happened outside the Java ecosystem. JVector gives enterprises an easy way to capitalize on their investment in the powerful Java platform, and gives Java developers a state-of-the-art solution that is easy to embed in their applications.&lt;/p&gt;</description></item><item><title>Unified Event-Driven Architecture for the Cloud Native Enterprise</title><link>https://foojay.io/today/unified-event-driven-architecture-for-the-cloud-native-enterprise/</link><pubDate>Thu, 06 Oct 2022 19:58:06 +0000</pubDate><guid>https://foojay.io/today/unified-event-driven-architecture-for-the-cloud-native-enterprise/</guid><description>&lt;p&gt;CTOs and enterprise architects have long recognized the importance of event-driven architectures (EDA). While once considered purely a technology concern, the foresight of organizations that have invested in EDA has become readily apparent as the world has shifted around us. In the past decade, we&amp;rsquo;ve witnessed changes in nearly every aspect of our technological worlds, and the vast majority of those have been affected in some way by a move toward event-driven, real-time processing.&lt;/p&gt;</description></item><item><title>Reclaiming Persistent Volumes in Kubernetes</title><link>https://foojay.io/today/reclaiming-persistent-volumes-in-kubernetes/</link><pubDate>Wed, 28 Sep 2022 09:55:19 +0000</pubDate><guid>https://foojay.io/today/reclaiming-persistent-volumes-in-kubernetes/</guid><description>&lt;p&gt;&lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt; is a widely used open-source container management platform for running stateless, containerized applications at scale. In recent years, Kubernetes has been extended to also support stateful workloads, including databases and key-value stores.&lt;/p&gt;&#10;&lt;p&gt;There are three important API resources when it comes to managing stateful applications in Kubernetes:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/" target="_blank" rel="noopener noreferrer"&gt;StatefulSet&lt;/a&gt; (STS)&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes/" target="_blank" rel="noopener noreferrer"&gt;PersistentVolume&lt;/a&gt; (PV)&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/storage/storage-classes/" target="_blank" rel="noopener noreferrer"&gt;PersistentVolumeClaim&lt;/a&gt; (PVC)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;STSs schedule stateful pods, which can claim PVs through PVCs and mount them as volumes. Once a PV is claimed by an STS replica, Kubernetes will make sure that the volume stays with the replica, even if the pod gets rescheduled.&lt;/p&gt;</description></item><item><title>How the world caught up with Apache Cassandra</title><link>https://foojay.io/today/how-the-world-caught-up-with-apache-cassandra/</link><pubDate>Thu, 15 Sep 2022 16:50:50 +0000</pubDate><guid>https://foojay.io/today/how-the-world-caught-up-with-apache-cassandra/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/how-the-world-caught-up-with-apache-cassandra/hero-techcrunch.png" alt="" width="1024" height="683" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;The O&amp;rsquo;Reilly book, &lt;em&gt;Cassandra: The Definitive Guide,&lt;/em&gt; features a quote from Ray Kurzweil, the noted inventor and futurist:&lt;/p&gt;&#10;&lt;p&gt;&amp;ldquo;An invention has to make sense in the world in which it is finished, not the world in which it is started.&amp;rdquo;&lt;/p&gt;&#10;&lt;p&gt;This quote has a prophetic ring to it, especially considering my co-author Eben Hewitt included it in the 2010 first edition of this book we wrote, back when Apache Cassandra, the open-source, distributed, and highly scalable NoSQL database, was just on its 0.7 release.&lt;/p&gt;</description></item><item><title>Baeldung Series Part 2: Build a Dashboard With Cassandra, Astra and CQL – Mapping Event Data</title><link>https://foojay.io/today/baeldung-series-part-2-build-a-dashboard-with-cassandra-astra-and-cql-mapping-event-data/</link><pubDate>Tue, 13 Sep 2022 17:46:02 +0000</pubDate><guid>https://foojay.io/today/baeldung-series-part-2-build-a-dashboard-with-cassandra-astra-and-cql-mapping-event-data/</guid><description>&lt;h2 id="1-introduction"&gt;&lt;strong&gt;1. Introduction&lt;/strong&gt;&lt;/h2&gt;&#10;&lt;p&gt;In our &lt;a href="https://www.baeldung.com/cassandra-astra-rest-dashboard-updates" target="_blank" rel="noopener noreferrer"&gt;previous article&lt;/a&gt;, we looked at augmenting our dashboard to store and display individual events from the Avengers using &lt;a href="https://astra.dev/3DnYCl8" target="_blank" rel="noopener noreferrer"&gt;DataStax Astra&lt;/a&gt;, a serverless DBaaS powered by &lt;a href="https://cassandra.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt; using &lt;a href="https://stargate.io/?utm_medium=referral&amp;amp;utm_source=baeldung&amp;amp;utm_campaign=series-1-of-3&amp;amp;utm_content=avengers-dash-series-1" target="_blank" rel="noopener noreferrer"&gt;Stargate&lt;/a&gt; to offer additional APIs for working with it.&lt;/p&gt;&#10;&lt;p&gt;In this article, we will be making use of the exact same data in a different way. &lt;strong&gt;We are going to allow the user to select which of the Avengers to display, the time period of interest, and then display these events on an interactive map.&lt;/strong&gt; Unlike in the previous article, this will allow the user to see the data interacting with each other in both geography and time.&lt;/p&gt;</description></item><item><title>Multi-cluster Cassandra with Google Kubernetes Engine (Pt. 2)</title><link>https://foojay.io/today/multi-cluster-cassandra-deployment-with-google-kubernetes-engine-pt-2/</link><pubDate>Thu, 08 Sep 2022 17:20:08 +0000</pubDate><guid>https://foojay.io/today/multi-cluster-cassandra-deployment-with-google-kubernetes-engine-pt-2/</guid><description>&lt;p&gt;This is the second in a series of posts examining patterns for using K8ssandra to create Cassandra clusters with different deployment topologies.&lt;/p&gt;&#10;&lt;p&gt;In the &lt;a href="https://k8ssandra.io/blog/tutorials/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes/" target="_blank" rel="noopener noreferrer"&gt;first article&lt;/a&gt; in this series, we looked at how you could create a Cassandra cluster with two datacenters in a single cloud region, using separate Kubernetes namespaces in order to isolate workloads. For example, you might want to create a secondary Cassandra datacenter to isolate a read-heavy analytics workload from the datacenter supporting your main application.&lt;/p&gt;</description></item><item><title>Running your Database on OpenShift and CodeReady Containers</title><link>https://foojay.io/today/running-your-database-on-openshift-and-codeready-containers/</link><pubDate>Tue, 06 Sep 2022 09:43:57 +0000</pubDate><guid>https://foojay.io/today/running-your-database-on-openshift-and-codeready-containers/</guid><description>&lt;p&gt;Let&amp;rsquo;s take an introductory run-through of setting up your database on OpenShift, using your own hardware and RedHat&amp;rsquo;s CodeReady Containers.&lt;/p&gt;&#10;&lt;p&gt;CodeReady Containers is a great way to run OpenShift K8s locally, ideal for development and testing. The steps in this blog post will require a machine, laptop or desktop, of decent capability; preferably quad CPUs and 16GB+ RAM.&lt;/p&gt;&#10;&lt;h2 id="download-and-install-redhats-codeready-containers"&gt;Download and Install RedHat&amp;rsquo;s CodeReady Containers&lt;/h2&gt;&#10;&lt;p&gt;Download and install RedHat&amp;rsquo;s CodeReady Containers as described in &lt;a href="https://developers.redhat.com/blog/2019/09/05/red-hat-openshift-4-on-your-laptop-introducing-red-hat-codeready-containers" target="_blank" rel="noopener noreferrer"&gt;Red Hat OpenShift 4 on your laptop: Introducing Red Hat CodeReady Containers&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Deploy a Multi-Datacenter Cassandra Cluster in Kubernetes</title><link>https://foojay.io/today/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes-pt-1/</link><pubDate>Wed, 10 Aug 2022 08:27:59 +0000</pubDate><guid>https://foojay.io/today/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes-pt-1/</guid><description>&lt;p&gt;The &lt;a href="https://k8ssandra.io/get-started/" target="_blank" rel="noopener noreferrer"&gt;Get Started&lt;/a&gt; examples on the K8ssandra site are primarily concerned with spinning up a single Apache Cassandra datacenter in a single Kubernetes cluster.&lt;/p&gt;&#10;&lt;p&gt;However, there are many situations that can benefit from other deployment options.&lt;/p&gt;&#10;&lt;p&gt;In this series of articles, we&amp;rsquo;ll examine different deployment patterns and show how to implement them using K8ssandra.&lt;/p&gt;&#10;&lt;h2 id="flexible-topologies-with-cassandra"&gt;Flexible topologies with Cassandra&lt;/h2&gt;&#10;&lt;p&gt;From its earliest days, Cassandra has included the ability to assign nodes to datacenters and racks. A rack was originally conceived as mapping to a single rack of servers connected to shared resources, like power, network, and cooling.&lt;/p&gt;</description></item><item><title>Five Data Models for IoT: Managing the Latest IoT Events Based on a State in Apache Cassandra</title><link>https://foojay.io/today/five-data-models-for-iot-managing-the-latest-iot-events-based-on-a-state-in-apache-cassandra/</link><pubDate>Thu, 28 Jul 2022 17:36:28 +0000</pubDate><guid>https://foojay.io/today/five-data-models-for-iot-managing-the-latest-iot-events-based-on-a-state-in-apache-cassandra/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/five-data-models-for-iot-managing-the-latest-iot-events-based-on-a-state-in-apache-cassandra/shutterstock_1111260050-350x233-1.jpg" alt="" width="350" height="233" loading="lazy" decoding="async"&gt; © Shutterstock / everything possible&lt;/p&gt;&#10;&lt;p&gt;Apache Cassandra is a rock-solid choice for managing IoT and time series data at scale. The most popular use case of storing, querying and analyzing time series generated by IoT devices in Cassandra is well-understood and documented. In general, a time series is stored and queried based on its source IoT device. However, there exists another class of IoT applications that require quick access to the most recent data generated by a collection of IoT devices based on a known state. The question that such applications need to answer is: Which IoT devices or sensors are currently reporting a specific state? In this blog post, we focus on this question and provide five possible data modeling solutions to efficiently answer it in Cassandra.&lt;/p&gt;</description></item><item><title>NoSQL Use Cases: When to Use a Non-Relational Database</title><link>https://foojay.io/today/nosql-use-cases-when-to-use-a-non-relational-database/</link><pubDate>Thu, 28 Jul 2022 07:32:07 +0000</pubDate><guid>https://foojay.io/today/nosql-use-cases-when-to-use-a-non-relational-database/</guid><description>&lt;p&gt;For decades, many companies have relied on relational databases to store, protect, and access their data.&lt;/p&gt;&#10;&lt;p&gt;SQL databases, in particular, worked well for a long time and still do for many use cases. But, today, there is a wide range of situations where SQL databases can no longer satisfy the needs of modern enterprises, especially those that have made the move to the cloud.&lt;/p&gt;&#10;&lt;p&gt;Increasingly, these companies are turning to NoSQL databases to meet their goals.&lt;/p&gt;</description></item><item><title>Kubernetes and the Data Centre: Is Full Scale Migration Possible?</title><link>https://foojay.io/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/</link><pubDate>Thu, 21 Jul 2022 13:48:13 +0000</pubDate><guid>https://foojay.io/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/kubernetes-genric-169jpeg_51633.jpg" alt="" width="780" height="442" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;Data centres used to be exactly that - the centres of our data worlds, where all information, files and records would be kept and controlled.&lt;/p&gt;&#10;&lt;p&gt;Today, that is no longer the case. More companies are moving to cloud services, whether this is dialling down on their traditional on-premises environments or never setting them up in the first place.&lt;/p&gt;&#10;&lt;p&gt;This is not to say that data centres will be wholly abandoned for cloud, but the mix will continue to evolve and be very different to today. Gartner &lt;a href="https://www.gartner.com/smarterwithgartner/the-everywhere-enterprise-a-gartner-qa-with-david-cappuccio/" target="_blank" rel="noopener noreferrer"&gt;predicts&lt;/a&gt; that by 2025, 85% of infrastructure strategies will take a more hybrid approach, integrating on-premises, colocation, cloud and edge delivery options, compared with 20% in 2020.&lt;/p&gt;</description></item><item><title>Why a Cloud-Native Database Must Run on K8s</title><link>https://foojay.io/today/why-a-cloud-native-database-must-run-on-k8s/</link><pubDate>Tue, 19 Jul 2022 17:44:09 +0000</pubDate><guid>https://foojay.io/today/why-a-cloud-native-database-must-run-on-k8s/</guid><description>&lt;p&gt;We&amp;rsquo;ve been talking about migrating workloads to the cloud for a long time, but a look at the application portfolios of many IT organizations demonstrates that there&amp;rsquo;s still a lot of work to be done. In many cases, challenges with persisting and moving data in clouds continue to be the key limiting factor slowing cloud adoption, despite the fact that databases in the cloud have been available for years.&lt;/p&gt;&#10;&lt;p&gt;For this reason, there has been a surge of recent interest in data infrastructure that is designed to take maximum advantage of the benefits that cloud computing provides. A &lt;a href="https://k8ssandra.io/blog/2021/03/23/the-search-for-a-cloud-native-database/" target="_blank" rel="noopener noreferrer"&gt;cloud-native database&lt;/a&gt; is one that achieves the goals of scalability, elasticity, resiliency, observability and automation; the &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt; project is a great example. It packages Apache &lt;a href="https://containerjournal.com/?s=Cassandra" target="_blank" rel="noopener noreferrer"&gt;Cassandra&lt;/a&gt; and supporting tools into a production-ready Kubernetes deployment.&lt;/p&gt;</description></item><item><title>The End of the Beginning for Apache Cassandra</title><link>https://foojay.io/today/the-end-of-the-beginning-for-apache-cassandra/</link><pubDate>Tue, 12 Jul 2022 17:43:39 +0000</pubDate><guid>https://foojay.io/today/the-end-of-the-beginning-for-apache-cassandra/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/the-end-of-the-beginning-for-apache-cassandra/1_xslbFHC3hRapwGV_wj17vg-1024x663.jpeg" alt="" width="1024" height="663" loading="lazy" decoding="async"&gt; Image: &lt;a href="https://pixabay.com/photos/prairie-river-stream-curved-sunset-679014/" target="_blank" rel="noopener noreferrer"&gt;Pixabay&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;Editor&amp;rsquo;s note: This story originally ran on July 27, 2021, the day that Apache Cassandra 4.0 was released.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Today is a big day for those of us in the &lt;a href="https://cassandra.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt; community. After a long uphill climb, Apache Cassandra 4.0 has &lt;a href="https://thenewstack.io/apache-cassandra-4-0-comes-in-ready-for-production/" target="_blank" rel="noopener noreferrer"&gt;finally shipped&lt;/a&gt;. I say finally, because it has at times seemed like an elusive goal. I&amp;rsquo;ve been involved in the Cassandra project for almost 10 years now and I have seen a lot of ups and downs.&lt;/p&gt;</description></item><item><title>Available Now - gRPC for Apache Cassandra</title><link>https://foojay.io/today/available-now-grpc-for-apache-cassandra/</link><pubDate>Thu, 07 Jul 2022 07:38:47 +0000</pubDate><guid>https://foojay.io/today/available-now-grpc-for-apache-cassandra/</guid><description>&lt;p&gt;&lt;strong&gt;Build microservices easily with the NoSQL standard database&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;If you are like most developers, you are embracing applications built using microservices and a NoSQL database. There are many good reasons: faster time to market, lower total cost of ownership, better performance, less downtime, and easy scalability.&lt;/p&gt;&#10;&lt;p&gt;Creating cloud-native applications is hard because microservices are often written in different languages, database drivers have a maintenance burden, or familiar HTTP APIs lack the performance needed.&lt;/p&gt;</description></item><item><title>K8ssandra ramps up security features to match Kubernetes’ best practices</title><link>https://foojay.io/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/</link><pubDate>Thu, 23 Jun 2022 19:54:58 +0000</pubDate><guid>https://foojay.io/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/1_qz4yqblkLUoJDL3t8xrsSg-1024x478.jpeg" alt="" width="1024" height="478" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;New security features are coming to the open-source data platform: K8ssandra. The goal? To align even more with the security best practices of Kubernetes. Here&amp;rsquo;s an introduction to the platform&amp;rsquo;s security mission and an update on current initiatives.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;The security defaults applied by &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt; are about to get even more aligned with&lt;a href="https://kubernetes.io/docs/concepts/security/overview/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&amp;rsquo; security practices&lt;/a&gt;. In an upcoming release of K8ssandra, pod and container security configurations give users full customization capabilities and default values out of the box.&lt;/p&gt;</description></item><item><title>Data Modeling in Cassandra and Astra DB</title><link>https://foojay.io/today/data-modeling-in-cassandra-and-astra-db/</link><pubDate>Thu, 16 Jun 2022 19:22:05 +0000</pubDate><guid>https://foojay.io/today/data-modeling-in-cassandra-and-astra-db/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/data-modeling-in-cassandra-and-astra-db/0_90M63PeIIyDG3hj9-1024x581.png" alt="" width="1024" height="581" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;What does it take to build an efficient and sound data model for &lt;a href="https://cassandra.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;® and &lt;a href="https://astra.dev/3z6AFNd" target="_blank" rel="noopener noreferrer"&gt;DataStax Astra DB&lt;/a&gt;? Where would one start? Are there any data modeling rules to follow? Can it be done consistently time and time again? The answers to these and many other questions can be found in the Cassandra data modeling methodology.&lt;/p&gt;&#10;&lt;p&gt;In this post, we present a high-level overview of the data modeling methodology for Cassandra and &lt;a href="https://astra.dev/3z6AFNd" target="_blank" rel="noopener noreferrer"&gt;Astra DB&lt;/a&gt;, and share over half a dozen complete data modeling examples from various real-life domains. We apply the methodology to create Cassandra and Astra DB data models for IoT, messaging data, digital library, investment portfolio, time series, shopping cart, and order management. We even provide our datasets and queries for you to try.&lt;/p&gt;</description></item><item><title>Tombstones and Ghost Data Don’t Have to Be Scary!</title><link>https://foojay.io/today/tombstones-and-ghost-data-dont-have-to-be-scary/</link><pubDate>Thu, 09 Jun 2022 20:36:25 +0000</pubDate><guid>https://foojay.io/today/tombstones-and-ghost-data-dont-have-to-be-scary/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/tombstones-and-ghost-data-dont-have-to-be-scary/1_g5MhVmTyqdCWG_-LkItmNg-1024x679.jpeg" alt="" width="1024" height="679" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Working with tombstones can be one of the more frustrating aspects of Apache Cassandra®. Problems with tombstones can happen when a large number of deletes occur within a short period of time, resulting in slower queries and disk bloat. This article will discuss tombstones, including the purpose they serve, and strategies/methods on how to avoid them.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://cassandra.apache.org/doc/4.0/cassandra/operating/compaction/index.html#why-tombstones" target="_blank" rel="noopener noreferrer"&gt;Tombstones&lt;/a&gt; in &lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;&lt;em&gt;®&lt;/em&gt; are written markers that are created whenever a value is deleted. Their purpose is to indicate that any prior values have been deleted. When a read occurs, it pulls data from the sorted string table (SSTable) files on a node that may contain the data. All prior values for the requested key are returned, ordered by write-time.&lt;/p&gt;</description></item><item><title>Managing Distributed Applications in Kubernetes Using Cilium and Istio with Helm and Operator for Deployment</title><link>https://foojay.io/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/</link><pubDate>Tue, 07 Jun 2022 14:51:03 +0000</pubDate><guid>https://foojay.io/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/1_i26lEM7Wl5JA7FIMlhtKNA-1024x576.jpeg" alt="" width="1024" height="576" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;This post will show you the benefits of managing your distributed applications with Kubernetes in cross-cloud, multi-cloud, and hybrid cloud scenarios using Cilium and Istio with Helm and Operator for deployment.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;In our recent post on &lt;a href="https://thenewstack.io/taking-your-database-beyond-a-single-kubernetes-cluster/" target="_blank" rel="noopener noreferrer"&gt;The New Stack&lt;/a&gt;, we showed you how you can leverage &lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt; (K8s) and &lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;TM to manage distributed applications at scale, with thousands of nodes across both on-premises and in the cloud. In that example, we used &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt; and &lt;a href="https://cloud.google.com/" target="_blank" rel="noopener noreferrer"&gt;Google Cloud Platform&lt;/a&gt; (GCP) to illustrate some of the challenges you might expect to encounter as you grow into a multi-cloud environment, upgrade to another K8s version, or begin working with different distributions and complimentary tooling. In this post, we&amp;rsquo;ll explore a few alternative approaches to using K8s to help you more easily manage distributed applications.&lt;/p&gt;</description></item><item><title>How to Develop and Test an Automated CI/CD Workflow with Cassandra</title><link>https://foojay.io/today/how-to-develop-and-test-an-automated-ci-cd-workflow-with-cassandra/</link><pubDate>Fri, 03 Jun 2022 08:52:14 +0000</pubDate><guid>https://foojay.io/today/how-to-develop-and-test-an-automated-ci-cd-workflow-with-cassandra/</guid><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;In this post, we&amp;rsquo;ll show you how to develop a CI/CD workflow using Apache Cassandra&lt;/em&gt; ™&lt;em&gt;with a GitHub Actions runner. See for yourself how much time and effort you can save by deploying Cassandra cloud-natively while you test and deploy your cloud-native applications!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;If you have projects that depend on &lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;™ and you want to develop an automated continuous integration and continuous delivery (CI/CD) flow, you&amp;rsquo;re going to need to create Cassandra clusters dynamically for your tests to make sure that your app works after each code change. &lt;a href="https://www.datastax.com/" target="_blank" rel="noopener noreferrer"&gt;DataStax&lt;/a&gt; does this every day — we run Cassandra in &lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt; to power &lt;a href="https://astra.dev/38xbdFI" target="_blank" rel="noopener noreferrer"&gt;Astra DB&lt;/a&gt;. And, we use continuous testing of our Cassandra deployments to make sure Astra DB works reliably.&lt;/p&gt;</description></item><item><title>How DataStax Tracked Down a Linux Kernel Bug with Fallout</title><link>https://foojay.io/today/how-datastax-tracked-down-a-linux-kernel-bug-with-fallout/</link><pubDate>Thu, 02 Jun 2022 15:32:08 +0000</pubDate><guid>https://foojay.io/today/how-datastax-tracked-down-a-linux-kernel-bug-with-fallout/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/how-datastax-tracked-down-a-linux-kernel-bug-with-fallout/1_N_gqb3PrkKgMbJHSmYeOaw-1024x750.jpeg" alt="" width="1024" height="750" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;Sometimes as a developer, you run into a bug buried deep within the layers of your software stack. Chasing down the root cause requires not only curiosity, patience, and a healthy dose of tenacity but a willingness to try different tools and approaches. This post describes our challenges and ultimate success in tracking down a Linux kernel bug using Fallout.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Bugs come in all shapes and sizes and it&amp;rsquo;s not always clear at the beginning of a debugging session which one you&amp;rsquo;re currently chasing. Some bugs can be fixed up in a matter of minutes while others take weeks to nail down. And the really tricky ones require you to dig through multiple layers of your software stack, stressing the limits of your patience.&lt;/p&gt;</description></item><item><title>Optimizing Distributed Joins: The Case of Google Cloud Spanner and DataStax Astra DB</title><link>https://foojay.io/today/optimizing-distributed-joins-the-case-of-google-cloud-spanner-and-datastax-astra-db/</link><pubDate>Tue, 31 May 2022 16:25:25 +0000</pubDate><guid>https://foojay.io/today/optimizing-distributed-joins-the-case-of-google-cloud-spanner-and-datastax-astra-db/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/optimizing-distributed-joins-the-case-of-google-cloud-spanner-and-datastax-astra-db/0_6VGah2hwaLIBjW7R-1024x576.jpeg" alt="" width="1024" height="576" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;In this post, learn how relational and NoSQL databases, Google Cloud Spanner and DataStax Astra DB, optimize distributed joins for real-time applications.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Distributed joins are commonly considered to be too expensive to use for real-time transaction processing. That is because, besides joining data, they also frequently require moving or shuffling data between nodes in a cluster, which can significantly affect query response times and database throughput. However, there are certain optimizations that can completely eliminate the need to move data to enable faster joins. In this article, we first review the four types of distributed joins, including shuffle join, broadcast join, co-located join, and pre-computed join. We then demonstrate how leading fully managed Relational and NoSQL databases, namely &lt;a href="https://cloud.google.com/spanner" target="_blank" rel="noopener noreferrer"&gt;Google Cloud Spanner&lt;/a&gt; and &lt;a href="https://auth.cloud.datastax.com/auth/realms/CloudUsers/protocol/openid-connect/registrations?client_id=auth-proxy&amp;amp;response_type=code&amp;amp;scope=openid&amp;#43;profile&amp;#43;email&amp;amp;redirect_uri=https://astra.datastax.com/welcome" target="_blank" rel="noopener noreferrer"&gt;DataStax Astra DB&lt;/a&gt;, support optimized joins that are suitable for real-time applications.&lt;/p&gt;</description></item><item><title>Why Developers Should Use Apache Pulsar</title><link>https://foojay.io/today/why-developers-should-use-apache-pulsar/</link><pubDate>Thu, 19 May 2022 15:10:49 +0000</pubDate><guid>https://foojay.io/today/why-developers-should-use-apache-pulsar/</guid><description>&lt;p&gt;Apache Pulsar is an open source streaming platform that addresses some important limitations in Kafka, particularly for cloud-native applications.&lt;br&gt;&#10;&lt;img src="https://foojay.io/today/why-developers-should-use-apache-pulsar/data_explosion_proliferation_transmission_data_streams_volume_velocity_by_spainter_vfx_gettyimages-896319676_cso_2400x1600-100852889-large-1024x683.jpg" alt="" width="1024" height="683" loading="lazy" decoding="async"&gt; SPainter VFX / Getty Images&lt;/p&gt;&#10;&lt;p&gt;If you are building applications today, you are probably familiar with the microservices model: Rather than building big monolithic applications, we break services down into isolated components that we can independently update or change over time.&lt;/p&gt;&#10;&lt;p&gt;Microservices deployments then can use a message bus to decouple and manage the communication between services, which makes it easier to replay requests, handle errors, and deal with load spikes and rapid increases in requests while maintaining the serialized order.&lt;/p&gt;</description></item><item><title>Bring Streaming to Apache Cassandra with Apache Pulsar</title><link>https://foojay.io/today/bring-streaming-to-apache-cassandra-with-apache-pulsar/</link><pubDate>Thu, 05 May 2022 18:10:42 +0000</pubDate><guid>https://foojay.io/today/bring-streaming-to-apache-cassandra-with-apache-pulsar/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/bring-streaming-to-apache-cassandra-with-apache-pulsar/1_4VRCkVXi6RRfK4pwrJkPjw-1024x506.jpeg" alt="" width="1024" height="506" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;Twitch, YouTube, Instagram, Facebook — virtually every major brand nowadays uses live streaming to connect and engage their audience.&lt;/p&gt;&#10;&lt;p&gt;For enterprises and developers &lt;a href="https://datastax.medium.com/build-your-first-app-with-javascript-node-js-and-datastax-astra-db-573abc238583" target="_blank" rel="noopener noreferrer"&gt;building cloud-native applications&lt;/a&gt;, this growing trend creates a need for streaming technologies that can reliably handle the rush of massive amounts of data, while also being flexible and easy to manage for developers.&lt;/p&gt;&#10;&lt;p&gt;One such technology is &lt;a href="https://pulsar.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Pulsar&lt;/a&gt;&lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;®&lt;/a&gt; — an open-source, distributed messaging and streaming platform that&amp;rsquo;s easy to deploy, simple to scale, and packed with developer-friendly APIs.&lt;/p&gt;</description></item><item><title>SQL vs. NoSQL: Pros &amp; Cons</title><link>https://foojay.io/today/sql-vs-nosql-pros-cons-2/</link><pubDate>Thu, 21 Apr 2022 09:28:50 +0000</pubDate><guid>https://foojay.io/today/sql-vs-nosql-pros-cons-2/</guid><description>&lt;p&gt;What&amp;rsquo;s the best way to store, protect and access your data?&lt;/p&gt;&#10;&lt;p&gt;This is a fundamental, yet critical decision.&lt;/p&gt;&#10;&lt;p&gt;After all, data is the cornerstone of success for just about every modern organization.&lt;/p&gt;&#10;&lt;p&gt;For most companies, the choice comes down to SQL and NoSQL databases. Each has unique strengths and weaknesses.&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;SQL databases have been a proven option since the 1970s. They are made up of highly structured tables, consisting of rows and columns, related to one other through common attributes. Every column is required to have a value for its corresponding row.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;!-- --&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;NoSQL (&amp;ldquo;not only SQL&amp;rdquo; or &amp;ldquo;non-SQL&amp;rdquo;) databases came along later to break the relational table straitjacket, with the ability to store and access all data types, structured and unstructured, together.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;They&amp;rsquo;re extremely flexible and easy for developers to work with and modify. &lt;a href="https://www.datastax.com/what-is/nosql" target="_blank" rel="noopener noreferrer"&gt;Learn more about SQL and NoSQL databases and their basic differences&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Reaper 3.0 for Apache Cassandra is available</title><link>https://foojay.io/today/reaper-3-0-for-apache-cassandra-is-available/</link><pubDate>Fri, 18 Mar 2022 14:55:43 +0000</pubDate><guid>https://foojay.io/today/reaper-3-0-for-apache-cassandra-is-available/</guid><description>&lt;p&gt;The &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt; team is pleased to announce the release of &lt;a href="http://cassandra-reaper.io/" target="_blank" rel="noopener noreferrer"&gt;Reaper 3.1&lt;/a&gt;. Let&amp;rsquo;s dive into the features and improvements that 3.0 recently introduced (along with some notable removals) and how the newest update to 3.1 builds on that.&lt;/p&gt;&#10;&lt;h2 id="jdk11-support"&gt;JDK11 support&lt;/h2&gt;&#10;&lt;p&gt;Starting with 3.1.0, Reaper can now compile and run with jdk11. Note that jdk8 is still supported at runtime.&lt;/p&gt;&#10;&lt;h2 id="storage-backends"&gt;Storage backends&lt;/h2&gt;&#10;&lt;p&gt;Over the years, we regularly discussed dropping support for Postgres and H2 with the &lt;a href="https://thelastpickle.com/reaper.html" target="_blank" rel="noopener noreferrer"&gt;The Last Pickle&lt;/a&gt; (TLP) team, now part of &lt;a href="https://www.datastax.com/company" target="_blank" rel="noopener noreferrer"&gt;DataStax&lt;/a&gt;, the organization leading the open-source development of Reaper. Despite our lack of expertise in Postgres, the effort required to maintain support for these storage backends was moderate as long as Reaper&amp;rsquo;s architecture was simple. However, complexity grew with more deployment options, culminating with the addition of the sidecar mode.&lt;/p&gt;</description></item><item><title>Have you upgraded to Cassandra 4.0 yet?</title><link>https://foojay.io/today/have-you-upgraded-to-cassandra-4-0/</link><pubDate>Fri, 11 Mar 2022 08:35:20 +0000</pubDate><guid>https://foojay.io/today/have-you-upgraded-to-cassandra-4-0/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/have-you-upgraded-to-cassandra-4-0/shutterstock_140530141-350x233-1.jpg" alt="" width="350" height="233" loading="lazy" decoding="async"&gt; © Shutterstock / Phototribe&lt;/p&gt;&#10;&lt;p&gt;Alongside stability, Apache Cassandra 4.0 stands out for its ability to scale operations faster, its new auditing capabilities, and the way it embraces privacy by design. In this article, we&amp;rsquo;ll cover the new features and walk you through the steps required to upgrade to Cassandra 4.0.&lt;/p&gt;&#10;&lt;p&gt;The general availability of Apache Cassandra 4.0 marks the most stable release in the project&amp;rsquo;s history.&lt;/p&gt;&#10;&lt;p&gt;Even with the 4.0 beta 1 release back in July 2020, Project Management Committee (PMC) members were confident the latest version of the distributed NoSQL database would be ready to go to work with Apache Cassandra Committer; PMC member Sankalp Kohli at the time indicated that &amp;ldquo;users will be able to use the release knowing it is production-ready on day one.&amp;rdquo;&lt;/p&gt;</description></item><item><title>The Serverless Database You Really Want</title><link>https://foojay.io/today/the-serverless-database-you-really-want/</link><pubDate>Thu, 03 Mar 2022 20:43:05 +0000</pubDate><guid>https://foojay.io/today/the-serverless-database-you-really-want/</guid><description>&lt;p&gt;The dreaded part of every site reliability engineer&amp;rsquo;s (SRE) job eventually: capacity planning. You know, the dance between all the stakeholders when deploying your applications. Did engineering really simulate the right load and do we understand how the application scales? Did product managers accurately estimate the amount of usage? Did we make architectural decisions that will keep us from meeting our SLA goals? And then the question that everyone will have to answer eventually: how much is this going to cost? This forces SREs to assume the roles of engineer, accountant and fortune teller.&lt;/p&gt;</description></item><item><title>Why Pulsar Beats Kafka for a Scalable, Distributed Data Architecture</title><link>https://foojay.io/today/why-pulsar-beats-kafka-for-a-scalable-distributed-data-architecture/</link><pubDate>Thu, 03 Mar 2022 14:10:45 +0000</pubDate><guid>https://foojay.io/today/why-pulsar-beats-kafka-for-a-scalable-distributed-data-architecture/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/why-pulsar-beats-kafka-for-a-scalable-distributed-data-architecture/shutterstock_1009002379-350x233-1.jpg" alt="" width="350" height="233" loading="lazy" decoding="async"&gt; © Shutterstock / Jurik Peter&lt;/p&gt;&#10;&lt;p&gt;The leading open source event streaming platforms are Apache Kafka and Apache Pulsar. For enterprise architects and application developers, choosing the right event streaming approach is critical, as these technologies will help their apps scale up around data to support operations in production.&lt;/p&gt;&#10;&lt;p&gt;Everyone wants results faster. We want applications that know what we want, even before we know ourselves. We want systems that constantly check for fraud or security issues to protect our data. We want applications that are smart enough to react and change plans when faced with the unexpected. And we want those services to be continuously available.&lt;/p&gt;</description></item><item><title>Save Hours on your Setup of K8ssandra with the New Config Builder</title><link>https://foojay.io/today/save-hours-on-your-setup-of-k8ssandra-with-the-new-config-builder/</link><pubDate>Thu, 24 Feb 2022 19:36:47 +0000</pubDate><guid>https://foojay.io/today/save-hours-on-your-setup-of-k8ssandra-with-the-new-config-builder/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Setting up K8ssandra in your workflow just got a whole lot easier. With the new Config Builder you can be running Apache Cassandra® on Kubernetes in a matter of minutes.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;The purpose of K8ssandra is to make it easy to run Apache Cassandra® on Kubernetes. We recently took another big step in that direction by releasing the &lt;a href="https://dtsx.io/3pIiPcR" target="_blank" rel="noopener noreferrer"&gt;K8ssandra config builder&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Even if you&amp;rsquo;ve created thousands of nodes or integrated K8ssandra in your stack, you&amp;rsquo;ll probably want to give the config builder a try. Walk through the interactive wizard defining the shape of your cluster, resource requirements, and toggle features to fit your needs. This is great for smoothing out the on-ramp for a production ready environment of K8ssandra.&lt;/p&gt;</description></item></channel></rss>