[前][次][番号順一覧][スレッド一覧]

mysql:16228

From: 二見 修康[DNPデジタルコム] <二見 修康[DNPデジタルコム] <futami-n2@xxxxxxxxxx>>
Date: Fri, 10 Apr 2015 16:02:40 +0900 (JST)
Subject: [mysql 16228] Re: _[mysql_16226]_Re:_[m ysql_16224]_大量なデータの扱いについて

yoku ts.様
二見です、お世話になっております

下記の件

ご教授ありがとうございます
参考にさせて頂き、色々試してみます!

以上、よろしくお願いいたします

On Thu, 9 Apr 2015 01:49:33 +0900
"yoku ts." <yoku0825@xxxxxxxxxx> wrote:

> あ、追伸です。
> 
> CREATE TABLE文の中では
> 「もともとプライマリーキーだった」serial_codeにUNIQUE制約がありませんでしたが、
> > index idxserial_mst_serial_code ( serial_code )
> UNIQUE KEYの場合fast index
> creationが効かなくなりますので、innodb-sort-buffer-sizeはいじっても効果がないです。
> 
> 
> yoku0825,
> 
> 
> 2015年4月9日 1:13 yoku ts. <yoku0825@xxxxxxxxxx>:
> > こんばんは、yoku0825といいます。
> >
> > ぱっと思いつくところをつらつらと。。
> >
> > MySQLは好きに再起動できる、データロードは初期データのロードだけで、その後はバルクロードされることはない、と仮定しての話です。
> >
> >
> > ## あとでもとに戻すもの
> > * skip-innodb-doublewrite # ロード中にクラッシュしたらやり直す
> > * innodb-flush-log-trx-commit= 0 # 同上
> > * innodb-log-buffer-size= 256M # もうちょっと大きくてもいいかも
> > * innodb-log-file-size= 2G, innodb-log-files-in-group= 4 くらい #ログファイル大きめ
> > * innodb-sort-buffer-size= 64M # ALTER TABLE用
> > * innodb-adaptive-hash-index= 0 # I/Oバウンドならこれで良いかと
> >
> > ## 様子を見ながら
> > * innodb-io-capacity= innodb-io-capacity-max #
> > I/Oが遊んでいるようであれば増やす(HDD1玉ならデフォルトのままでもいいかと)
> >
> > ## 効果があるかはわからないですが
> > * innodb-autoextend-increment= 256M # .ibdファイルの拡張単位,
> > innodb-file-per-table= 0の時にibdata1を大きめに初期化するのと同じ考え
> >
> > でMySQLを起動して、
> > * セカンダリーキーはつけないでCREATE TABLE
> > * LOAD DATA INFILE (handlersocketとか使ってみるのもよさそうな予感がします)
> > * ALTER TABLE serial_mst ADD KEY .. (serial_code);
> > ここでパラメーターを戻して再起動、とわたしならこうやります。
> >
> > 前にやった時の記事が出てきました(もともとの目的は違いましたがバルクロードの速度比較みたいになってる)
> >
> > 日々の覚書: MySQLインスタンス間でテーブルを移行する投げ遣りベンチマーク
> > http://yoku0825.blogspot.jp/2013/11/mysql.html
> >
> >
> >
> > その他、手前味噌なものも含めてご参考までに。。
> >
> > 漢(オトコ)のコンピュータ道: たった3秒でInnoDBのデータローディングが快適になるライフハック
> > http://nippondanji.blogspot.jp/2010/03/innodb.html
> >
> > MySQL 5.6における大量データロード時の考慮点 - SH2の日記
> > http://d.hatena.ne.jp/sh2/20131007
> >
> > 忙しい人のための MySQL 5.7.6 DMR における InnoDB Flushing の変更点について | GREE Engineers' Blog
> > http://labs.gree.jp/blog/2015/03/13735/
> >
> > 日々の覚書: MySQL 5.6.4で実装されたinnodb-sort-buffer-sizeの値
> > http://yoku0825.blogspot.jp/2014/05/mysql-564innodb-sort-buffer-size.html
> >
> >
> >
> > yoku0825,
> >
> > 2015年4月8日 21:39 二見 修康[DNPデジタルコム] <futami-n2@xxxxxxxxxx>:
> >> 二見と申します、お世話になっております
> >>
> >> 久しぶりの投稿となります(2009年以来?)
> >> ちょっと皆様のご意見を伺いたいのですが・・・
> >>
> >> 下記の様な環境にて
> >>
> >>>Red Hat Enterprise 5.6
> >>>MySQL 5.6
> >>>
> >>>
> >>>create table serial_mst (
> >>> serial_code     varchar(16) not null,
> >>> serial_seq       bigint(16) unsigned zerofill auto_increment not null,
> >>> update_date  timestamp,
> >>>
> >>> primary key ( serial_seq ),
> >>> index idxserial_mst_serial_code ( serial_code )
> >>>) TYPE = InnoDB;
> >>
> >> シリアルコードを500万件毎にLOAD DATAしております
> >>
> >> メモリは8GありMySQLで5G使用しているとの事です
> >>  #サーバ設定のチームに聞いた情報です、曖昧ですみません
> >>
> >> 3億とか4億コードくらい入れるつもりなのですが
> >> 件数が増えるごとに登録が徐々に遅くなり
> >> 1億3000万件越えた辺りから極端に遅くなってきます
> >>       0 ⇒  500万 1分13秒
> >> 3000万⇒3500万 2分57秒
> >> 9000万⇒9500万 4分48秒
> >>
> >> 11500万⇒12000万 10分11秒
> >> 12500万⇒13000万 37分18秒
> >> 13500万⇒14000万 73分
> >> 14500万⇒15000万 96分
> >> 15500万⇒16000万 112分
> >>
> >> 19500万⇒20000万 157分
> >>
> >> プライマリキーをserial_code⇒serial_seqに変更した事で
> >> トータルの登録時間が
> >> 2億件で75時間⇒30時間に多少早くなりました
> >>
> >> メモリを増やす事で
> >> 1億3000万件の遅延ポイントを遅らせる事は出来そうですが
> >> (例えばメモリを倍に増やしてMySQLを10Gにすれば2億6000万近くになると思わ
> >> れる)
> >> 何か他に良い方法は無いでしょうか?
> >>
> >> まだ試して無いですが、
> >> Indexを無効にして3〜4億データを作成後Indexを貼るとか
> >> (その場合Indexの生成にもの凄く時間が掛かるとかはちょっと怖いのですが)
> >>
> >> 何か良い方法をご存知でしたらお教え頂けると有り難いです
> >>
> >> 宜しくお願い致します
> >>
> >> ※部署名が変わりました
> >> -------------------------------------------------------
> >>   DNP DIGITALCOM
> >>  システムソリューション本部
> >>   第1システム開発室 第2グループ
> >>    二見 修康
> >>
> >>   〒141-8001
> >>     品川区西五反田3-5-20 DNP五反田ビル5F
> >>
> >>     TEL 03-6431-6324 内線 6324
> >>     FAX 03-6431-6193
> >>    Mail: Futami-N2@xxxxxxxxxx
> >>
> >>
> >>
> >>

※部署名が変わりました
-------------------------------------------------------
  DNP DIGITALCOM
 システムソリューション本部
  第1システム開発室 第2グループ
   二見 修康

  〒141-8001
    品川区西五反田3-5-20 DNP五反田ビル5F

    TEL 03-6431-6324 内線 6324
    FAX 03-6431-6193
   Mail: Futami-N2@xxxxxxxxxx




[前][次][番号順一覧][スレッド一覧]