Frakture uses a number of mechanisms to work with the large variety of technology platforms on the market. These are the most common ones, but the variety is astounding:
* Direct SQL/Mongo/etc connections to a slave database — arguably the easiest, fastest, most reliable mechanism that doesn’t affect client performance. Via standard database permissions, Frakture can access only vendor-specified tables and objects (such as people/tags, etc) for specific clients (via views).
* Bulk API — Akin to the Salesforce bulk API, being able to export JSON or file data on demand, with a filter for the last modification date is a good
* User Interface — if there’s a way a human can schedule a data export, or see data that can be scraped, that can be a low impact mechanism for retrieving data
* FTP/S3 file drop — Picking up a file that is dropped on a schedule
* Emailed information — not ideal, but possible Emails are sent to a frakture email address daily, where information is either extracted or downloaded from a site, and parsed.
* Bulk API — Uploading files for bulk API processing is a quick, on demand way to insert or update lots of data at a time
* Single API — Less efficient, but possible, is pushing data 1 by 1. Good for small numbers of records
* SQL push – inserting data into a SQL table (whether a staging table or final table) is also quite efficient
* User Interface — if there’s a way a human can enter data — like via an online form — that push can also be automated
* Daily scheduled file transfer — the least efficient, but most widely available means is a monitored file drop
* Emailed file — also not terrible efficient, but can work in a number of cases, particularly when a human is required in the import