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

mysql:16224

From: 二見 修康[DNPデジタルコム] <二見 修康[DNPデジタルコム] <futami-n2@xxxxxxxxxx>>
Date: Wed, 8 Apr 2015 21:39:10 +0900 (JST)
Subject: [mysql 16224] 大量なデータの扱いについて

二見と申します、お世話になっております

久しぶりの投稿となります(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





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

->   16224 2015-04-08 21:39 [二見 修康[DNPデ�] 大量なデータの扱いについて              
     16225 2015-04-09 01:13 ┣["yoku ts." <yoku0825] Re: [mysql 16224] 大量なデータの扱いについて
     16226 2015-04-09 01:49 ┃┗["yoku ts." <yoku0825]                                     
     16227 2015-04-10 12:20 ┗[HIRATSUKA Sadao <sh2]