<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Aerospike</title>
    <description>The latest articles on Forem by Aerospike (@aerospikedb).</description>
    <link>https://forem.com/aerospikedb</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F313092%2Fe76ed765-4742-498f-a6b7-604f484ec744.jpg</url>
      <title>Forem: Aerospike</title>
      <link>https://forem.com/aerospikedb</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/aerospikedb"/>
    <language>en</language>
    <item>
      <title>Introducing Aerospike Graph Database 3.0: Faster, simpler, and built for the terabyte scale era</title>
      <dc:creator>Aerospike</dc:creator>
      <pubDate>Tue, 29 Jul 2025 20:49:32 +0000</pubDate>
      <link>https://forem.com/aerospike/introducing-aerospike-graph-database-30-faster-simpler-and-built-for-the-terabyte-scale-era-4g2l</link>
      <guid>https://forem.com/aerospike/introducing-aerospike-graph-database-30-faster-simpler-and-built-for-the-terabyte-scale-era-4g2l</guid>
      <description>&lt;p&gt;&lt;em&gt;Discover Aerospike Graph 3.0, built for billion-scale speed, ease, and cost-efficiency in fraud, identity, and personalization graph workloads.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author&lt;/strong&gt;: Ishaan Biswas, Director of Product Management - Graph&lt;/p&gt;




&lt;p&gt;Today, we’re announcing the release of &lt;a href="https://aerospike.com/products/graph-database/" rel="noopener noreferrer"&gt;Aerospike Graph Database 3.0&lt;/a&gt;, bringing major improvements across the three dimensions that matter most: &lt;strong&gt;developer ease&lt;/strong&gt; with multi-property and native datetime support, &lt;strong&gt;10x faster ingest performance, and up to 50% better cost efficiency&lt;/strong&gt; through reduced storage footprint. Built for teams managing the most demanding graph workloads in identity resolution, fraud prevention, and real-time personalization, Aerospike Graph Database 3.0 is our biggest step forward in making high-scale, graph data fast, accessible, and affordable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Easier to develop
&lt;/h2&gt;

&lt;p&gt;Aerospike Graph Database 3.0 introduces two key capabilities that make modeling and querying graph data more natural and powerful:&lt;/p&gt;

&lt;h3&gt;
  
  
  Multi-property support
&lt;/h3&gt;

&lt;p&gt;Vertices can now store multiple values under the same property key. This simplifies how you can model complex signal relationships, such as multiple timestamps, scores, or segments, without complex workarounds or nested structures.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example: Store multiple tags on a user vertex&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;g.addV('User')&lt;br&gt;
.property('T.id', 'user-123')&lt;br&gt;
.property(VertexProperty.Cardinality.list, 'tag', 'frequent-buyer')&lt;br&gt;
.property(VertexProperty.Cardinality.list, 'tag', 'mobile-user')&lt;br&gt;
.property(VertexProperty.Cardinality.list, 'tag', 'high-LTV')&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Query all tags for the user&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;g.V().has('id', 'user-123').values('tag')&lt;br&gt;
// Output: ['frequent-buyer', 'mobile-user', 'high-LTV']&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Or query Users with a tag&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;.V().has(“tag”, “high-LTV”)&lt;br&gt;
// Output: [user-123]&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This is especially useful in AdTech, identity graphs, fraud, and personalization graphs, where entities accumulate multiple attributes over time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Native Datetime support
&lt;/h2&gt;

&lt;p&gt;Timestamps are now supported as a first-class property type. You can store, filter, and compare temporal data directly with no need to convert or encode datetime fields manually.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example: Add a timestamp to a session vertex&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;g.addV('Session')&lt;br&gt;
 .property('id', 'sessionid-123456')&lt;br&gt;
 .property('startedAt', datetime('2025-07-08T14:22:00Z'))&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;Query sessions that started in the last 24 hours&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;g.V().hasLabel('Session')&lt;br&gt;
 .has('startedAt', gt(datetime('2025-07-07T14:22:00Z')))&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;These capabilities make the platform more expressive and developer-friendly, especially for time-based and signal-rich domains.&lt;/p&gt;

&lt;h2&gt;
  
  
  Faster to load
&lt;/h2&gt;

&lt;p&gt;Aerospike Graph 3.0 ships with a re-architected bulk loader that dramatically reduces ingest time, especially at large scale.&lt;/p&gt;

&lt;p&gt;In production-scale benchmark tests, we loaded &lt;strong&gt;a terabyte of data in under three hours&lt;/strong&gt;, down from over 32 hours with version 2.6. That’s a &lt;strong&gt;&amp;gt;10x performance gain&lt;/strong&gt;, with the same infrastructure. &lt;/p&gt;

&lt;p&gt;This performance unlocks faster iteration and experimentation cycles, allowing teams to load large datasets quickly, validate changes, and refresh data frequently, without needing to scale up infrastructure or wait for a long time to see the results of their changes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cheaper to run
&lt;/h2&gt;

&lt;p&gt;Aerospike Graph Database 3.0 also delivers substantial gains in storage efficiency and overall total cost of ownership.&lt;/p&gt;

&lt;p&gt;Improvements to on-disk data layout reduce storage footprint by &lt;strong&gt;up to 50%&lt;/strong&gt;, which means fewer nodes are required to store the same data. This directly reduces cluster size and infrastructure costs.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Operate a &lt;strong&gt;terabyte-scale graph&lt;/strong&gt; for a fraction of the cost of any other graph database&lt;/li&gt;
&lt;li&gt;Enjoy predictable cost scaling, with $/GB dropping as data volume increases&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Combined with Aerospike’s &lt;a href="https://aerospike.com/blog/hybrid-memory-architecture-optimization/" rel="noopener noreferrer"&gt;Hybrid Memory Architecture&lt;/a&gt; and the ability to scale compute and storage independently via the Aerospike Graph Service, Aerospike Graph offers the most cost-efficient ways to run high-performance graph workloads, without the constraints of RAM-bound architectures.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get started
&lt;/h2&gt;

&lt;p&gt;Aerospike Graph Database 3.0 is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Easier to build on - with multi-property vertex support and native datetime types&lt;/li&gt;
&lt;li&gt;Faster to load - with &amp;gt;10x ingest speed for billion-scale datasets&lt;/li&gt;
&lt;li&gt;Cheaper to run -  with smaller clusters, lower storage footprint, and reduced total cost of ownership at scale &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re solving large-scale graph problems that power real-time decisions, Aerospike Graph Database 3.0 is built for you.&lt;/p&gt;

&lt;p&gt;→ [&lt;strong&gt;Read the &lt;a href="https://aerospike.com/docs/graph/release/3-0-0/" rel="noopener noreferrer"&gt;release notes&lt;/a&gt;&lt;/strong&gt;]&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>graphdb</category>
      <category>developer</category>
      <category>database</category>
    </item>
    <item>
      <title>How Criteo scaled 290M QPS and cut its server footprint by 78%</title>
      <dc:creator>Aerospike</dc:creator>
      <pubDate>Thu, 24 Jul 2025 21:36:16 +0000</pubDate>
      <link>https://forem.com/aerospike/how-criteo-scaled-290m-qps-and-cut-its-server-footprint-by-78-e80</link>
      <guid>https://forem.com/aerospike/how-criteo-scaled-290m-qps-and-cut-its-server-footprint-by-78-e80</guid>
      <description>&lt;p&gt;&lt;strong&gt;Author&lt;/strong&gt;: Steve Tuohy - Director of Product Marketing&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Discover how Criteo scaled to 290M queries-per-second, swapped Couchbase + Memcached for Aerospike, cut servers by 78%, and kept sub-ms latency.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;a href="https://aerospike.com/resources/customer-stories/criteo-real-time-ad-bidding/" rel="noopener noreferrer"&gt;Criteo&lt;/a&gt; serves more than 700 million users daily with personalized ads, processing billions of events in milliseconds. At its peak, Criteo’s infrastructure handles 290 million key-value queries per second (QPS).&lt;/p&gt;

&lt;p&gt;Until recently, this real-time engine ran on a complex stack of &lt;a href="https://aerospike.com/compare/couchbase-vs-aerospike/" rel="noopener noreferrer"&gt;Couchbase&lt;/a&gt; and Memcached, propped up by custom C clients and costly operational overhead. Performance during rebalancing was fragile, cache warming required manual traffic shaping, and &lt;a href="https://aerospike.com/solutions/use-cases/improving-database-cost-through-efficiency/" rel="noopener noreferrer"&gt;RAM costs were high&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But when Criteo rebuilt its stack using Aerospike’s patented Hybrid Memory Architecture (HMA), the company consolidated two systems into one, simplified operations, and cut its server footprint by 78%, all while maintaining sub-millisecond latency at global scale.&lt;/p&gt;

&lt;h2&gt;
  
  
  Maintaining real-time access at AdTech scale
&lt;/h2&gt;

&lt;p&gt;Criteo isn’t just serving banner ads. It runs real-time auctions on the open web, responding to 20 million bid requests per second. Each request requires dozens of micro-decisions: audience scoring, campaign pacing, frequency caps, and more.&lt;/p&gt;

&lt;p&gt;"Our key-value storage system peaks at about 290 million queries per second, which is fairly large,” said Maxime Brugidou, vice president of engineering, Criteo.&lt;/p&gt;

&lt;p&gt;All of that happens in under 100 ms. The stack is written in C, runs on premises across 40,000 servers and seven data centers, and operates through Kubernetes and Apache Mesos.&lt;/p&gt;

&lt;p&gt;The demands on storage? Sub-millisecond latency, no downtime during rebalancing or upgrades, and a globally distributed footprint.&lt;/p&gt;

&lt;h2&gt;
  
  
  The legacy stack: Couchbase + Memcached + custom C logic
&lt;/h2&gt;

&lt;p&gt;Before adopting Aerospike, Criteo’s real-time infrastructure relied on Couchbase for the data, with Memcached as a caching layer. A custom-built C client orchestrated dual writes and replication between tiers, and maintained consistency between the two systems. “It was very difficult to make it perform well during rebalancing or maintenance,” Brugidou said. “It was quite unstable.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuqcbfn007t3wz95clg0a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuqcbfn007t3wz95clg0a.png" alt="Criteo's tech stack in 2020" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Operationally, this design required careful tuning and careful rerouting of traffic. Any node failure or rebalance event degraded performance and had to be dealt with.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdovl8ettsfvnyovs8x22.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdovl8ettsfvnyovs8x22.png" alt="Drawbacks faced in legacy stack" width="800" height="201"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The turning point: Aerospike’s Hybrid Memory Architecture (HMA)&lt;/p&gt;

&lt;p&gt;Aerospike’s HMA changed the game. It decouples index storage from data storage:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Indexes stay in RAM for fast access.&lt;/li&gt;
&lt;li&gt;Data lives on SSDs, such as NVMe drives, in Criteo's case.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnouwonoccguas6wjpsyb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnouwonoccguas6wjpsyb.png" alt="Criteo's tech stack in 2024" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This model gave Criteo Memcached-level low latency with the durability of disk and let the company collapse its architecture from two databases into one.  "There was this nice design with the index being in memory and the data on disk,” Brugidou said. “It allowed for really good tradeoffs." &lt;/p&gt;

&lt;p&gt;By keeping indexes in memory and serving records from fast SSDs, Aerospike hit sub-millisecond reads without needing RAM to hold entire datasets. For Criteo, this not only simplified its system design but also saved money.&lt;/p&gt;

&lt;p&gt;"Aerospike combined with NVMe disks… we had basically Memcached performance except that we were using persistent storage,” Brugidou said. “That was quite impressive…Aerospike was able to keep reading steadily at high throughput and very, very low latency despite all the mess we were putting on the servers." &lt;/p&gt;

&lt;h2&gt;
  
  
  Kubernetes-native deployment: From custom scripts to automated ops
&lt;/h2&gt;

&lt;p&gt;Criteo replaced both Couchbase and Memcached with Aerospike. The company removed its custom client drivers, adopted Aerospike’s native C client, and rolled out a Kubernetes-native deployment on-prem with the &lt;a href="https://aerospike.com/products/kubernetes-operator/" rel="noopener noreferrer"&gt;Aerospike Kubernetes Operator&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Operational wins included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automatic node recovery and rebalancing via Kubernetes&lt;/li&gt;
&lt;li&gt;Eliminating the custom C client, reducing complexity&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Multi-bin optimization: Collapsing data models for performance
&lt;/h2&gt;

&lt;p&gt;Aerospike’s multi-bin optimization simplified things even more. Criteo merged multiple datasets into one namespace, which helped reduce index memory usage and improve access efficiency. "You can write to some bins very easily and read all the bins at once. You only pay for indexing once in memory. That was quite a significant win," Brugidou said.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl5ddwits17osmgrxxrpu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl5ddwits17osmgrxxrpu.png" alt="Criteo's bin strategy" width="753" height="515"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aerospike also made rebalancing and node failure recovery seamless to the team. "We do that transparently,” Brugidou said. Aerospike is able to rebalance so easily… This is fully automated and very easy to do with the Kubernetes Operator.” Multi-bin optimization also meant:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reduced index memory usage by avoiding duplication&lt;/li&gt;
&lt;li&gt;Faster lookups, because all bins could be read in one fetch&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This move simplified things even more, aligning with Criteo's infrastructure-as-code strategy and reducing human intervention during failure recovery.&lt;/p&gt;

&lt;h2&gt;
  
  
  Infrastructure impact: 78% server reduction and lower carbon footprint
&lt;/h2&gt;

&lt;p&gt;By replacing Couchbase and Memcached with Aerospike, Criteo reduced server count from more than 3,000 to just 720. This meant: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lowered total RAM and disk footprint&lt;/li&gt;
&lt;li&gt;Reduced power consumption and cooling&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Began running on 100% renewable energy in 2022, accomplished with the purchase of certificates and relocation of data centers to more sustainable locations.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvoibr4ylrpwk823lspbf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvoibr4ylrpwk823lspbf.png" alt="Criteo's data center's electricity consumption: 2016 - 2024" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;“We’re doing many more queries for less electricity in the end. Way less,” said Brugidou. This migration supports Criteo’s science-based climate target to reduce electricity consumption by 42% by 2030.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons learned: Performance tuning, not over-engineering
&lt;/h2&gt;

&lt;p&gt;Despite the performance of the new system, Criteo didn’t jump straight to exotic optimizations. Instead, it prioritized simplicity:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Avoided pre-loading datasets in RAM&lt;/li&gt;
&lt;li&gt;Let Aerospike handle replication and rebalancing&lt;/li&gt;
&lt;li&gt;Tuned bin and namespace configs incrementally based on workload metrics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Brugidou emphasized that consistency and throughput remained stable even under stress tests, without resorting to low-level tuning. &lt;/p&gt;

&lt;h2&gt;
  
  
  Takeaway: Scaling real-time systems without scaling costs
&lt;/h2&gt;

&lt;p&gt;By replacing a brittle, multi-tiered stack with Aerospike’s real-time engine, Criteo gained both technical efficiency and reduced costs. It consolidated two systems into one, improved performance, reduced latency, and slashed infrastructure overhead, without sacrificing resiliency or scale.&lt;/p&gt;

&lt;p&gt;For teams building real-time systems with massive QPS and tight SLAs, Criteo’s experience shows what becomes possible with the right storage architecture.&lt;/p&gt;

&lt;p&gt;With Aerospike, Criteo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Consolidated two systems into one&lt;/li&gt;
&lt;li&gt;Maintained sub-millisecond latency&lt;/li&gt;
&lt;li&gt;Reduced infrastructure costs and energy use&lt;/li&gt;
&lt;li&gt;Gained reliability through automation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Want to learn more? Check out the webinar replay or talk to our team about what real-time data infrastructure can do for you.&lt;/p&gt;

</description>
      <category>adtech</category>
      <category>webdev</category>
      <category>devrel</category>
      <category>developer</category>
    </item>
    <item>
      <title>Aerospike Rust client preview: Introducing a native integration for high-performance systems</title>
      <dc:creator>Aerospike</dc:creator>
      <pubDate>Thu, 17 Jul 2025 17:18:30 +0000</pubDate>
      <link>https://forem.com/aerospike/aerospike-rust-client-preview-introducing-a-native-integration-for-high-performance-systems-20pf</link>
      <guid>https://forem.com/aerospike/aerospike-rust-client-preview-introducing-a-native-integration-for-high-performance-systems-20pf</guid>
      <description>&lt;p&gt;&lt;strong&gt;Brian Porter - Principal Product Manager, Database&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Explore Aerospike's new official Rust client, built for memory-safe, low-latency systems. See features, roadmap, and how to start integrating today.&lt;/em&gt;&lt;br&gt;
_&lt;/p&gt;




&lt;p&gt;Developers building high-throughput, low-latency applications in Rust now have access to a high-performance client developed and maintained by Aerospike with the preview release of its &lt;a href="https://github.com/aerospike/aerospike-client-rust/tree/v2" rel="noopener noreferrer"&gt;official Rust client&lt;/a&gt;. This milestone represents more than just a new client library; it marks a shift from a community-supported project to one that business leaders can feel safe adopting.&lt;/p&gt;

&lt;p&gt;Driven by increasing demand from our developer community and the rapid adoption of Rust for performance-critical, memory-safe systems, this release enables Rust developers to integrate Aerospike into their applications, all while preserving the consistency, speed, and reliability that define our platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Rust: Strategic alignment with developer needs
&lt;/h2&gt;

&lt;p&gt;Rust is increasingly used across industries such as finance, telecommunications, cloud infrastructure, and embedded systems. It has become the preferred choice for performance-critical systems development. Organizations such as Amazon, Cloudflare, and Discord have adopted Rust to build reliable infrastructure and eliminate classes of memory-related bugs that commonly affect C/C++-based software. &lt;/p&gt;

&lt;p&gt;Its popularity is driven by a combination of performance and reliability characteristics that are a natural fit for Aerospike applications:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No garbage collection&lt;/strong&gt;: Rust’s lack of a garbage collector helps eliminate latency outliers, a key requirement for real-time systems.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compile-time memory safety&lt;/strong&gt;: Rust’s memory safety model reduces crash potential by catching common security vulnerabilities at compile time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Safe concurrency support&lt;/strong&gt;: Rust prevents data races by enforcing thread safety at compile time, helping high-concurrency applications scale better.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modern tooling and developer experience&lt;/strong&gt;: Over 100,000 Rust crates exist today, providing straightforward integration with Kafka, gRPC, observability tools, and more, forming a mature ecosystem.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Rust client capabilities
&lt;/h2&gt;

&lt;p&gt;Rust Preview highlights include:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Execution models&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Async-first&lt;/strong&gt;: Built for non-blocking IO, powered by &lt;a href="https://tokio.rs/" rel="noopener noreferrer"&gt;Tokio&lt;/a&gt; by default, with optional support for &lt;a href="https://async.rs/" rel="noopener noreferrer"&gt;async-std&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sync support&lt;/strong&gt;: Blocking APIs available using a sync sub-crate for flexibility in legacy or mixed environments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Advanced data operations&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Batch protocol&lt;/strong&gt;: Full support for read, write, delete, and UDF operations through the new BatchOperation API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;New query/scan support&lt;/strong&gt;: Implements updated query protocols for improved consistency and performance, allowing pagination and limiting the number of returned records&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Policy and expression enhancements&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Replica policies&lt;/strong&gt;: Includes support for Replica, including PreferRack policy&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Policy additions&lt;/strong&gt;: New fields such as allow_inline_ssd, respond_all_keys in BatchPolicy, read_touch_ttl, and QueryDuration in QueryPolicy&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rate limiting&lt;/strong&gt;: Supports records_per_second for scan/query throttling&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Data model improvements&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Type support&lt;/strong&gt;: Adds support for boolean particle type&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;New data constructs&lt;/strong&gt;: Returns types such as Exists, OrderedMap, and UnorderedMap, now supported for &lt;a href="https://aerospike.com/docs/develop/data-types/collections/" rel="noopener noreferrer"&gt;CDT&lt;/a&gt; reads&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Value conversions&lt;/strong&gt;: Implements TryFromAerospike::Value for type interoperability&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Infinity and wildcard&lt;/strong&gt;: Supports Infinity, Wildcard, and corresponding expression builders expressions::infinity() and expressions::wildcard()&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Size expressions&lt;/strong&gt;: Adds expressions::record_size() and expressions::memory_size() for granular control&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Take a look at the &lt;a href="https://github.com/aerospike/aerospike-client-rust/blob/v2/CHANGELOG.md" rel="noopener noreferrer"&gt;changelog&lt;/a&gt; for more details.&lt;/p&gt;

&lt;p&gt;The client has been built from the ground up to integrate easily with today’s Rust frameworks and async runtimes. Support for the Tokio async runtime, standard Rust crates, and idiomatic usage patterns are all part of the design.&lt;/p&gt;

&lt;h2&gt;
  
  
  Release timeline
&lt;/h2&gt;

&lt;p&gt;The client is currently available as a preview release, with support for foundational operations. The &lt;strong&gt;general availability (GA) release is planned for later in 2025&lt;/strong&gt; and will include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full feature parity with other official Aerospike clients (e.g., Go, C#, Java)&lt;/li&gt;
&lt;li&gt;Community feedback-driven improvements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The preview release is available on &lt;a href="https://github.com/aerospike/aerospike-client-rust/tree/v2" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;, and we encourage developers to experiment, provide feedback, and report issues.&lt;/p&gt;

&lt;p&gt;Designed for the community&lt;br&gt;
Aerospike developed this client because we listened to our developer community. Requests for async support, tighter performance tuning, and alignment with Rust’s ecosystem have been recurring themes in our forums and GitHub discussions. The new client is a direct response to that input.&lt;/p&gt;

&lt;p&gt;By releasing this client under an open license and hosting it on GitHub, we aim to foster ongoing community engagement. Contributions, feature requests, and feedback will help shape the GA version and future enhancements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get started
&lt;/h2&gt;

&lt;p&gt;Start working with the &lt;a href="https://github.com/aerospike/aerospike-client-rust/tree/v2" rel="noopener noreferrer"&gt;preview client today&lt;/a&gt; by going to the Installation section of the v2 branch of the Rust client repo.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>rust</category>
      <category>database</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
