MySQL以外のデータベースをサポートするWordpressの計画はありますか?


8

WordpressがSQL Serverをサポートすることをずっと望んでいましたが、MongoDB(たとえば)をサポートしているとしたら本当に素晴らしいでしょう。

私の質問は、そうする計画はあるのでしょうか?

コアのWordpressチームはMySQLにコミットしているので、他のDBのサポートを提供する計画はありません(少なくともいつかはいつですか?)

この投稿により、そのようなことは起こらないと私は信じるようになりました。

http://codex.wordpress.org/Using_Alternative_Databases

ただし、例として(私はWordpressのほうがずっと好きですが)、Drupal 7には...

Maria DB、Microsoft SQL Server、MongoDB、Oracle、MySQL、PostgreSQL、SQLiteなどの多くのデータベースの使用を可能にするデータベース抽象化レイヤー

http://drupal.org/node/1015646

回答:


5

こんにちは@Justin Jenkins:

WordPressがサポートするかしないかを判断するのは非常に困難です。なぜなら、彼らが決定を下すことができ、私たちはできないからです。しかし、いくつかの証拠を見ることができます。

SQLサーバー?

一方でSQL Serverの場合、1年前にTracチケットが議論され、行き詰まりました。それ以来、AutomatticとMicrosoftはビジネス関係を模索しているようです。

Mongo DB?

Mongo DBについては、それを提案するサポートの質問がありましたが、公式の承認も実際の牽引力もありませんでした。

予報?

したがって、SQL Serverは、少なくとも短期的にはAutomatticから、MongoDBよりも可能性が高いように見えますが、それは推測にすぎず、実際に私が賭けているものではありません。

プラグインはどうですか?

さらに重要なことは、WordPressの主な利点は無料のプラグインの巨大なリポジトリであり、それらの多くはMySQLを直接エンコードするため、動作を停止し、WordPressの利点の多くを鈍らせることを考慮する必要があります。

DrupalモジュールとMySQL以外の他のデータベースのサポート

さらに、Drupalの世界では複数のデータベースがサポートされていますが、実際には、データベースと対話するDrupalモジュールの大部分はMySQLのみをサポートしています。複数のデータベースをサポートするには何倍もの労力が必要であり、ほとんどのDrupalモジュール開発者は、これらのレベルのサポートを備えた無料のプラグインを作成するためのリソースや傾向さえないので、WordPressでも同じことが言えると思います。

実際のユースケース?

これは正直な質問に私を連れて行きます:これの実際のユースケースは何ですか?私自身、技術者として、私は常にこれらのタイプを本当にかっこいいと考えていますが、起業家としては、実用的にも見極め、ユースケースを求めています。MySQLが本当にオプションではないがSQL Serverがオプションである状況はありますか?Mongo DBのメリットがマイナスになるインストールはありますか?

(そしてこれと同じくらい重要なこととして、開発と保守をサポートするためにお金を費やすことをいとわない、本当にこれを必要とする企業はありますか?より具体的には、私はあなたの動機を知りたいと思いますか?繰り返しますが、これは正直な質問です;市場調査、そして尋ねるために決してあなたに挑戦しないでください。)

次のステップ?

馬の口からもっと聞きたい場合は、wp-hackersメーリングリストで質問し、MongoDBのプロポーザルチケットをtracに投稿することをお勧めします。

更新

WordPressでSQL Serverを使用するためのパッチがあるとMicrosoft.comこのページを見つけたところです。私はそれを試しなかったので、それを保証することはできませんが、これはMicrosoftのWordPressページです:


詳しい回答ありがとうございます。SQL Serverのニュースは非常に興味深いです...私が尋ねる主な理由は、SQL Server(またはMongoDBなど)を実行する環境で、データの残りすべてがイントラネット、ユーザー、cmsなどであるときです。など、SQL Serverは、WordpressがMySQLのみをサポートしていることを非常に制限している(たとえば、ユーザーの同期、またはテンプレートの共有などが難しい)ことになります。SQLServerにバックエンドデータを保存すると、巨大なホストが開かれます。私たちのためのオプション。
Justin Jenkins

@Justin Jenkins-これがなぜ必要かについての説明をありがとう。サーバーとメンテナンスを最小限に抑えるため。別の正直な質問:SQL Server / Mongo DBの必要性は、WordPressの制限された機能にアクセスするのに十分重要ですか?(つまり、プラグインのサポートが少なくなります。)
MikeSchinkel、2011年

7

コーデック

参照:http : //codex.wordpress.org/Using_Alternative_Databases#Solutions/

プラグインの代替

私はこのプラグインを使用しました:最近、MySQLの代わりにバックエンドでSQLITEデータベースを使用してNASでWordPressを実行するために、http://wordpress.org/extend/plugins/pdo-for-wordpress/を使用しました。

どのデータベースがサポートされていますか?

現在、基本層はPDOでサポートされているすべてのデータベースをサポートしています。

  • MS SQL Server(PDO)-Microsoft SQL ServerおよびSybase関数(PDO_DBLIB)
  • Firebird / Interbase(PDO)-Firebird / Interbase関数(PDO_FIREBIRD)
  • IBM(PDO)-IBM関数(PDO_IBM)
  • Informix(PDO)-Informix関数(PDO_INFORMIX)
  • MySQL(PDO)-MySQL関数(PDO_MYSQL)
  • Oracle(PDO)-Oracle関数(PDO_OCI)
  • ODBCおよびDB2(PDO)-ODBCおよびDB2関数(PDO_ODBC)
  • PostgreSQL(PDO)-PostgreSQL関数(PDO_PGSQL)
  • SQLite(PDO)-SQLite関数(PDO_SQLITE)
  • PDO_ODBC拡張を介して、利用可能なドライバーに応じて、ODBCでサポートされているすべてのデータベースもサポートされます。

ただし、各データベースには独自のドライバーが必要であり、現在このプラグイン用に作成された唯一のドライバーは

  • sqliteと
  • mysql

MySQLの場合、誰かがドライバを書く必要があります


PDO(SQLite)に関する情報をお寄せいただきありがとうございます。
Justin Jenkins、

1
このプラグインは2年以上触れられておらず、WP 3.xのサポートはありません。これは興味深い発見であり、誰かがそれを更新してデバッグできればいいのですが、現状ではあまり有用な解決策ではありません。フォーラムに投稿された投稿の一部は、人々がそれをハッキングして半機能にしたものですが、それよりもはるかに面倒なようです。
SickHippie 2012年

2

WordPressをMongoDBまたは他のNoSQLデータベースに移行して、本当にスケーラブルにする可能性について、いくつかの調査を行いました。縫い目には、これを実現するための非常に良い方法があります(残念ながら短い方法ではありません)。

最初に、元のリレーショナル依存関係を維持しながら、MySQLテーブルをいくつかの集計を行うMongoコレクションに移行する小さなスクリプトをPHPで実行しました。

https://github.com/virtimus/mysql2mongo

私が現在取り組んでいる次のステップは、SQLに「近い」ものをMongoDBに理解させることです-私はそれを「nSQL」と名付けました-階層的コレクションで動作するSQLのjsonベースの方言です

https://github.com/virtimus/nsqlserver

それは進行中の作業です-まだ何もコミットされていません-ただし、次の形式の単純なnSQLクエリを処理するwプロタイプバージョンはすでにオフラインになっています。

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

これは、MySQL、MongoDB、または他のほとんどすべてのリレーショナル/非リレーショナルバックエンドの両方で動作します。2つのプロジェクトのコンパイルです。多くのSQLバックエンド)

OK-したがって、上記のコンポーネントが作業の主要部分になります。完全に機能させるために多くの開発が行われています(集計の処理、並べ替え、サブドキュメントフィルター、挿入/更新/削除、場合によっては結合など)。WPだけでなく、一般的に最終効果は非常に期待できるようです。たとえば、いくつかの単純な「INSERT FROM INTO」コマンドを使用したSQLからNoSQLへの移行を想像してみてください...

残りの作業は、WordPressと接続することです-ある種のSQL2NSQLトランスレータ(つまり、上記のこのPDOプラグイン)を介して

興味のある人はいますか?分析/開発に役立ちますか?金融投資?


-1

WordPress用PDOは、WP 3.xではサポートされていないため、WP 2.9.1RC1で立ち往生してもかまわない場合は素晴らしい働きをします。残念ながら、WP 3.xでのみ実行するように作成されたプラグインはたくさんあります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.