Migratsioon Drupal Arendus

Drupal Migrate API — kuidas sisu teisest süsteemist Drupalisse tuua

🎧 Kuula kõiki artikleid järjest

Suuremate Drupal projektide juures ei ole keeruline osa tavaliselt uue veebilehe ehitamine, vaid olemasoleva sisu, kasutajate ja andmete turvaline üleviimine.

Mis on Drupal Migrate API?

Drupal Migrate API on Drupali tuuma osa, mis on loodud andmete ja sisu migreerimiseks erinevatest allikatest Drupalisse.

Selle eesmärk ei ole lihtsalt andmeid importida, vaid teha seda kontrollitavalt, korratavavalt ja dokumenteeritult.

Migratsiooniprojektides kasutatakse Migrate API-t näiteks:

  • Drupal 7 → Drupal 11 uuendustel;
  • WordPress → Drupal migratsioonidel;
  • Joomla või TYPO3 projektidel;
  • CSV ja Exceli importidel;
  • ERP, CRM ja teiste infosüsteemide andmete sissetoomisel;
  • kohandatud rakenduste asendamisel Drupaliga.

Migrate API suur eelis on see, et sama migratsiooni saab vajadusel korduvalt käivitada ja testida.

Kuidas Migrate API töötab?

Migrate API põhineb kolmel põhikomponendil.

Source

Source määrab, kust andmed pärinevad.

Allikaks võib olla:

  • andmebaas;
  • CSV fail;
  • XML fail;
  • JSON fail;
  • REST API;
  • mõni muu väline süsteem.

Migratsiooni esimene ülesanne on mõista olemasolevat andmestruktuuri.

Process

Process kiht määrab, kuidas andmeid teisendatakse.

Siin saab:

  • muuta väljade nimesid;
  • teisendada väärtusi;
  • kombineerida andmeid;
  • filtreerida kirjeid;
  • siduda viiteid teiste objektidega.

Praktikas toimub just siin suurem osa migratsiooni loogikast.

Destination

Destination määrab, kuhu andmed Drupalis salvestatakse.

Sihtkohaks võivad olla näiteks:

  • sisuüksused (nodes);
  • meediaobjektid;
  • kasutajad;
  • taksonoomia terminid;
  • kohandatud entity tüübid.

Levinumad migratsioonistsenaariumid

Drupal 7 → Drupal 11

See on üks kõige sagedasemaid kasutusjuhtumeid.

Drupal pakub selleks spetsiaalseid migratsioonimooduleid, mis tunnevad Drupal 7 andmestruktuuri ning võimaldavad üle tuua:

  • sisutüübid;
  • väljad;
  • kasutajad;
  • rollid;
  • taksonoomia;
  • failid;
  • menüüd.

Custom-moodulite ja erilahenduste puhul tuleb tavaliselt luua täiendavad migratsioonid.

WordPress → Drupal

WordPressi andmemudel erineb Drupalist märkimisväärselt.

Migratsiooni käigus tuleb tavaliselt kaardistada:

  • postitused;
  • lehed;
  • kategooriad;
  • sildid;
  • kasutajad;
  • meedia.

Lisatööd nõuavad sageli Gutenberg plokid ja muud kujunduspõhised sisuelemendid.

Kohandatud süsteem → Drupal

Kui olemasolev süsteem on ehitatud spetsiaalselt organisatsiooni vajaduste jaoks, tuleb tavaliselt luua kohandatud Source pluginad või API ühendused.

Selliste projektide suurim väljakutse ei ole tehnoloogia, vaid olemasolevate andmete kvaliteet.

CSV ja Exceli import

Lihtsamate projektide puhul kasutatakse sageli CSV-põhist migratsiooni.

See sobib hästi:

  • tootekataloogidele;
  • kontaktandmetele;
  • sündmustele;
  • kinnisvaraobjektidele;
  • väiksematele andmekogudele.

Edukas migratsioon algab analüüsist

Suurim viga on alustada migratsiooni enne olemasoleva süsteemi kaardistamist.

Enne tehnilist tööd tasub välja selgitada:

  • millised sisutüübid eksisteerivad;
  • kui palju kirjeid on vaja üle tuua;
  • millised väljad on kasutusel;
  • millised andmed on aegunud;
  • millised URL-id peavad säilima.

Sageli selgub analüüsi käigus, et osa sisust ei ole enam vajalik ning seda ei ole mõtet uude süsteemi kaasa võtta.

Migrate API ei lahenda kõike automaatselt

Kuigi Migrate API on võimas tööriist, ei lahenda see kõiki migratsiooniga seotud küsimusi.

Eraldi tähelepanu vajavad tavaliselt:

  • URL ümbersuunamised;
  • SEO metaandmed;
  • kujundus;
  • kasutajate töövood;
  • integratsioonid;
  • kohandatud funktsionaalsus.

Migratsioon ei ole lihtsalt andmete kopeerimine ühest süsteemist teise. Sageli tähendab see kogu infosüsteemi ümberkujundamist.

Testimine on migratsiooni osa

Migratsiooni tehakse tavaliselt mitu korda.

Tüüpiline protsess on:

  1. Esmane proovimigratsioon.
  2. Andmete kontroll.
  3. Vigade parandamine.
  4. Uus migratsioon.
  5. Lõplik migratsioon enne avalikustamist.

See võimaldab avastada probleemid enne, kui uus veeb tootmiskeskkonda jõuab.

Kui kaua migratsioon kestab?

Migratsiooni kestus sõltub peamiselt andmete mahust ja keerukusest.

Ligikaudsed suurusjärgud:

Projekti tüüpTüüpiline kestus
Lihtne CSV importMõni tund kuni paar päeva
Väiksem WordPress migratsioonMõni päev kuni paar nädalat
Drupal 7 → Drupal 11 migratsioonMõni nädal kuni mitu kuud
Keerukas infosüsteemMitu kuud

Tegelik töömaht sõltub tavaliselt rohkem andmete kvaliteedist kui andmete hulgast.

Miks kasutada Migrate API-t?

Migrate API peamine eelis on kontrollitavus.

Migratsioon:

  • on dokumenteeritav;
  • on korduvkäivitatav;
  • vähendab käsitsi tööd;
  • võimaldab andmeid valideerida;
  • sobib suurte andmemahtude jaoks.

Seetõttu on see Drupal projektides kujunenud standardseks lahenduseks nii versiooniuuenduste kui ka platvormivahetuste puhul.

Kui plaanid Drupal migratsiooni või soovid hinnata olemasoleva süsteemi üleviimise mahtu, tasub migratsioonianalüüs teha enne arenduse algust. Nii on võimalik hinnata riske, töömahtu ja andmete kvaliteeti enne, kui tehakse suuremaid tehnilisi otsuseid.

Kaido Toomingas, WebPro tehniline juhtWebPro Company OÜ Tehniline juht: Kaido Toomingas

Vajad Drupal abi?

Kui artikkel puudutab sinu olukorda, ei pea kõike lõpuni lugema. Sinuga suhtleb päris inimene ja aitab järgmise sammuni jõuda.