Existem planos para o Wordpress suportar outros bancos de dados que não o MySQL?

8

Há muito tempo desejei que o Wordpress suportasse o SQL Server, mas também seria realmente incrível se suportasse o MongoDB (por exemplo.)

Minha pergunta é : existem planos para isso?

A equipe principal do Wordpress está tão comprometida com o MySQL que não há planos de oferecer qualquer tipo de suporte para outros bancos de dados (pelo menos em breve?)

Este post me leva a acreditar que algo assim não vai acontecer:

http://codex.wordpress.org/Using_Alternative_Databases

No entanto, como um exemplo (embora eu prefira o Wordpress), o Drupal 7 agora possui um ...

Camada de abstração de banco de dados, permitindo o uso de muitos bancos de dados, como Maria DB, Microsoft SQL Server, MongoDB, Oracle, MySQL, PostgreSQL ou SQLite

http://drupal.org/node/1015646

Justin Jenkins
fonte

Respostas:

5

Olá, Justin Jenkins:

É muito difícil dizer se o WordPress o apoiará ou não, pois eles podem tomar essas decisões e nós não. No entanto, podemos olhar para algumas evidências.

Servidor SQL?

Para o SQL Server, por um lado, um ticket trac foi debatido e paralisado há um ano; desde então, mais recentemente, parece que a Automattic e a Microsoft estão explorando as relações comerciais:

Mongo DB?

Para o Mongo DB, havia uma pergunta de suporte que o propunha, mas nenhum reconhecimento oficial e nenhuma tração real:

Previsão?

Portanto, o SQL Server parece mais provável que o MongoDB, pelo menos da Automattic no curto prazo, mas isso é apenas um palpite e não um em que eu realmente apostaria.

E os plugins?

Mais importante, seria necessário considerar que um grande benefício do WordPress é o enorme repositório de plugins gratuitos e muitos deles codificam diretamente o MySQL e, portanto, deixariam de funcionar e reduziriam muito os benefícios do WordPress.

Módulos Drupal e seu suporte a outros bancos de dados além do MySQL

Além do mais, no mundo Drupal, você tem suporte a vários bancos de dados, mas a realidade é que a grande maioria dos módulos Drupal que interagem com o banco de dados suportam apenas o MySQL. O suporte a vários bancos de dados exige muito mais esforço e a maioria dos desenvolvedores de módulos do Drupal simplesmente não tem os recursos ou a tendência de criar plug-ins gratuitos com esses níveis de suporte, e eu esperaria que o mesmo fosse verdade com o WordPress.

Casos de uso do mundo real?

O que me leva a uma pergunta honesta: quais são os casos de uso do mundo real para isso? Como tecnólogo, sempre considero esses tipos muito legais, mas como empreendedor também os vejo de forma pragmática e solicito casos de uso. Existem situações em que o MySQL realmente não é uma opção, mas o SQL Server? As instalações em que os benefícios do Mongo DB excederiam as desvantagens?

(E, o que é mais importante, existem empresas que realmente precisam disso que estão dispostas a gastar dinheiro para apoiar o desenvolvimento e a manutenção? Mais especificamente, eu ficaria curioso para conhecer suas motivações? Mais uma vez, essa é uma pergunta honesta; realmente, pesquisa de mercado e para não desafiá-lo de forma alguma a perguntar.)

Próximos passos?

Se você quiser ouvir mais da boca do cavalo, sugiro que pergunte na lista de discussão wp-hackers e publique um ticket de proposta para o MongoDB no trac .

ATUALIZAR

Acabei de encontrar esta página no Microsoft.com que afirma que possui um patch para usar o SQL Server com o WordPress. Eu não tentei, então não posso garantir, mas aqui está a página WordPress da Microsoft:

MikeSchinkel
fonte
Obrigado pela resposta detalhada. As notícias do SQL Server são bastante interessantes ... o principal motivo que eu até pergunto é porque, em um ambiente que executa o SQL Server (ou MongoDB, por exemplo) quando todo o restante de nossos dados ... intranet, usuários, cms, etc, etc, como o SQL Server, o fato de o Wordpress suportar apenas o MySQL é muito limitador (por exemplo, é difícil sincronizar ou usuários, ou compartilhar modelos etc.) Se os dados de back-end armazenados no SQL Server abririam uma enorme variedade de opções para nós.!
9117 Justin Jenkins
@ Justin Jenkins - Obrigado pela explicação de por que você quer isso; para minimizar servidores e manutenção. Outra pergunta honesta: a necessidade do SQL Server / Mongo DB é importante o suficiente para acessar funcionalidades limitadas do WordPress? (ou seja, menos de plugins apoio.)
MikeSchinkel
7

Codec

Veja: http://codex.wordpress.org/Using_Alternative_Databases#Solutions/

Alternativa de plug-in

Eu usei este plugin: http://wordpress.org/extend/plugins/pdo-for-wordpress/ ultimamente para executar o WordPress no meu NAS usando um banco de dados SQLITE no back-end em vez do MySQL, que funcionou muito bem.

Quais bancos de dados são suportados?

Atualmente, a camada básica suporta qualquer banco de dados suportado pelo PDO.

  • MS SQL Server (PDO) - Microsoft SQL Server e Sybase Funções (PDO_DBLIB)
  • Firebird / Interbase (PDO) - Funções Firebird / Interbase (PDO_FIREBIRD)
  • IBM (PDO) - Funções IBM (PDO_IBM)
  • Informix (PDO) - Funções do Informix (PDO_INFORMIX)
  • MySQL (PDO) - Funções do MySQL (PDO_MYSQL)
  • Oracle (PDO) - Funções do Oracle (PDO_OCI)
  • ODBC e DB2 (PDO) - Funções ODBC e DB2 (PDO_ODBC)
  • PostgreSQL (PDO) - Funções do PostgreSQL (PDO_PGSQL)
  • SQLite (PDO) - Funções SQLite (PDO_SQLITE)
  • Observe que, através da extensão PDO_ODBC, todos os bancos de dados suportados por ODBC também são suportados, sujeitos à disponibilidade de drivers

No entanto, cada banco de dados precisa de seu próprio driver e, atualmente, os únicos drivers escritos para este plugin são para

  • sqlite e
  • mysql

Então, para o MySQL, alguém deve escrever um driver

Edelwater
fonte
Obrigado pela informação sobre DOP (SQLite) Para WordPress, parece interessante.
9117 Justin Jenkins
11
Este plug-in não foi tocado há mais de dois anos e não oferece suporte ao WP 3.x. É uma descoberta interessante e seria bom se alguém pudesse atualizá-la e depurá-la, mas como está agora, não é uma solução muito útil. Existem alguns posts nos fóruns em que as pessoas o cortaram em pedaços para torná-lo semi-funcional, mas parece muito mais complicado do que vale a pena.
SickHippie
2

Eu fiz algumas pesquisas sobre as possibilidades de migrar o WordPress para o MongoDB ou outro banco de dados NoSQL para torná-lo realmente escalável. Costuras, há uma maneira bastante boa (infelizmente não é curta) de conseguir isso.

Para começar, eu fiz pouco script em PHP, que está migrando tabelas MySQL para coleções Mongo, fazendo algumas agregações, preservando as dependências relacionais originais:

https://github.com/virtimus/mysql2mongo

O próximo passo no qual estou trabalhando agora é fazer o MongoDB entender algo que seria "próximo" ao SQL - chamei de "nSQL" - é o dialeto baseado em json do SQL operando em coleções hierárquicas

https://github.com/virtimus/nsqlserver

É um trabalho em andamento - ainda não foi confirmado - no entanto, eu já tenho a versão offline do protype que processa consultas nSQL simples do formulário:

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
    })

Ele pode funcionar no MySQL, MongoDB ou quase qualquer outro back-end relacional / não relacional. É compilação de dois projetos: - um fork do MongoDB (versão MongoDB levemente estendida por alguns comandos "nSQL") - um fork do projeto SQLRelay (manipulação de proxy do banco de dados relacional backends SQL)

OK - então o componente acima seria a parte principal do trabalho. Há muito desenvolvimento para torná-lo totalmente funcional (manipulação de agregações, classificação, filtros de subdocumentos, inserções / atualizações / exclusões, talvez também junções etc.) O efeito final parece ser muito promissor em geral - não apenas para o WP. Imagine, por exemplo, migração de SQL para NoSQL usando vários comandos "INSERT FROM INTO" simples ...

O resto do trabalho seria conectá-lo ao WordPress - através de algum tipo de tradutor SQL2NSQL (ou seja, este plugin DOP acima)

Existe alguém interessado? Ajuda na análise / desenvolvimento? Investimento financeiro?

Virtimus
fonte
-1

O PDO para WordPress funciona fantástico se você não se importa em ficar preso no WP 2.9.1RC1, pois não é suportado no WP 3.x. Infelizmente, existem muitos plugins criados para serem executados apenas no WP 3.x

IronHammer
fonte