Saya melakukan riset tentang kemungkinan untuk memigrasi WordPress ke MongoDB atau database NoSQL lainnya untuk membuatnya benar-benar terukur. Jahitannya ada cara yang cukup baik (sayangnya tidak pendek) untuk mencapai ini.
Sebagai permulaan saya telah melakukan sedikit skrip dalam PHP yang memigrasi tabel MySQL ke koleksi Mongo melakukan beberapa agregasi sambil mempertahankan dependensi relasional asli:
https://github.com/virtimus/mysql2mongo
Langkah selanjutnya yang sekarang saya kerjakan adalah membuat MongoDB memahami sesuatu yang akan "dekat" dengan SQL - Saya menamainya "nSQL" - itu dialek berbasis json dari SQL yang beroperasi pada koleksi hirarki
https://github.com/virtimus/nsqlserver
Ini adalah pekerjaan yang sedang berjalan - belum ada yang berkomitmen - namun saya sudah offline dengan versi prototipe yang memproses permintaan nSQL sederhana dari formulir:
db.runCommand(
{nsQL:
{
sel:['id','emailUse','emailType','emailSubject'], // properties/colums to return
flt:{emailUse:0,emailType:'test'}, // filter (where phrase equivalent)
ctb:'wp_eshop_emails' // table equivalent (can be agregated in collection as path)
},
cid:ci, //connection id
sid:si //session id
})
Ia dapat bekerja pada kedua MySQL, MongoDB atau hampir semua backend Relational / non relational lainnya Ini kompilasi dari dua proyek: - garpu MongoDB (versi MongoDB sedikit diperluas oleh beberapa perintah "nSQL") - garpu proyek SQLRelay (penanganan proksi DB relasional) banyak SQL backends)
OK - jadi komponen di atas akan menjadi bagian utama pekerjaan. Ada banyak pengembangan untuk membuatnya berfungsi penuh (penanganan agregasi, penyortiran, filter sub dokumen, sisipan / pembaruan / penghapusan, mungkin juga bergabung dll). Efek akhir tampaknya sangat menjanjikan secara umum - tidak hanya untuk WP. Bayangkan misalnya migrasi SQL ke NoSQL menggunakan beberapa perintah "INSERT FROM INTO" sederhana ...
Pekerjaan lainnya adalah menghubungkannya dengan WordPress - melalui semacam penerjemah SQL2NSQL (yaitu plugin PDO ini di atas)
Apakah ada yang tertarik? Bantuan dalam analisis / pengembangan? Investasi keuangan?