【畢設(shè)進行時-工業(yè)大數(shù)據(jù)胶背,數(shù)據(jù)挖掘】Java Batch數(shù)據(jù)庫寫入百萬條記錄巷嚣!時間減半

正文之前

眾所周知,昨天跑了一百萬條數(shù)據(jù)钳吟,結(jié)果活生生的耗了我

這么多時間M⒘!!沃日昂烨摇F来啤树枫!想死了好么!景东!本來四點多準(zhǔn)備跑完就去健身砂轻,結(jié)果跑完都五點半了,所以只能先去吃飯斤吐,然后晚上去健身了搔涝。妙真。跃惫。。那感覺還是不一樣一些剖张。派阱。所以晚飯多吃了一丟丟诬留,以確保健身完畢不會餓哭!??

正文

今天聽一位老哥的建議贫母。在評論區(qū)文兑!用了batch批處理操作。速度陡增O倭印绿贞!
美滋滋好么!橘原!

還有另外一位老哥建議我用框架籍铁,這個比較麻煩的樣子?所以沒搞了趾断。拒名。。不過還有個建議就是每次在語句上面動手腳芋酌,其實也起到了類似批處理的效果靡狞。不過我昨晚高了一波,發(fā)現(xiàn)在語句里面一次加太多的values的話隔嫡,最后因為行數(shù)不確定甸怕,可能會導(dǎo)致出現(xiàn)null這種值。所以我就沒搞了腮恩。今天看評論看到了batch這種弄法梢杭。所以就去學(xué)了一波。秸滴。搞完之后美滋滋N淦酢!

今天上傳完后的記錄總數(shù)!

運行時間減半了咒唆!美滋滋

只用了2500秒鐘届垫!

下面是代碼時間!全释!

import java.io.*;
import java.text.NumberFormat;
import java.io.IOException;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;


public class WriteGearData {
    protected Mysql_Connect mysql=new Mysql_Connect();


    public void Delete(int max){
        try {
            mysql.Connect();
            Statement statement = mysql.getStatement();
            String DELETE = "delete from gear where id<"+max;
            boolean delete_ok = statement.execute(DELETE);
            if (delete_ok) {
                System.out.println("Have Fun! Boys!\n\n");
            }
            statement.close();
            mysql.Dis_Connect();
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public String getInsertQuery(int id,Object[] name,Object[] value){
        String insert="INSERT INTO gear(id";
        for (int i=0;i<name.length;++i){
            insert+=(","+name[i]);
        }
        insert+=") values("+id;
        for (int i=0;i<value.length;++i){
            insert+=(","+value[i]+"");
        }
        insert+=");";
        return insert;
    }

    public void WriteData() throws IOException {
//        Delete(100000);
        int hz[] = new int [] {0,10,20,30,40,50,60,70,80,90};
        int id = 1005311;
        for (int  x : hz) {
            String filename = "/Users/zhangzhaobo/Documents/Graduation-Design/Data/Healthy Data/h30hz" + x + ".txt";
            Scanner scanner=new Scanner(new FileInputStream(filename));
            Object[] Name = new String[]{"Sensor1","Sensor2","Sensor3","Sensor4","HZ","category"};
            int count = 0;
            try {
                mysql.Connect();
                Statement statement = mysql.getStatement();
                do{
                    //連續(xù)添加多條靜態(tài)SQL
                    Object [] line = new Object[6];
                    NumberFormat nf = NumberFormat.getNumberInstance();
                    nf.setMaximumFractionDigits(1);
                    for (int i=0;i<4;++i){
                        line[i]=Float.parseFloat(nf.format(scanner.nextFloat()));
                    }
                    line[4] = x;
                    line[5] = 1;
                    String INSERT = getInsertQuery(id, Name, line);
                    statement.addBatch(INSERT);
                    id++;
                    count++;
                    //執(zhí)行批量執(zhí)行
                    if (count>10000) {
                        statement.executeBatch();
                        count = 0;
                    }
                }while(scanner.hasNext());
                statement.executeBatch();
                statement.close();
                mysql.Dis_Connect();
            } catch (SQLException e) {
                e.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

正文之后

哎装处。。浸船。為毛總是有人妄迁。。李命。會覺得登淘,借一個程序員的電腦是個很簡單的事情?封字?

總得學(xué)會拒絕不是黔州?!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末阔籽,一起剝皮案震驚了整個濱河市流妻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌仿耽,老刑警劉巖合冀,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件各薇,死亡現(xiàn)場離奇詭異项贺,居然都是意外死亡,警方通過查閱死者的電腦和手機峭判,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進店門开缎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人林螃,你說我怎么就攤上這事奕删。” “怎么了疗认?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵完残,是天一觀的道長。 經(jīng)常有香客問我横漏,道長谨设,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任缎浇,我火速辦了婚禮扎拣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己二蓝,他們只是感情好誉券,可當(dāng)我...
    茶點故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著刊愚,像睡著了一般踊跟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上百拓,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天琴锭,我揣著相機與錄音,去河邊找鬼衙传。 笑死决帖,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蓖捶。 我是一名探鬼主播地回,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼俊鱼!你這毒婦竟也來了刻像?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤并闲,失蹤者是張志新(化名)和其女友劉穎细睡,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體帝火,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡溜徙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了犀填。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蠢壹。...
    茶點故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖九巡,靈堂內(nèi)的尸體忽然破棺而出图贸,到底是詐尸還是另有隱情,我是刑警寧澤冕广,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布疏日,位于F島的核電站,受9級特大地震影響撒汉,放射性物質(zhì)發(fā)生泄漏沟优。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一神凑、第九天 我趴在偏房一處隱蔽的房頂上張望净神。 院中可真熱鬧何吝,春花似錦、人聲如沸鹃唯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坡慌。三九已至黔酥,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間洪橘,已是汗流浹背跪者。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留熄求,地道東北人渣玲。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像弟晚,于是被迫代替她去往敵國和親忘衍。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內(nèi)容