blob: 0ee47cf5607c6fa1c4377d2223e6e0c2c63e2369 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>Apache Cassandra | Apache Cassandra Documentation</title>
<link rel="stylesheet" href="../../assets/css/site.css">
<meta name="description" content="The Apache Cassandra Community">
<link rel="schema.dcterms" href="https://purl.org/dc/terms/">
<meta name="dcterms.subject" content="_">
<meta name="dcterms.identifier" content="master">
<meta name="generator" content="Antora 2.3.4">
<link rel="icon" href="../../assets/img/favicon.ico" type="image/x-icon">
<script>
const script = document.createElement("script");
const domain = window.location.hostname;
script.type = "text/javascript";
script.src = "https://plausible.cassandra.apache.org/js/plausible.js";
script.setAttribute("data-domain",domain);
script.setAttribute("defer",'true');
script.setAttribute("async",'true');
document.getElementsByTagName("head")[0].appendChild(script);
</script> </head>
<body class="single-post">
<div class="container mx-auto relative">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<meta property="og:type" content="website" />
<meta property="og:description" content="" />
<meta property="og:url" content="/" />
<meta property="og:site_name" content="Apache Cassandra" />
<header id="top-nav">
<div class="inner relative">
<div class="header-social-icons text-right">
<a href="https://twitter.com/cassandra?lang=en" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a>
<a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a>
<a href="https://www.youtube.com/c/PlanetCassandra" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a>
</div>
<div class="cf">
<div class="logo left"><a href="/"><img src="../../assets/img/logo-white-r.png" alt="cassandra logo"></a></div>
<div class="mobile-nav-icon right">
<img class="toggle-icon" src="../../assets/img/hamburger-nav.svg">
</div>
<ul class="main-nav nav-links right flex flex-vert-center flex-space-between">
<li>
<a class="nav-link hide-mobile">Get Started</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/cassandra-basics.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-basics.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Cassandra Basics
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/quickstart.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-rocket.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Quickstart
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/ecosystem.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-ecosystem.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Ecosystem
</div>
</a>
</li>
</ul>
</li>
<li><a class="nav-link" href="/doc/latest/">Documentation</a></li>
<li>
<a class="nav-link" href="/_/community.html">Community</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/community.html#code-of-conduct">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-welcome.png" alt="welcome icon">
</div>
<div class="sub-nav-text teal py-small">
Welcome
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#discussions">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-discussions.png" alt="discussions icon">
</div>
<div class="sub-nav-text teal py-small">
Discussions
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#project-governance">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-governance.png" alt="Governance icon">
</div>
<div class="sub-nav-text teal py-small">
Governance
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#how-to-contribute">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-contribute.png" alt="Contribute icon">
</div>
<div class="sub-nav-text teal py-small">
Contribute
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#meet-the-community">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-community.png" alt="Meet the Community icon">
</div>
<div class="sub-nav-text teal py-small">
Meet the Community
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/cassandra-catalyst-program.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-catalyst.png" alt="Catalyst icon">
</div>
<div class="sub-nav-text teal py-small">
Catalyst Program
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/events.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-events.png" alt="Events icon">
</div>
<div class="sub-nav-text teal py-small">
Events
</div>
</a>
</li>
</ul>
</li>
<li>
<a class="nav-link hide-mobile">Learn</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/Apache-Cassandra-5.0-Moving-Toward-an-AI-Driven-Future.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-basics.png" alt="Basics icon">
</div>
<div class="sub-nav-text teal py-small">
Cassandra 5.0
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/case-studies.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-case-study.png" alt="Case Studies icon">
</div>
<div class="sub-nav-text teal py-small">
Case Studies
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/resources.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-resources.png" alt="Resources icon">
</div>
<div class="sub-nav-text teal py-small">
Resources
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/blog.html">
<div class="sub-nav-icon">
<img src="../../assets/img/sub-menu-blog.png" alt="Blog icon">
</div>
<div class="sub-nav-text teal py-small">
Blog
</div>
</a>
</li>
</ul>
</li>
<li><a class="nav-link btn btn--filled" href="/_/download.html">Download Now</a></li>
</ul>
</div>
</div>
</header>
<div class="hero hero--home grad">
<div class="eye"></div>
<div id="home-content" class="text-center flex flex-center flex-column relative z2 ma-xlarge">
<h1>Apache Cassandra Changelog #2</h1>
<h3>December 01, 2020 | The Apache Cassandra Community</h3>
</div>
</div>
<div id="blog-post" class="flex-center py-large arrow">
<div class="blog-breadcrumb mb-medium">
<div class="inner inner--narrow">
<a href="/_/blog.html">« Back to the Apache Cassandra Blog</a>
</div>
</div>
<div class="post-content">
<div class="inner inner--narrow">
<div id="preamble">
<div class="sectionbody">
<div class="imageblock">
<div class="content">
<img src="../_images/blog/changelog_header.jpg" alt="Apache Cassandra Changelog">
</div>
</div>
<div class="paragraph">
<p>Our monthly roundup of key activities and knowledge to keep the community informed.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="release-notes"><a class="anchor" href="#release-notes"></a>Release Notes</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="released"><a class="anchor" href="#released"></a>Released</h3>
<div class="paragraph">
<p>Apache #Cassandra 4.0-beta3, 3.11.9, 3.0.23, and 2.2.19 were released on November 4 and are <a href="../download.html" class="page" target="_blank" rel="noopener">in the repositories</a>. Please pay attention to release notes and let the community know if you encounter problems.</p>
</div>
<div class="paragraph">
<p>Join the Cassandra <a href="../community.html#discussions" class="page">mailing list</a> to stay updated.</p>
</div>
</div>
<div class="sect2">
<h3 id="changed"><a class="anchor" href="#changed"></a>Changed</h3>
<div class="paragraph">
<p>Cassandra 4.0 is progressing toward GA. There are 1,390 total tickets and remaining tickets represent 5.5% of total scope. Read the <a href="https://lists.apache.org/thread.html/r9c6cc19f67d3259e64abbe2b960b8914476d9bfa2463d57c6d5cc44b%40%3Cdev.cassandra.apache.org%3E" target="_blank" rel="noopener">full summary</a> shared to the dev mailing list and take a look at the <a href="https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=355&amp;quickFilter=1661&amp;quickFilter=1658" target="_blank" rel="noopener">open tickets</a> that need reviewers.</p>
</div>
<div class="paragraph">
<p>Cassandra 4.0 will be dropping support for older distributions of CentOS 5, Debian 4, and Ubuntu 7.10. <a href="https://lists.apache.org/thread.html/r513c507ef19a8524ad5389e548f3d5bbfeb9e7747f3ae4c57ec27329%40%3Cdev.cassandra.apache.org%3E" target="_blank" rel="noopener">Learn more</a>.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="community-notes"><a class="anchor" href="#community-notes"></a>Community Notes</h2>
<div class="sectionbody">
<div class="paragraph">
<p><em>Updates on Cassandra Enhancement Proposals (CEPs), how to contribute, and other community activities.</em></p>
</div>
<div class="sect2">
<h3 id="added"><a class="anchor" href="#added"></a>Added</h3>
<div class="paragraph">
<p>The community weighed options to address reads inconsistencies for Compact Storage as noted in ticket <a href="https://issues.apache.org/jira/browse/CASSANDRA-16217" target="_blank" rel="noopener">CASSANDRA-16217</a> (committed). The conversation continues in ticket <a href="https://issues.apache.org/jira/browse/CASSANDRA-16226" target="_blank" rel="noopener">CASSANDRA-16226</a> with the aim of ensuring there are no huge performance regressions for common queries when you upgrade from 2.x to 3.0 with Compact Storage tables or drop it from a table on 3.0+.</p>
</div>
</div>
<div class="sect2">
<h3 id="added-2"><a class="anchor" href="#added-2"></a>Added</h3>
<div class="paragraph">
<p><a href="https://issues.apache.org/jira/browse/CASSANDRA-16222" target="_blank" rel="noopener">CASSANDRA-16222</a> is a Spark library that can compact and read raw Cassandra SSTables into SparkSQL. By reading the sstables directly from a snapshot directory, one can achieve high performance with minimal impact to a production cluster. It was used to successfully export a 32TB Cassandra table (46bn CQL rows) to HDFS in Parquet format in around 70 minutes, a 20x improvement on previous solutions.</p>
</div>
</div>
<div class="sect2">
<h3 id="changed-2"><a class="anchor" href="#changed-2"></a>Changed</h3>
<div class="paragraph">
<p>Great news for <a href="https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-2+Kubernetes+Operator" target="_blank" rel="noopener">CEP-2: Kubernetes Operator</a>, the community has agreed to <a href="https://lists.apache.org/thread.html/r9e1ff94d7b35cfc663bfa72d4ed3767e963e890f9e1199bfdb96bff0%40%3Cdev.cassandra.apache.org%3E" target="_blank" rel="noopener">create a community-based operator</a> by merging the cass-operator and CassKop. The work being done can be viewed on GitHub <a href="https://github.com/datastax/cass-operator" target="_blank" rel="noopener">here</a>.</p>
</div>
</div>
<div class="sect2">
<h3 id="released-2"><a class="anchor" href="#released-2"></a>Released</h3>
<div class="paragraph">
<p>The Reaper community <a href="https://thelastpickle.com/blog/2020/10/26/reaper-2_1-released-with-astra-support.html" target="_blank" rel="noopener">announced v2.1</a> of its tool that schedules and orchestrates repairs of Apache Cassandra clusters. Read the <a href="http://cassandra-reaper.io/docs/" target="_blank" rel="noopener">docs</a>.</p>
</div>
</div>
<div class="sect2">
<h3 id="released-3"><a class="anchor" href="#released-3"></a>Released</h3>
<div class="paragraph">
<p>Apache Cassandra 4.0-beta-1 was <a href="https://lists.apache.org/thread.html/r040f39dcc038d607c0cc36731150ce8ecb67d7399304db97e7f8b38b%40%3Cuser.cassandra.apache.org%3E" target="_blank" rel="noopener">released on FreeBSD</a>.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="user-space"><a class="anchor" href="#user-space"></a>User Space</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="netflix"><a class="anchor" href="#netflix"></a>Netflix</h3>
<div class="paragraph">
<p>“With these optimized Cassandra clusters in place, it now costs us 71% less to operate clusters and we could store 35x more data than our previous configuration.” - <a href="https://netflixtechblog.com/building-netflixs-distributed-tracing-infrastructure-bb856c319304" target="_blank" rel="noopener">Maulik Pandey</a></p>
</div>
</div>
<div class="sect2">
<h3 id="yelp"><a class="anchor" href="#yelp"></a>Yelp</h3>
<div class="paragraph">
<p>“Cassandra is a distributed wide-column NoSQL datastore and is used at Yelp for both primary and derived data. Yelp’s infrastructure for Cassandra has been deployed on AWS EC2 and ASG (Autoscaling Group) for a while now. Each Cassandra cluster in production spans multiple AWS regions.” - <a href="https://engineeringblog.yelp.com/2020/11/orchestrating-cassandra-on-kubernetes-with-operators.html" target="_blank" rel="noopener">Raghavendra D Prabhu</a></p>
</div>
<div class="paragraph">
<p><em>Do you have a Cassandra case study to share? Email <a href="mailto:cassandra@constantia.io">cassandra@constantia.io</a></em>.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="in-the-news"><a class="anchor" href="#in-the-news"></a>In the News</h2>
<div class="sectionbody">
<div class="paragraph">
<p>DevPro Journal: <a href="https://www.devprojournal.com/technology-trends/open-source/whats-included-in-the-cassandra-4-0-release/" target="_blank" rel="noopener">What’s included in the Cassandra 4.0 Release?</a></p>
</div>
<div class="paragraph">
<p>JAXenter: <a href="https://jaxenter.com/cloud-native-cassandra-172909.html" target="_blank" rel="noopener">Moving to cloud-native applications and data with Kubernetes and Apache Cassandra</a></p>
</div>
<div class="paragraph">
<p>DZone: <a href="https://dzone.com/articles/improving-apache-cassandras-front-door-and-backpre" target="_blank" rel="noopener">Improving Apache Cassandra’s Front Door and Backpressure</a></p>
</div>
<div class="paragraph">
<p>ApacheCon: <a href="https://www.youtube.com/watch?v=rjCVqjLRALo" target="_blank" rel="noopener">Building Apache Cassandra 4.0: behind the scenes</a></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="cassandra-tutorials-more"><a class="anchor" href="#cassandra-tutorials-more"></a>Cassandra Tutorials &amp; More</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Users in search of a tool for scheduling backups and performing restores with cloud storage support (archiving to AWS S3, GCS, etc) should consider <a href="https://github.com/thelastpickle/cassandra-medusa/wiki" target="_blank" rel="noopener">Cassandra Medusa</a>.</p>
</div>
<div class="paragraph">
<p><a href="https://blog.mayadata.io/apache-cassandra-deployment-on-openebs-and-monitoring-on-kubera" target="_blank" rel="noopener">Apache Cassandra Deployment on OpenEBS and Monitoring on Kubera</a> - Abhishek Raj, MayaData</p>
</div>
<div class="paragraph">
<p><a href="https://www.youtube.com/watch?v=Z0NXWmZAB8s" target="_blank" rel="noopener">Lucene Based Indexes on Cassandra</a> - Rahul Singh, Anant</p>
</div>
<div class="paragraph">
<p><a href="https://www.youtube.com/watch?v=8QV2Mc-1s64" target="_blank" rel="noopener">How Netflix Manages Version Upgrades of Cassandra at Scale</a> - Sumanth Pasupuleti, Netflix</p>
</div>
<div class="paragraph">
<p><a href="https://thelastpickle.com/blog/2020/11/25/impacts-of-many-tables-on-cassandra.html" target="_blank" rel="noopener">Impacts of many tables in a Cassandra data model</a> - Alex Dejanovski, The Last Pickle</p>
</div>
<div class="paragraph">
<p><a href="https://www.youtube.com/watch?v=eTUXQS7RUQw&amp;list=PLU2OcwpQkYCy_awEe5xwlxGTk5UieA37m&amp;index=181" target="_blank" rel="noopener">Cassandra Upgrade in production : Strategies and Best Practices</a> - Laxmikant Upadhyay, American Express</p>
</div>
<div class="paragraph">
<p><a href="https://medium.com/@jeromatron/apache-cassandra-collections-and-tombstones-a45315e97cbc" target="_blank" rel="noopener">Apache Cassandra Collections and Tombstones</a> - Jeremy Hanna</p>
</div>
<div class="paragraph">
<p><a href="https://itnext.io/spark-cassandra-all-you-need-to-know-tips-and-optimizations-d3810cc0bd4e" target="_blank" rel="noopener">Spark + Cassandra</a> - Javier Ramos, ITNext</p>
</div>
<div class="paragraph">
<p><a href="https://www.techrepublic.com/article/how-to-install-the-apache-cassandra-nosql-database-server-on-ubuntu-20-04/" target="_blank" rel="noopener">How to install the Apache Cassandra NoSQL database server on Ubuntu 20.04</a> - Jack Wallen, TechRepublic</p>
</div>
<div class="paragraph">
<p><a href="https://sindhumurugavel.medium.com/how-to-deploy-cassandra-on-openshift-and-open-it-up-to-remote-connections-c7783861b868" target="_blank" rel="noopener">How to deploy Cassandra on Openshift and open it up to remote connections</a> - Sindhu Murugavel</p>
</div>
<div class="imageblock">
<div class="content">
<a class="image" href="/_/community.html"><img src="../_images/blog/changelog_footer.jpg" alt="changelog footer"></a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="grad grad--two flex-center pb-xlarge">
<div class="inner text-center z2 relative">
<h2 class="white py-small">Get started with Cassandra, fast.</h2>
<a id="footer-cta" href="/_/quickstart.html" class="btn btn--filled ma-medium">Quickstart Guide</a>
</div>
<div class="inner flex flex-distribute-items mt-xlarge z2 relative">
<div class="col-2">
<div id="footer-logo" class="logo logo--footer mb-medium"><img src="../../assets/img/logo-white-r.png" alt="Cassandra Logo"></div>
<p>Apache Cassandra<img src="../../assets/img/registered.svg" alt="®" style="width:18px;"> powers mission-critical deployments with improved performance and unparalleled levels of scale in the cloud.</p>
<div class="footer-social-icons">
<a href="https://twitter.com/cassandra?lang=en" target="_blank"><img src="../../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a>
<a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank"><img src="../../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a>
<a href="https://www.youtube.com/c/PlanetCassandra" target="_blank"><img src="../../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a>
</div>
</div>
<div class="col-2 flex flex-center">
<ul class="columns-2">
<li class="mb-small"><a href="/">Home</a></li>
<li class="mb-small"><a href="/_/cassandra-basics.html">Cassandra Basics</a></li>
<li class="mb-small"><a href="/_/quickstart.html">Quickstart</a></li>
<li class="mb-small"><a href="/_/ecosystem.html">Ecosystem</a></li>
<li class="mb-small"><a href="/doc/latest/">Documentation</a></li>
<li class="mb-small"><a href="/_/community.html">Community</a></li>
<li class="mb-small"><a href="/_/case-studies.html">Case Studies</a></li>
<li class="mb-small"><a href="/_/resources.html">Resources</a></li>
<li class="mb-small"><a href="/_/blog.html">Blog</a></li>
</ul>
</div>
</div>
</footer>
<div class="lower-footer bg-white pa-medium">
<div class="flex flex-row flex-vert-center">
<div class="pr-medium"><img src="../../assets/img//feather-small.png" alt="ASF" width="20"></div>
<div class="pr-medium"><a href="http://www.apache.org/" target="_blank">Foundation</a></div>
<div class="pr-medium"><a href="https://www.apache.org/events/current-event.html" target="_blank">Events</a></div>
<div class="pr-medium"><a href="https://www.apache.org/licenses/" target="_blank">License</a></div>
<div class="pr-medium"><a href="https://www.apache.org/foundation/thanks" target="_blank">Thanks</a></div>
<div class="pr-medium"><a href="https://www.apache.org/security" target="_blank">Security</a></div>
<div class="pr-medium"><a href="https://privacy.apache.org/policies/privacy-policy-public.html" target="_blank">Privacy</a></div>
<div class="pr-medium"><a href="https://www.apache.org/foundation/sponsorship" target="_blank">Sponsorship</a></div>
</div>
<p class="my-medium">© 2009-<script>document.write(new Date().getFullYear())</script> <a href="https://apache.org" target="_blank">The Apache Software Foundation</a> under the terms of the Apache License 2.0. Apache, the Apache feather logo, Apache Cassandra, Cassandra, and the Cassandra logo, are either registered trademarks or trademarks of The Apache Software Foundation.</p>
</div>
<div id="fade" class="hidden"></div>
<div id="modal" class="hidden">
<div id="close-modal" class="cursor-pointer"><svg viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></div>
<div id="mod-content" class="vid-mod-content resp-container"></div>
</div>
<script>
jQuery(function(){
var windowW = $(window).width();
$(document)
.on('click','.mobile-nav-icon',function(){
$('.main-nav').fadeIn();
})
.on('click','.main-nav',function(){
if(windowW <= 1000){
$(this).fadeOut();
}
})
.on('click','#version-toggle',function(){
$(this).toggleClass('active');
$(this).next().fadeToggle();
})
.on('click','#mobile-docs-nav-burger', function(){
$(this).toggleClass('active');
$('.docs-nav').toggleClass('active');
});
var url = window.location.pathname;
var isQuickstart = url.includes('quickstart.html');
if(isQuickstart){
var footerCTA = document.getElementById('footer-cta');
footerCTA.innerHTML = 'Get latest updates';
footerCTA.setAttribute('href', '/_/blog.html');
}
});
</script>
</div>
</body>
<script>
jQuery(function(){
});
</script>
</html>