yoku ts.
yoku0****@gmail*****
2013年 5月 15日 (水) 15:27:33 JST
こんにちは、yokuといいます。
mroongaのファイルに対してfincoreを使ってページキャッシュを覗いてみると、かなりの勢いでページキャッシュに載っていました。
$ sudo ./linux-fincore /data/xxxx/*.mrn*
filename
size total_pages min_cached page
cached_pages cached_size cached_perc
--------
---- ----------- ---------------
------------ ----------- -----------
/data/xxxx/xxxx.mrn
4,096 1 0 1
4,096 100.00
/data/xxxx/xxxx.0000000
21,245,952 5,187 0 7
28,672 0.13
..
/data/xxxx/xxxx.mrn.0000105
1,069,821,952 261,187 0
251,402 1,029,742,592 96.25
/data/xxxx/xxxx.mrn.0000105.001
1,073,741,824 262,144 0
257,991 1,056,731,136 98.42
/data/xxxx/xxxx.mrn.0000105.002
1,073,741,824 262,144 0
255,947 1,048,358,912 97.64
..
---
total cached size: 28,286,222,336
mysqldを落としてもページキャッシュの状態は変わらない気がするので、
たまにはsysctl -w vm.drop_caches=3で追い出すのが正解なのでしょうかね。。
(わたしのところでは、スラッシングまでは行っていないのですが)
yoku ts.
2013年5月15日 14:39 磯部 和広 <k-iso****@rozet*****>:
> いつもお世話になっております。
>
> どうも、mroongaを使う限り、現状のメモリ解放不能問題は進展しそうもないので
> アプローチを変えてみます。
>
> やりたい事は単純に
> 必要なだけ下記を繰り返す
> 複数テーブルに対してヒット件数を取得し、積算する
> 複数テーブルに対してヒットデータを取得する
> です。
>
> 現状「必要なだけ」はファイル(群)渡しです。
>
> これであれば、mroongaではなく、rronngaやgroonga-httpdとの
> 通信で何とかなりそうです。
>
> その場合でも、同様にメモリが解放されない場合が予想されます。
>
> その際には
> http://groonga.org/ja/docs/reference/commands/shutdown.html
> した後で
> http://groonga.org/ja/docs/reference/executables/groonga.html
> で起動し直し
> という流れになるかと思います。
>
> 質問1. この認識(強制解放手順)は正しいでしょうか
> 質問2. もし正しければ、mroongaに応用は不可能でしょうか
>
> 今回のmroongaなDBは、専用となっていて 外部からの接続は無いので
> プログラム側から自由にDBのシャットダウン&再起動が掛けられます。
>
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev