Obstajajo znana vprašanja in premisleki glede uporabe priljubljenih vtičnikov WordPress z MongoDB kot sistemom baze podatkov namesto standardnega MySQL ali MariaDB. Ker je WordPress sam po sebi zgrajen za delo z bazami podatkov MySQL, z uporabo MongoDB - Podatkovna baza NoSQL potrebuje pomembne tehnične prilagoditve in lahko vpliva na združljivost s številnimi vtičniki in temami.
Prvič, WordPress Core in široki ekosistem vtičnikov in tem se močno zanašajo na poizvedbe SQL, prilagojene relacijskim bazam podatkov, kot je MySQL. MongoDB deluje na dokumentu, NOSQL podatkovnem modelu, ki ne podpira SQL sintakse namastno, zaradi česar številni vtičniki, ki izdajajo poizvedbe SQL, ne uspejo ali se obnašajo nepredvidljivo, če se uporabljajo pri MongoDB. Številni vtičniki WordPress prevzamejo relacijske strukture podatkov, transakcije, združevanje in značilnosti skladnosti s kislino, ki so v MySQL, vendar v MongoDB odsotne ali drugačne, kar vodi do izzivov združljivosti.
En glavni tehnični izziv izhaja iz dejstva, da MongoDB tradicionalno ni bil popolnoma kislinski na ravni več dokumentov (zlasti pred različico 4). Vtičniki WordPress, ki se zanašajo na atomske transakcije v več tabelah ali zapletenih povezavah, lahko naletijo na vprašanja celovitosti podatkov ali nedosledno vedenje, ko se kot zaledja uporablja MongoDB. MongoDB zagotavlja atomičnost na ravni posameznih dokumentov, vendar mnogi vtičniki WordPress pričakujejo transakcije z več mizami, česar MongoDB ne more zagotoviti sam po sebi.
Poleg tega se lahko vtičniki, ki upravljajo avtentikacijo uporabnikov, vloge in zmogljivosti ali manipulirajo s kompleksnimi strukturami meta podatkov, shranjenih v tabelah MySQL, razbijejo, ker MongoDB zelo drugače obravnava podatke. Na primer, vtičniki, ki izvajajo zapletene poizvedbe ali združevanje podatkov v uporabniških meta-stolpcih ali post meta tabelah, morda ne delujejo pravilno, saj ni neposrednega mongoDB, ki bi ustrezal SQL pridruženim ali relacijskim shemam. Nekatere strani za vtičnike ali nastavitve morda ne bodo prikazale podatkov, ker njihovih pričakovanih poizvedb ni mogoče izvesti na MongoDB.
Vtičniki za pretvorbo ali adapter, ki poskušajo prevesti poizvedbe MySQL v ukaze MongoDB, obstajajo, vendar so pogosto omejeni in nepopolni. Takšni vtičniki lahko obravnavajo le osnovne scenarije in potrebujejo natančno ročno testiranje in razširjeno prilagoditev, da zanesljivo delujejo v proizvodnem okolju. Poleg tega je ohranjanje teh vtičnikov zapleteno, saj morajo biti v koraku z nenehno razvijajočimi se različicami WordPress in MongoDB in ne podpirajo vedno naprednih funkcij WordPress, kot so vrste objav po meri, taksonomije ali večstranske instalacije.
Priljubljeni in zapleteni vtičniki WordPress, kot je Yoast SEO, so pokazali tudi nekaj nestabilnosti ali konfliktov v okoljih, ki ne uporabljajo tradicionalnih nastavitev MySQL, čeprav večina poročanih vprašanj izhaja iz konfliktov vtičnikov, ne pa neposredne nezdružljivosti MongoDB. Vendar je treba opozoriti, da mnogi priljubljeni vtičniki preprosto ne podpirajo MongoDB, kar omejuje njihovo varno uporabo pri takšni nastavitvi. Razvijalci vtičnikov običajno ne oblikujejo za nerelacijske baze podatkov, zato se združljivost pogosto ne vzdržuje ali preizkuša z MongoDB.
Medtem ko lahko MongoDB ponuja prednosti, kot so razširljivost in prilagodljivo oblikovanje shem, te koristi izravnajo praktične težave pri prilagajanju Wordpressove arhitekture in ekosistema NOSQL. Nekateri razvijalci predlagajo alternativne pristope, kot je nadaljevanje uporabe MySQL za WordPress, hkrati pa izkoriščajo MongoDB za posebne komponente aplikacij, kot so predpomnjenje, shranjevanje vrednosti ključev ali serviranje aplikacij Frontend, namesto da bi v celoti zamenjali MySQL.
Če povzamemo, znane težave s priljubljenimi vtičniki WordPress in MongoDB vključujejo:
- Nezdružljivost zaradi SQL Reliance: Večina vtičnikov pričakuje, da je MySQL Backdend in izdala poizvedbe SQL, ki jih MongoDB ne more izvesti.
- Pomanjkanje relacijskih podatkov: MongoDB-ov model, ki temelji na dokumentih, je v nasprotju s pričakovanji o relacijskih podatkih, združevanju in transakcijah v vtičnikih.
- Podpora delne kisline: Omejena podpora za transakcije v MongoDB lahko povzroči težave s skladnostjo podatkov v vtičnikih, ki pričakujejo popolno skladnost s kislino.
- Funkcionalnosti BREZPLAČNEGA vtičnika: Uporabniške vloge vtičnikov, metapodatki in zapletene poizvedbe pogosto ne uspejo ali kažejo manjkajoče podatke.
- Zahtevana je kompleksna migracija in prilagajanje: vtičniki, ki poskušajo premostiti MySQL in MongoDB, pogosto delujejo le delno in zahtevajo obsežno testiranje.
- Pomanjkanje uradne podpore: Večji vtičniki redko ponujajo uradno podporo MongoDB, kar ima za posledico nepodprto ali hrošči.
- Konflikti in nestabilnost vtičnikov v nestandardnih okoljih: Nekateri vtičniki, kot je Yoast SEO, so imeli težave s stabilnostjo, kadar se uporabljajo v nekonvencionalnih nastavitvah.