263
• Web-scale personalization: Companies can tailor online user
experiences by returning relevant content and advertisements,
resulting in higher user click-through rate and more e-commerce
revenue opportunities.
• Financial trading: Financial trading applications can rapidly
process and execute financial transactions, allowing them to gain a
competitive advantage and create a higher revenue opportunity.
• Internet of Things (IoT): Faster data ingest and processing of huge
datasets in real-time reduces time to value.
• Content delivery networks (CDN): A CDN is a highly distributed
network of edge servers strategically placed across the globe with the
purpose of rapidly delivering digital content to users. With a memory
capacity, each CDN node can cache more data and reduce the total
number of servers, while networks can reliably deliver low-latency
data to their clients. If the CDN cache is persisted, a node can restart
with a warm cache and sync only the data it is missed while it was out
of the cluster.
Developing a Persistent Memory-Aware MariaDB*
Storage Engine
The storage engine developed here is not production quality and does not implement
all the functionality expected by most database administrators. To demonstrate the
concepts described earlier, we kept the example simple, implementing table create(),
open(), and close() operations and INSERT, UPDATE, DELETE, and SELECT SQL
operations. Because the storage engine capabilities are quite limited without indexing,
we include a simple indexing system using volatile memory to provide faster access to
the data residing in persistent memory.
Although MariaDB has many storage engines to which we could add persistent
memory, we are building a new storage engine from scratch in this chapter. To learn
more about the MariaDB storage engine API and how storage engines work, we suggest
reading the MariaDB “Storage Engine Development” documentation (https://
mariadb.com/kb/en/library/storage-engines-storage-engine-development/).
Since MariaDB is based on MySQL, you can also refer to the MySQL “Writing a Custom
Chapter 13 enabling persistenCe Using a real-World appliCation
Précédent

- 287/457

Suivant