zoukankan      html  css  js  c++  java
  • 百度数仓Palo-Doris并发压测性能

    硬件环境

     

     

    表结构

    CREATE TABLE IF NOT EXISTS   tj9
    (
        vin varchar (30) not null,
            inday date not null,
            type1 int not null,
            type2 int not null,
            type3 int not null,
            p1 float not null,
            p2 float not null,
            p3 float not null,
            p4 float not null,
            p5 float not null,
            p6 float not null,
            p7 float not null,
            p8 float not null,
            p9 float not null,
            p0 float not null 
            
    )
    ENGINE=olap
    DUPLICATE KEY(vin,inday)
    PARTITION BY RANGE(inday)
    (
          partition p1 values less than('2021-12-01'),
          partition p2 values less than('2022-02-01'),
          partition p3 values less than('2022-04-01'),
          partition p4 values less than('2022-06-01'),
          partition p5 values less than('2022-08-01'),
          partition p6 values less than('2022-10-01'),
          partition p7 values less than('2022-12-01'),
          partition p8 values less than('2023-02-01'),
          partition p9 values less than('2023-04-01'),
          partition p10 values less than('2023-06-01'),
          partition p11 values less than('2023-08-01'),
          partition p12 values less than('2023-10-01'),
          partition p13 values less than('2023-12-01'),
          partition p14 values less than('2024-02-01'),
          partition p15 values less than('2024-04-01'),
          partition p16 values less than('2024-06-01'),
          partition p17 values less than('2024-08-01'),
          partition p18 values less than('2024-10-01'),
          partition p19 values less than('2024-12-01'),
            partition p20 values less than('2025-02-01'),
          partition p21 values less than('2025-04-01'),
          partition p22 values less than('2025-06-01'),
          partition p23 values less than('2025-08-01'),
          partition p24 values less than('2025-10-01'),
          partition p25 values less than('2025-12-01')
    )
    DISTRIBUTED BY HASH(vin) BUCKETS 50
    PROPERTIES
    (
     "replication_num" = "3"
    );

    数据内容

    数据量

    客户端压测程序

    package org.doris;
    
    import java.sql.*;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.GregorianCalendar;
    import java.util.Random;
    
    public class Yace2 {
    
        public static void main(String[] args) throws Exception {
    
            for (int i = 0; i < 50; i++) {
    
                Thread t1 = new Thread(new Com());
    
                t1.start();
            }
    
        }
    
    
        public static class Com implements Runnable {
    
            Connection con = null;
            ResultSet rs = null;
            PreparedStatement ps = null;
            String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
            String CONNECTION_URL = "jdbc:mysql://192.168.154.107:9030/test?rewriteBatchedStatements=true";
            String driverClassName = "com.mysql.cj.jdbc.Driver";    //启动驱动
            String url = "jdbc:mysql://192.168.154.107:9030/test";    //设置连接路径
            String username = "root";
    
            public Com() {
                try {
    //            com.cloudera.impala.jdbc41.Driver v = null;
                    Class.forName(driverClassName);
                    con = DriverManager.getConnection(url, "root", null);
    
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
    
            @Override
            public void run() {
    
    
                while (true) {
                    try {
                        Random rand = new Random();
    
                        int entry_time_start = rand.nextInt(700) + 1;
    
                        int entry_time_end = entry_time_start + 30;
    
    //                String sql = "select a.tid,count(*),sum(std_mileage),avg(diff_mileage),avg(gps_mileage),avg(meter_mileage),avg(ecu_mileage),avg(total_fuel_cons),avg(diff_fuel_cons) ,avg(std_fuel_cons) from kudu_via_city_pdi3 as a where entry_time between "+entry_time_start+" and "+entry_time_end+" and exists (select null from car2 as b where a.tid=b.tid) group by a.tid order by sum(std_mileage) asc limit 1 offset 0";
    
    
                        /*java.util.Date date = new Date();
                        Calendar calendar = new GregorianCalendar();
                        calendar.setTime(date);
                        calendar.add(calendar.DATE, i); //把日期往后增加一天,整数  往后推,负数往前移动
                        date = calendar.getTime(); //这个时间就是日期往后推一天的结果*/
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    
    
                        Date dstart = sdf.parse("2021-11-05");
    
                        Calendar calendar = new GregorianCalendar();
                        calendar.setTime(dstart);
                        calendar.add(calendar.DATE, rand.nextInt(1000)); //把日期往后增加一天,整数  往后推,负数往前移动
                        dstart = calendar.getTime(); //这个时间就是日期往后推一天的结果
    
                        calendar = new GregorianCalendar();
                        calendar.setTime(dstart);
                        calendar.add(calendar.DATE, 30);
    
                        Date dend = calendar.getTime();
    
                        String sstart = sdf.format(dstart);
                        String send = sdf.format(dend);
    
                        String sql = "select count(*),sum(p3),sum(p1),vin from tj9 where inday between '"+sstart+"' and '"+send+"' group by vin order by sum(p1) desc limit 1";
    
    
                        java.util.Date d1 = new java.util.Date();
                        ps = con.prepareStatement(sql);
                        rs = ps.executeQuery();
                        while (rs.next()) {
                            System.out.println(Thread.currentThread() + "===>" + d1 + "-----" + new java.util.Date() + "----" + rs.getString(2));
    
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    } finally {
                        try {
                            rs.close();
                            ps.close();
    
                        } catch (SQLException e) {
                            e.printStackTrace();
                        }
                    }
    
                }
    
            }
        }
    
    }

    响应时间

    Thread[Thread-26,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:26 CST 2021----28.022251464426517
    Thread[Thread-38,5,main]===>Sat Nov 06 12:08:20 CST 2021-----Sat Nov 06 12:08:26 CST 2021----33.72479600459337
    Thread[Thread-45,5,main]===>Sat Nov 06 12:08:20 CST 2021-----Sat Nov 06 12:08:26 CST 2021----34.93087751418352
    Thread[Thread-39,5,main]===>Sat Nov 06 12:08:20 CST 2021-----Sat Nov 06 12:08:26 CST 2021----30.66674555838108
    Thread[Thread-6,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:26 CST 2021----34.45231296867132
    Thread[Thread-36,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:26 CST 2021----27.272395104169846
    Thread[Thread-35,5,main]===>Sat Nov 06 12:08:20 CST 2021-----Sat Nov 06 12:08:27 CST 2021----30.620394926518202
    Thread[Thread-31,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----35.72697024047375
    Thread[Thread-30,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----23.390043392777443
    Thread[Thread-10,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----24.27678807079792
    Thread[Thread-20,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----29.040063969790936
    Thread[Thread-48,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:27 CST 2021----33.46218280121684
    Thread[Thread-37,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----31.903710812330246
    Thread[Thread-42,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----27.873187253251672
    Thread[Thread-18,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----31.810679212212563
    Thread[Thread-21,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----33.88313761353493
    Thread[Thread-2,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----26.80970578826964
    Thread[Thread-3,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----31.7162510342896
    Thread[Thread-7,5,main]===>Sat Nov 06 12:08:21 CST 2021-----Sat Nov 06 12:08:27 CST 2021----30.19490994521766
    Thread[Thread-9,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:27 CST 2021----27.030669568106532
    Thread[Thread-43,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----34.46626507490873
    Thread[Thread-40,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:27 CST 2021----27.155178541317582
    Thread[Thread-47,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:27 CST 2021----33.44230469316244
    Thread[Thread-11,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:28 CST 2021----30.59896296542138
    Thread[Thread-32,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:28 CST 2021----30.65741043537855
    Thread[Thread-41,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:28 CST 2021----32.03111154586077
    Thread[Thread-23,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:28 CST 2021----28.389698467217386
    Thread[Thread-25,5,main]===>Sat Nov 06 12:08:22 CST 2021-----Sat Nov 06 12:08:28 CST 2021----28.751262992620468
    Thread[Thread-12,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:28 CST 2021----30.460573315620422
    Thread[Thread-15,5,main]===>Sat Nov 06 12:08:25 CST 2021-----Sat Nov 06 12:08:28 CST 2021----27.92404123954475
    Thread[Thread-34,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:28 CST 2021----33.9197644777596
    Thread[Thread-0,5,main]===>Sat Nov 06 12:08:24 CST 2021-----Sat Nov 06 12:08:28 CST 2021----29.629240840673447
    Thread[Thread-46,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:28 CST 2021----36.7463488727808
    Thread[Thread-5,5,main]===>Sat Nov 06 12:08:24 CST 2021-----Sat Nov 06 12:08:29 CST 2021----31.927827052772045
    Thread[Thread-49,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:29 CST 2021----29.674843708984554
    Thread[Thread-22,5,main]===>Sat Nov 06 12:08:23 CST 2021-----Sat Nov 06 12:08:29 CST 2021----30.460573315620422

    后台负载

  • 相关阅读:
    超链接标签的CSS伪类link,visited,hover,active
    CSS系列(8) CSS后代选择器和子选择器详解
    CSS系列(7)CSS类选择器Class详解
    CSS系列(6) CSS通配符详解
    CSS系列(5)-如何使用Firebug查看网页的html和css
    我给女朋友讲编程CSS系列(4) CSS盒子模型
    两次理发感悟到的人生
    我给女朋友讲编程CSS系列(3) CSS如何设置字体的类型、大小、颜色,如何使用火狐浏览器的Firebug插件查看网页的字体
    SSH不允许进行DNS解析
    项目发布平台
  • 原文地址:https://www.cnblogs.com/lilei2blog/p/15516400.html
Copyright © 2011-2022 走看看