Magento 2 databases and cron services

The complete list of database tables and cron services during installation.

Overview

The core data synchronisation process works via the creation and population of database tables during the installation process, and these are then updated and maintained using a handful of observers and cron services.

Before you start

Things you need to know:

  • The most accurate and up-to-date list of our cron tasks and their timings is our main crontab.xml file.

Creation of databases

Upon installation of the connector, we create nine new database tables. These are:

email_contact All contacts who will be synced to Dotdigital
email_order All orders that will be synced
email_wishlist All wishlists that will be synced
email_review All reviews that will be synced
email_catalog All products that will be synced
email_automation All contacts due to be enrolled or that have been enrolled into a program that will be synced
email_campaign All campaign sends sent or due to be sent (abandoned cart or review requests only) that will be synced
email_importer All batches of data that have been imported or due to be imported that will be synced
email_abandoned_cart Stores quotes for the abandoned cart email series
email_contact_consent Stores consent data if Stores > Configuration > Dotdigital > Configuration > Consent settings are enabled
email_coupon_attribute Stores coupon properties for coupons created via our coupon URL
email_failed_auth Logs authorization failures when our dynamic content URLs are accessed with an incorrect passcode
email_rules Stores exclusion rules configured in Marketing > Exclusion Rules

During installation these tables become populated with your historical data, after which time they are updated automatically by cron services.

Cron services

The following cron services batch data from these tables and add them to the email_importer table ready for import:

ddg_automation_customer_sync

ddg_automation_subscriber_sync

ddg_automation_guest_sync

These three jobs batch data from the email_contact table. Runs every 15 minutes by default.
ddg_automation_order_sync Batches data from the email_order table. Runs every 15 minutes by default.
ddg_automation_reviews_and_wishlist Batches data from email_review and email_wishlist tables. Runs every 15 minutes by default.
ddg_automation_catalog_sync Batches product data from the email_catalog table. Runs every 15 minutes by default.

All of the above cron services can have their frequency configured.

All of this data gets batched and then added to the email_importer table, which involves the running of the following cron service:

ddg_automation_importer

Looks for the oldest non-imported import and kicks off an import. This runs every 5 minutes (again, the frequency can be configured), checks the status of the last import and, if complete, marks it as done and then starts the next one.

The importer also checks the import fault file for all contact imports and if it contains suppressed contacts, it updates their status in both the email_contact table and the core Magento newsletter table.

The following cron services also perform the following tasks:

ddg_automation_abandonedcarts Detects abandoned carts based on the time settings you specify and adds contacts that are due to receive an email to email_campaign table (this runs every 5 minutes)
ddg_automation_campaign Creates contacts and performs sends of all unsent campaigns (abandoned cart and review requests only; this runs every 5 minutes)
ddg_automation_status Creates and enrols any contacts into the email_automation table that haven't been added yet (this runs every 15 minutes)
ddg_automation_cleaner Archives files created from the batching process (this runs once a month, so it keeps your table clean. Contact support if this isn't working)
ddg_automation_monitor Scans your tables for errors, to be flagged in System Alerts (runs every 15 minutes)
ddg_automation_integration_insights Sends data about your Magento installation and your connector configuration to Dotdigital (runs once a week)
ddg_automation_unsubscribe Fetches recent suppressions from Dotdigital and unsubscribes matching email addresses in Magento
ddg_automation_resubscribe Fetches recently-modified contacts in Dotdigital and resubscribes matching email addresses in Magento

 

Did you find this article helpful?

Can we help?

Thanks for using Dotdigital. If you need more help or support, then contact our support team.