Percona Server 包含了一个特别的 NoSQL 接口，名为 HandlerSocket。HandlerSocket 插件允许用户通过简单的 TCP 协议来访问使用 XtraDB 表存储的 key-value 数据，而无需关心 SQL 解析、查询优化以及其他一些高级的处理。使用这种方式访问数据是非常快的，在单台普通的服务器上每秒钟可处理高达 75 万的查询。
下面是 HandlerSocket 访问方法的一些关键特性：
- 持久化、ACID 兼容存储
- HandlerSocket bypasses the upper layers of the server, but it doesn't compromise on XtraDB's proven transactional behavior. All data written to the server is fully transactional and durable. There is still automatic recovery if the server loses power, for example. In contrast, most other NoSQL databases are not ACID-compliant, and some of them don't even persist data.
- Most NoSQL databases provide little or no protection against data corruption. In fact, they don't even try to detect it. HandlerSocket leverages XtraDB's strong guarantees of data integrity. Data is checksummed when being moved between memory and disk, and should a hardware failure corrupt the data, XtraDB will refuse to access it. There is strong protection against partial page writes, too. No database protects your data more reliably than XtraDB.
- 同时支持使用 SQL 访问数据
- Your data is still stored in XtraDB tables, and nothing prevents you from accessing them through MySQL as you usually do! You can run complex joins, GROUP BY queries, and everything else that key-value stores don't let you do.
- One of the problems with using an additional caching or NoSQL data store (such as memcached) is that you must worry about problems such as cache consistency, synchronization, and expiration. No longer! All of these problems are caused by storing multiple copies of the data, and with HandlerSocket, you have both SQL and NoSQL access to the same data for perfect consistency and synchronization.
关于 Percona Server 的 HandlerSocket 插件的配置：