読者です 読者をやめる 読者になる 読者になる

中年engineerの独り言 - crumbjp

LinuxとApacheの憂鬱

時系列データとMongoDB2.4の新機能Hash based sharding

実は数年前(MongoDB 1.6〜1.8の時期)にログをリアルタイムに全てmongodbに叩き込んで期間毎に解析する仕組みを作ろうとして挫折した事がある。理由は幾つかあったのだが主に cappadコレクションでは解析時の負荷とログ投入負荷が重なってしまう。 → 最終的…

MongoDB sharding 関連コマンド

Sharding関連の主要操作 勉強ついでに本家のマニュアルを翻訳しておいた。 が、、3、4日経っても反映されないのな。。。 多分ドキュメントオーナーがサボってて承認してないんだろう。 その内反映されるだろうからいいや。。 バランサーを開始 sh.startBal…

MongoDBのデータファイル同期について

MongoDBのストレージエンジン ココで触れた通り MongoDBは書き込みリクエストを受け付けると、一旦、内部キューにデータを積み、 バックグラウンドスレッド(journal)によって、journalファイルとデータファイルのmmap領域に書き込まれる。 その後、更にバッ…

Mongo ghost sync & slaveDelay

I updated the previous slide that was added slaveDelay and its (serious) probrem !! Ghost sync & slaveDelay 前回のスライドをアップデートして、slaveDelayとその問題を追記しました。 概要 Ghost sync MongoDB replica set のnode間のネットワーク障…

Ghost sync

Ghost sync MongoDBのレプリカセットではデータの書き込みは常にPrimaryに行わる。 各Secondary(slave)は『基本』Primaryから同期する。 ただし、色々な理由でPrimaryから同期出来ない場合は別のSecondaryから同期をする事がある。 なんでこんな事するのか?…

Mongo threads 日本語版

この記事はmongoのソースを読み解きたい人向けです。 それ以外の人には多分有意な情報は無いかと。。また私自身がコードリーディングした時に書き散らしたメモを纏めただけなので 精確じゃなかったり諦めたりした部分もありますので、ご了承ください。 スタ…

Mongo threads

This article is for the man who try to read the source code.I have to make a lot of memos when I read the large percent of the source code.This is the summary of it. Startup sequence Threads Thread name will appear in the log. For instance…

クライアント接続時のmongod (シーケンス)

クライアント接続時の挙動 シーケンス図、第2弾mongodはクライアント毎に1本のスレッドを立てる。この辺りのコードはアッチコッチに飛びまくるので追い難い。 ASIOは昔からビルドすら通らないので無視無視・・・ 最近やっとNOT READY YETって書かれた(苦笑)…

mongodのスレッド構成

最近mongodを解析してるのだけど超複雑なのでテキストメモじゃ駄目だーなので、理解できるまで少しずつ図にしていくつもり手始めにReplicaSetモードのmongodのスタートアップシーケンス。(master/slave等は除外)各スレッドの役割や動作などはこれから解析。…

mongo-hadoop & mahout でドキュメントのクラスタリング(関連付け)

Solrが結構困ったちゃん 全文検索エンジンSolrは便利なのだが、どうもAvailavilityに問題がある様に思う。いや、環境がPoorなのもあるのだけれども GCも、PV負荷も、Indexing関連処理も して無い時間帯なのにクエストが刺さる事が多々ある! 今までは色々な…

またまたmongo-php-driver問題

前回の困ったちゃんをまた直しました・・・また一言!mongo-php-driver はマトモに動かん!!いつの間にかmasterブランチにメモリリークが組み込まれてる!! → v1.2ブランチは無事なんだってこんなに頻繁にメモリリークをぶっ込むんだろうか?ったく・・・…

荒ぶるmongos様の解析

前回(荒ぶるmongos様)の続きとりあえずgrepレベルでサラっと構造を読んでみた。まだ追記します 一旦終わり! 解析途中経過 DBConnectionPool コイツが重要っぽい class DBConnectionPool : public PeriodicTask { : } PeriodicTask このクラスは毎分起動task…

荒ぶるmongos様

Sharding構成で苦しんだ時の状況 現在mongosのコードを解析中なので、状況だけ。 ごく一般的な利用方法だと思うのだけどShardingは取扱いに注意が必要。 システム構成 実際はMongoDBサーバも沢山あってShardingを構成しているのですが 今回の現象は1台でも…

MongoDB and PHP の問題

まず一言!mongo-php-driver はマトモに動かん!! (安心して使えるバージョンがない) やれやれ・・・『PHPじゃMongoDBが使えない』ってんじゃ寂しいのでちまちま直して使っています。 バージョン別のドライバの状態とパッチ 1.2.0 以前 数々の致命的な問…