ウィキペディア (英語) に関するリンク構造データをできるだけ転送し終えました。基本的に、ウィキペディアの最新のダンプ リポジトリから SQL ダンプをダウンロードしました。MySQL の代わりに PostgreSQL を使用しているため、パイプライン シェル コマンドを使用して、これらすべてのダンプをデータベースにロードすることにしました。
とにかく、これらのテーブルの 1 つに 2 億 9500 万行あります。pagelinksテーブルです。すべてのウィキ内ハイパーリンクが含まれています。私のラップトップから、pgAdmin III を使用して、次のコマンドをデータベース サーバー (別のコンピューター) に送信しました。
SELECT pl_namespace, COUNT(*) FROM pagelinks GROUP BY (pl_namespace);
それは今1時間ほどそこにあります。問題は、postmaster が私の非常に限られた HD スペースをますます食い尽くしているように見えることです。今のところ20GBくらい食ったと思います。以前、12 GB の RAM で実行されているため、パフォーマンスの柔軟性を高める (つまり、より多くのリソースを使用できるようにする) ために、postgresql.conf ファイルをいじってみました。私は基本的に、このファイルのほとんどのバイトとそのような関連変数を4倍にして、より多くのRAMを使用してそのことを行うと考えていると思います.
ただし、データベースはあまり RAM を使用していないようです。Linux システム モニターを使用すると、postmaster が 1.6 GB の共有メモリ (RAM) を使用していることがわかります。とにかく、 PostgreSQL が HD リソースをどのように使用しているかを本当に理解していないようです。
ウィキペディア データベースのメタ構造に関しては、役に立つか、興味があるかもしれない優れたスキーマを提供します。
詳細についてはお気軽にお問い合わせください thx.