Generic data export from Drupal 7

Created on 18 March 2023, almost 2 years ago
Updated 13 May 2023, over 1 year ago

Currently, D7 site owners face a stark choice. Perhaps we can guide them to something in the middle?

<!--break-->

Problem/Motivation

Data migrations typically follow a pattern known as ETL, which stands for Extract, Transform and Load:

  • Extract: Data is acquired from the source system, which in our case is typically running Drupal 7
  • Transform: Since the data schemas for the source platform and the destination platform are rarely identical, the data needs to be wrangled into a format that can be successfully loaded into the destination
  • Load: The transformed data is pulled into the destination system

(Note that this traditional model neglects to mention a very important step: creating a destination system that can receive the exported data and subsequently display it, or otherwise make use of it.)

Many, perhaps most, discussions about D7 EOL focus (reasonably) on options for moving websites completely from the source to a new platform, but I think that ignores an important use case: what if the information is contained on a system that simply doesn't have the resources, or perhaps the motivation, to create a suitable destination system and move the data there?

Currently, people are left with only two options:

  1. Spend the time and money to migrate to a new system, committing to maintaining it
  2. Shut down the old system without exporting anything, irretrievably losing all of the data

That strikes me as a harsh choice. What about people that have data that they care about, but who don't have a budget to transform it? Do we really have to leave them with just those two choices? Either commit to a large new project, or lose everything they have?

Proposed resolution

I propose that we give some thought and care to a third choice: extracting the information contained in a D7 site into a low-cost format that preserves the data. Perhaps something human readable, like HTML? Perhaps something machine-readable, like JSON,XML, or CSV? Perhaps a menu of options? Basically, I'm proposing that we support some way to save the results of the "Extract" stage of the ETL process.

πŸ“Œ Task
Status

Active

Component

Documentation

Created by

πŸ‡ΊπŸ‡ΈUnited States cellear San Francisco Bay Area

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024