What is High-Performance Order Storage (HPOS) in WooCommerce?
What is High-Performance Order Storage (HPOS) in WooCommerce?
Are you currently using WooCommerce to manage your online store? If so, you might be interested to know that WooCommerce has recently introduced a new update aimed at enhancing site speed.
For more than a year, WooCommerce developers have been diligently working on a new feature that revolutionizes how the e-commerce platform stores order data, promising a substantial boost in the speed of your WooCommerce site. Initially known as Custom Order Tables, this feature has been renamed High-Performance Order Storage (HPOS) for brevity and clarity.
From WooCommerce 8.2, released on [exact date] October 10th, 2023, High-Performance Order Storage (HPOS) has been officially marked as stable and will now be automatically enabled for new installations.
In this blog post, we will explore the features and benefits of the latest High-Performance Order Storage (HPOS) update in WooCommerce, shedding light on how it can revolutionize your order management process.
Introduction to High-Performance Order Storage (HPOS)
Before WooCommerce version 8.2, order information was stored using the wp_post and wp_postmeta table structures.
With the introduction of High-Performance Order Storage (HPOS), dedicated tables for data, including orders and order addresses, have been implemented. These tables, along with dedicated indexes, lead to reduced read/write operations and less congestion within the database. Consequently, this feature facilitates the scalability of e-commerce stores, allowing businesses of all sizes to reach their maximum potential.
As part of this update, order data is now synchronized from the _posts and _postmeta tables to four new custom order tables:
This streamlined approach to data management optimizes the performance of the WooCommerce platform, enhancing the overall efficiency of order processing and management.
What’s new with High-Performance Order Storage?
According to WooCommerce, the integration of custom order tables into the WooCommerce Core aims to enhance three key properties.
As the volume of customers and customer orders increases, the load on your store’s database intensifies, often leading to challenges in managing customer order requests and ensuring a seamless user experience. The implementation of High-Performance Order Storage introduces dedicated tables for storing critical data, including orders, order addresses, and specialized indexes. This results in a reduction in both read/write operations and the congestion of active database tables. As a result, e-commerce businesses of all sizes can effortlessly scale their operations to their maximum potential, all without the need for complex technical interventions. Beyond a mere technical upgrade, this streamlined approach to data management offers businesses a strategic advantage.
With the integration of High-Performance Order Storage (HPOS), the process of implementing and restoring targeted data backups becomes more straightforward. You can now set aside concerns about the potential loss of orders, inventory data, or crucial client information, as these custom order tables ensure reliable backups. Additionally, HPOS simplifies the implementation of read/write locks, effectively mitigating the occurrence of race conditions. This improvement in reliability guarantees a smoother and more secure data management process for your WooCommerce store.
Say goodbye to the hassle of navigating through a single, extensive database to access underlying data and WooCommerce entries. High-Performance Order Storage (HPOS) allows you to seamlessly navigate separate, user-friendly tables, distinct from the _posts table. This simplified approach enables easier data retrieval and a better understanding of the table structure. Moreover, HPOS empowers you to create new extensions, implement customized designs for your online store and products, and modify WooCommerce with increased flexibility, streamlining the entire process for a more efficient and user-friendly experience
How to Check Plugin Compatibility with HPOS
To ensure the smooth functioning of HPOS, it is essential to verify the compatibility of your existing plugins. The official HPOS documentation emphasizes that if any installed plugin is not compatible with HPOS, the HPOS option will need to be disabled. Here’s how you can easily check the compatibility of your site’s installed plugins with HPOS:
Follow these steps to check the compatibility of your installed plugins with HPOS:
Go to your WP Admin panel and navigate to WooCommerce > Settings > Advanced > Features
Click on the “View and manage” link to review the list of incompatible extensions.
Additionally, you can visit the following link to access the list of incompatible extensions directly: https://example.com/wp-admin/plugins.php?plugin_status=incompatible_with_feature&feature_id=custom_order_tables (Make sure to replace “example.com” with your site domain).
Please note: If you encounter any issues with third-party extensions that do not function correctly with High-Performance Order Storage, it is advisable to notify the respective developers and request them to incorporate HPOS support. It remains the responsibility of the extension developers to ensure compatibility with HPOS.
How to enable High-Performance Order Storage on Your WooCommerce Store
The exciting advantages of HPOS for WooCommerce have been highlighted above. Nonetheless, many WooCommerce store owners are still wondering how to enable HPOS on existing stores. Many store owners are nervous about enabling any new feature that might cause unintended consequences.
For new stores the process is easy, HPOS is automatically enabled for new installations starting from WooCommerce version 8.2. For existing stores, the transition from WordPress posts storage to High-Performance Order Storage can be achieved by following the outlined steps.
To activate HPOS, existing stores must first synchronize both the posts and orders table by following these steps:
1- Go to WP Admin and navigate to WooCommerce > Settings > Advanced > Features
2- Check the Enable compatibility mode (synchronizes orders to the posts table) box
3- Once enabled, the system will schedule background actions:
3.a- The wc_schedule_pending_batch_process action checks for whether there are orders that need to be backfilled
3.b- If any such orders exist, another action (wc_run_batch_process) is scheduled to backfill these orders to post storage.
3.c- You can either wait for these actions to run automatically (a quick process), or manually execute them by going to WooCommerce > Status > Scheduled Actions, locating the actions, and clicking the Run button
3.d- This action will backfill 25 orders at a time, with additional actions scheduled until all orders are synchronized.
4- Once both tables are successfully synchronized, you will have the option to switch to HPOS.
4.a- It is advisable to maintain compatibility mode for a period to ensure a smooth transition. If any issues arise, you can instantly revert to the _posts table.
Following these steps will facilitate the integration of HPOS into your WooCommerce store, ensuring a more efficient and optimized order management system.
Alternatively, you have the option to utilize the command-line interface (CLI) command wp wc cot sync for efficiently transferring orders from the _posts table to the designated HPOS tables. This user-friendly command automatically identifies the appropriate table for data transfer, based on the authoritative table setting, ensuring a smooth and seamless migration process.
Getting Started with HPOS
Embrace the power of HPOS with WooCommerce, and unlock a world of possibilities. As a trusted partner, Store Pro is well-equipped to seamlessly guide businesses through this transformative journey. With our extensive experience, we are dedicated to helping you make the most of HPOS and elevate your WooCommerce operations
The future of WooCommerce, shaped by revolutionary advancements like HPOS, promises unparalleled performance and user satisfaction. Don’t just watch from the sidelines – join us in embracing this transformative wave.