2009年6月10日

[mysql 14913] Re: バッチ処理のUPDATEでmysqld got signal 11が発生する 【再発】他に類似事象?有り

浅山です。いつもお世話になります。

項目指定の検索と全文検索を行うためのデータをバッチで作っています。
検索はWEBブラウザ←→インターネット←→本システムという経路で行いま
す。全文検索のレスポンス向上のためNgram検索を採用しています。この
Ngramデータ登録のUPDATEでSIGNAL11が発生しています。オンラインで検索
しますのでNgramデータ用にインデックスが必要です。
ストレージ・エンジンはデフォルトのMyISAMです。明示的にInnoDBは指定

していません(ログに出てくるのが不思議)。

In message "[mysql 14895] Re: バッチ処理のUPDATEでmysqld got signal
11が発生する 【再発】他に類似事象?有り",
Kaname Kuji(Y7)様wrote...
>KK@xxxxx です。
>
>私のコメントと、いただいたご回答とがどうかみ合うのか
>ちょっと戸惑いを感じますが、
>なさっている処理は、どれも、ターゲットのテーブルを
>頭から終わりまで読み、処理をする、というもので、
>大きなテーブルから、特定の一件を取り出すような
>インデックスが役に立つ処理が有るように見えません。
>
>つまり、この処理には、インデックスは不要な様に見えます。
>もし、表に出ていない処理にインデックスが有効な処理が有れば
>別ですが、インデックスなしのテーブルで処理された方がよいと思いま
す。
>
>特に、インデックスがエラーの直接の原因になっているようですし。
>
>また、蛇足みたいなコメントですが、
>DBタイプを、InnoDBにされていますが、これも必要ないように見えます。
>この処理では、うまくいかなかったらロールバック、という処理は必要な
いでしょう。
>
>そうするとMyISAMの方が軽いですし...
>
>是非、一度MyISAMテーブルで、インデックスなし、で処理を試されては
>いかがでしょうか?
>
>
>Subject: [mysql 14894] Re: バッチ処理のUPDATEでmysqld got signal
11が発生する
> 【再発】他に類似事象?有り
>
>
>> 浅山です。いつもお世話になります。
>>
>> 全文検索の下処理としてやってます。
>>
>> >KK@xxxxx です。
>> >
>> >この処理に、インデックスは不要なように見えますね。
>> >DBすらいらない。シークエンシャルファイルをCOBOLで
>> >バッチ処理、みたいな感じの処理ですね。
>> >
>> >インデックスをとったテーブルでやってみたらいかがでしょうか?
>> >
>> >> 下記のような処理をしています。
>> >>
>> >> (1)Aテーブルを順に読み出し、レコード毎に全VARCHARフィールドと
>> TEXT
>> >> フィールドの値を連結し、それをBテーブルのXフィールドに
INSERT。件
>> 数は
>> >> 約20万件。
>> >>
>> >> (2)上記(1)を全件処理した後、BテーブルのXフィールドを順に読み

>> し、
>> >> Ngramデータを生成。そのデータをYフィールド(LONG TEXT属性)に
>> >> UPDATE。UPDATEは1件当たり十キロバイト〜数十キロバイト。
>
>
>
>
>


2009年6月10日 11:58:43 (^o^)浅山雄三

投稿者 xml-rpc : 2009年6月10日 12:57
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/85747
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。