基于python+Java的二手车与奔驰销量数据可视化平台

目录

1、数据采集

(1)二手⻋数据

​(2)奔驰上市新⻋数据

(3)⻋系⽉销榜数据

(4)⻋系⽉销售排⾏榜数据

(5)MySQL数据存储

2、数据仓库建模

(1)Spark开发环境搭建

1、创建maven项⽬;

2、添加pom.xml依赖;

3、配置scala环境;

4、创建测试连接hive⽂件;

5、创建数据仓库分层⽬录;

(1)ODS层建模

1、创建数据库;

2、编写DATAX脚本

①、编写合肥⼆⼿⻋数据脚本ods_hefei_er_shou_car_info.json

②、编写奔驰新⻋资讯数据脚本

③、编写奔驰近半年⻋型排⾏榜数据脚本

④、编写⽉度汽⻋销量排⾏榜数据脚本

(2)DWD层建模

1、创建数据库;

2、创建DWD层表;

3、数据清洗;

(3)DWS层建模

1、创建数据库;

2、创建表;

(4)ADS层建模

1、创建数据库;

2、创建表;

3、数据可视化

1、通过启动datax脚本将数据导⼊到mysql中

2、可视化


1、数据采集

(1)二手⻋数据

bash 复制代码
https://www.che168.com/hefei/a0_0msdgscncgpi1ltocsp1exx0/?pvareaid=102179

https://www.che168.com/hefei/a0_0msdgscncgpi1ltocsp2exx0/?pvareaid=102179

抓取地址:

bash 复制代码
https://www.che168.com/hefei/a0_0msdgscncgpi1ltocsp3exx0/?pvareaid=102179#currengpostion

(2)奔驰上市新⻋数据

bash 复制代码
https://www.autohome.com.cn/newbrand/36-0-0-2025-0.html

(3)⻋系⽉销榜数据

bash 复制代码
https://www.autohome.com.cn/rank/1-1-0-0_9000-x-x-36/2025-03_2025-08.html
https://www.autohome.com.cn/web-main/car/rank/getList?from=28&pm=2&pluginversion=11.75.8&model=1&channel=0&pageindex=1&pagesize=50&typeid=
1&subranktypeid=1&levelid=0&price=0-9000&brandid=36&date=2025-03_2025-08

(4)⻋系⽉销售排⾏榜数据

bash 复制代码
https://www.autohome.com.cn/rank/1-1-0-0_9000-x-x-x/2025-08.html
https://www.autohome.com.cn/web-main/car/rank/getList?from=28&pm=2&pluginversion=11.75.8&model=1&channel=0&pageindex=1&pagesize=50&typeid=1&subranktypeid=1&levelid=0&price=0-9000&date=2025-08

(5)MySQL数据存储

①、创建数据库;

sql 复制代码
create database car_db;

②、hefei_er_shou_car_info表(合肥⼆⼿⻋数据表)

sql 复制代码
CREATE TABLE `hefei_er_shou_car_info` (
  `specId` varchar(255) DEFAULT NULL,
  `car_name` varchar(255) DEFAULT NULL,
  `kilometer` varchar(255) DEFAULT NULL,
  `car_time` varchar(255) DEFAULT NULL,
  `car_location` varchar(255) DEFAULT NULL,
  `sell_price` varchar(255) DEFAULT NULL,
  `true_price` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

③、benchi_new_car_info表(奔驰新⻋资讯数据表)

sql 复制代码
CREATE TABLE `benchi_new_car_info` (
  `car_time` varchar(255) DEFAULT NULL,
  `info` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

④、benchi_car_half_year表(奔驰近半年⻋型排⾏榜数据表)

sql 复制代码
CREATE TABLE `benchi_car_half_year` (
  `rank` int DEFAULT NULL,
  `seriesname` varchar(255) DEFAULT NULL,
  `priceinfo` varchar(255) DEFAULT NULL,
  `scorevalue` decimal(3,2) DEFAULT NULL,
  `salecount` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

⑤、month_car_top表(⽉度汽⻋销量排⾏榜数据表)

sql 复制代码
CREATE TABLE `month_car_top` (
  `rank` int DEFAULT NULL,
  `seriesname` varchar(255) DEFAULT NULL,
  `priceinfo` varchar(255) DEFAULT NULL,
  `scorevalue` decimal(3,2) DEFAULT NULL,
  `salecount` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

2、数据仓库建模

(1)Spark开发环境搭建

1、创建maven项⽬;

2、添加pom.xml依赖;

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt
p://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>com.shujia</groupId>
 <artifactId>hbuu_test</artifactId>
 <version>1.0-SNAPSHOT</version>
 <properties>
 <maven.compiler.source>8</maven.compiler.source>
 <maven.compiler.target>8</maven.compiler.target>
 <project.build.sourceEncoding>UTF-8</project.build.sourceEnc
oding>
 </properties>
 <dependencies>
 <!-- https://mvnrepository.com/artifact/org.apache.spark/spa
rk-core -->
 <dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-core_2.12</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.spark/spa
rk-sql -->
 <dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-sql_2.12</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.spark/spa
rk-streaming -->
 <dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-streaming_2.12</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.spark/spa
rk-mllib -->
 <dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-mllib_2.12</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.spark/spa
rk-hive -->
 <dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-hive_2.12</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.hive/hive
-exec -->
 <dependency>
 <groupId>org.apache.hive</groupId>
 <artifactId>hive-exec</artifactId>
 <version>3.1.3</version>
 </dependency>
 <!-- https://mvnrepository.com/artifact/com.mysql/mysql-conn
ector-j -->
 <dependency>
 <groupId>com.mysql</groupId>
 <artifactId>mysql-connector-j</artifactId>
 <version>8.0.33</version>
 </dependency>
 <dependency>
 <groupId>com.fasterxml.jackson.core</groupId>
 <artifactId>jackson-databind</artifactId>
 <version>2.10.0</version>
 </dependency>
 <dependency>
 <groupId>com.fasterxml.jackson.core</groupId>
 <artifactId>jackson-core</artifactId>
 <version>2.10.0</version>
 </dependency>
 <dependency>
 <groupId>org.apache.logging.log4j</groupId>
 <artifactId>log4j-core</artifactId>
 <version>2.17.1</version>
 </dependency>
 <dependency>
 <groupId>org.apache.poi</groupId>
 <artifactId>poi</artifactId>
 <version>5.2.2</version>
 <exclusions>
 <exclusion>
 <groupId>org.apache.logging.log4j</groupId>
 <artifactId>log4j-api</artifactId>
 </exclusion>
 </exclusions>
 </dependency>
 <!-- https://mvnrepository.com/artifact/org.apache.hadoop/ha
doop-auth -->
 <dependency>
 <groupId>org.apache.hadoop</groupId>
 <artifactId>hadoop-auth</artifactId>
 <version>3.1.3</version>
 </dependency>
 </dependencies>
</project>

3、配置scala环境;

4、创建测试连接hive⽂件;

java 复制代码
import org.apache.spark.sql.SparkSession
object Demo01_test {
 def main(args: Array[String]): Unit = {
 val spark: SparkSession = SparkSession.builder()
 .appName("测试")
 .master("local[*]")
 .config("spark.sql.shuffle.partitions", "1")
 .enableHiveSupport()
 .getOrCreate()
 spark.sql(
 """
 |show databases
 |""".stripMargin).show()
 spark.stop()
 }
}

5、创建数据仓库分层⽬录;

(1)ODS层建模
1、创建数据库;
sql 复制代码
/*
 Navicat Premium Dump SQL

 Source Server         : localhost
 Source Server Type    : MySQL
 Source Server Version : 80041 (8.0.41)
 Source Host           : localhost:3306
 Source Schema         : qiche_ods

 Target Server Type    : MySQL
 Target Server Version : 80041 (8.0.41)
 File Encoding         : 65001

 Date: 09/10/2025 20:56:18
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for ods_benchi_car_half_year
-- ----------------------------
DROP TABLE IF EXISTS `ods_benchi_car_half_year`;
CREATE TABLE `ods_benchi_car_half_year`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ods_benchi_car_half_year
-- ----------------------------

-- ----------------------------
-- Table structure for ods_benchi_new_car_info
-- ----------------------------
DROP TABLE IF EXISTS `ods_benchi_new_car_info`;
CREATE TABLE `ods_benchi_new_car_info`  (
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '资讯月份',
  `info` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '资讯'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ods_benchi_new_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for ods_hefei_er_shou_car_info
-- ----------------------------
DROP TABLE IF EXISTS `ods_hefei_er_shou_car_info`;
CREATE TABLE `ods_hefei_er_shou_car_info`  (
  `specId` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车型ID',
  `car_name` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车辆名称',
  `kilometer` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '里程数',
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '购买年份',
  `car_location` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '所在地区',
  `sell_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '售价',
  `true_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '真实价格'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ods_hefei_er_shou_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for ods_month_car_top
-- ----------------------------
DROP TABLE IF EXISTS `ods_month_car_top`;
CREATE TABLE `ods_month_car_top`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ods_month_car_top
-- ----------------------------

SET FOREIGN_KEY_CHECKS = 1;
2、编写DATAX脚本
①、编写合肥⼆⼿⻋数据脚本ods_hefei_er_shou_car_info.json
bash 复制代码
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "mysqlreader",
          "parameter": {
            "column": [
              "specId",
              "car_name",
              "kilometer",
              "car_time",
              "car_location",
              "sell_price",
              "true_price"
            ],
            "connection": [
              {
                "jdbcUrl": [
                  "jdbc:mysql://localhost:3306/car_db?useSSL=false&useUnicode=true&characterEncoding=utf8"
                ],
                "table": [
                  "hefei_er_shou_car_info"
                ]
              }
            ],
            "username": "root",
            "password": "root"
          }
        },
        "writer": {
          "name": "hdfswriter",
          "parameter": {
            "column": [
              {
                "name": "col1",
                "type": "STRING"
              },
              {
                "name": "col2",
                "type": "STRING"
              },
              {
                "name": "col3",
                "type": "STRING"
              },
              {
                "name": "col4",
                "type": "STRING"
              },
              {
                "name": "col5",
                "type": "STRING"
              },
              {
                "name": "col6",
                "type": "STRING"
              },
              {
                "name": "col7",
                "type": "STRING"
              }
            ],
            "defaultFS": "hdfs://localhost:9000",
            "fieldDelimiter": ",",
            "fileName": "hefei_er_shou_car_info",
            "fileType": "text",
            "path": "/data/qiche/ods/ods_hefei_er_shou_car_info",
            "writeMode": "append"
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": "1"
      }
    }
  }
}
②、编写奔驰新⻋资讯数据脚本
bash 复制代码
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "mysqlreader",
          "parameter": {
            "column": [
              "`rank`",
              "seriesname",
              "priceinfo",
              "scorevalue",
              "salecount"
            ],
            "connection": [
              {
                "jdbcUrl": [
                  "jdbc:mysql://localhost:3306/car_db?useSSL=false&useUnicode=true&characterEncoding=utf8"
                ],
                "table": [
                  "benchi_car_half_year"
                ]
              }
            ],
            "username": "root",
            "password": "root"
          }
        },
        "writer": {
          "name": "hdfswriter",
          "parameter": {
            "column": [
              {
                "name": "col1",
                "type": "STRING"
              },
              {
                "name": "col2",
                "type": "STRING"
              },
              {
                "name": "col3",
                "type": "STRING"
              },
              {
                "name": "col4",
                "type": "STRING"
              },
              {
                "name": "col5",
                "type": "STRING"
              }
            ],
            "defaultFS": "hdfs://localhost:9000",
            "fieldDelimiter": ",",
            "fileName": "benchi_car_half_year",
            "fileType": "text",
            "path": "/data/qiche/ods/ods_benchi_car_half_year",
            "writeMode": "append"
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": "1"
      }
    }
  }
}
③、编写奔驰近半年⻋型排⾏榜数据脚本
bash 复制代码
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "mysqlreader",
          "parameter": {
            "column": [
              "`rank`",
              "seriesname",
              "priceinfo",
              "scorevalue",
              "salecount"
            ],
            "connection": [
              {
                "jdbcUrl": [
                  "jdbc:mysql://localhost:3306/car_db?useSSL=false&useUnicode=true&characterEncoding=utf8"
                ],
                "table": [
                  "benchi_car_half_year"
                ]
              }
            ],
            "username": "root",
            "password": "root"
          }
        },
        "writer": {
          "name": "hdfswriter",
          "parameter": {
            "column": [
              {
                "name": "col1",
                "type": "STRING"
              },
              {
                "name": "col2",
                "type": "STRING"
              },
              {
                "name": "col3",
                "type": "STRING"
              },
              {
                "name": "col4",
                "type": "STRING"
              },
              {
                "name": "col5",
                "type": "STRING"
              }
            ],
            "defaultFS": "hdfs://localhost:9000",
            "fieldDelimiter": ",",
            "fileName": "benchi_car_half_year",
            "fileType": "text",
            "path": "/data/qiche/ods/ods_benchi_car_half_year",
            "writeMode": "append"
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": "1"
      }
    }
  }
}
④、编写⽉度汽⻋销量排⾏榜数据脚本
bash 复制代码
{
  "job": {
    "content": [
      {
        "reader": {
          "name": "mysqlreader",
          "parameter": {
            "column": [
              "`rank`",
              "seriesname",
              "priceinfo",
              "scorevalue",
              "salecount"
            ],
            "connection": [
              {
                "jdbcUrl": [
                  "jdbc:mysql://localhost:3306/car_db?useSSL=false&useUnicode=true&characterEncoding=utf8"
                ],
                "table": [
                  "month_car_top"
                ]
              }
            ],
            "password": "root",
            "username": "root"
          }
        },
        "writer": {
          "name": "hdfswriter",
          "parameter": {
            "column": [
              {
                "name": "col1",
                "type": "STRING"
              },
              {
                "name": "col2",
                "type": "STRING"
              },
              {
                "name": "col3",
                "type": "STRING"
              },
              {
                "name": "col4",
                "type": "STRING"
              },
              {
                "name": "col5",
                "type": "STRING"
              }
            ],
            "defaultFS": "hdfs://localhost:9000",
            "fieldDelimiter": ",",
            "fileName": "month_car_top",
            "fileType": "text",
            "path": "/data/qiche/ods/ods_month_car_top",
            "writeMode": "append"
          }
        }
      }
    ],
    "setting": {
      "speed": {
        "channel": "1"
      }
    }
  }
}
(2)DWD层建模
1、创建数据库;
sql 复制代码
create database qiche_dwd location '/data/qiche/dwd';
2、创建DWD层表;
sql 复制代码
/*
 Navicat Premium Dump SQL

 Source Server         : localhost
 Source Server Type    : MySQL
 Source Server Version : 80041 (8.0.41)
 Source Host           : localhost:3306
 Source Schema         : qiche_dwd

 Target Server Type    : MySQL
 Target Server Version : 80041 (8.0.41)
 File Encoding         : 65001

 Date: 09/10/2025 20:55:59
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for dwd_benchi_car_half_year
-- ----------------------------
DROP TABLE IF EXISTS `dwd_benchi_car_half_year`;
CREATE TABLE `dwd_benchi_car_half_year`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dwd_benchi_car_half_year
-- ----------------------------

-- ----------------------------
-- Table structure for dwd_benchi_new_car_info
-- ----------------------------
DROP TABLE IF EXISTS `dwd_benchi_new_car_info`;
CREATE TABLE `dwd_benchi_new_car_info`  (
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资讯月份',
  `info` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资讯'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dwd_benchi_new_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for dwd_hefei_er_shou_car_info
-- ----------------------------
DROP TABLE IF EXISTS `dwd_hefei_er_shou_car_info`;
CREATE TABLE `dwd_hefei_er_shou_car_info`  (
  `specId` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车型ID',
  `car_name` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车辆名称',
  `kilometer` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '里程数',
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '购买年份',
  `car_location` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所在地区',
  `sell_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '售价',
  `true_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '真实价格'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dwd_hefei_er_shou_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for dwd_month_car_top
-- ----------------------------
DROP TABLE IF EXISTS `dwd_month_car_top`;
CREATE TABLE `dwd_month_car_top`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dwd_month_car_top
-- ----------------------------

SET FOREIGN_KEY_CHECKS = 1;
3、数据清洗;
(3)DWS层建模
1、创建数据库;
sql 复制代码
create database qiche_dws location '/data/qiche/dws';
2、创建表;
sql 复制代码
/*
 Navicat Premium Dump SQL

 Source Server         : localhost
 Source Server Type    : MySQL
 Source Server Version : 80041 (8.0.41)
 Source Host           : localhost:3306
 Source Schema         : qiche_dws

 Target Server Type    : MySQL
 Target Server Version : 80041 (8.0.41)
 File Encoding         : 65001

 Date: 09/10/2025 20:56:09
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for dws_benchi_year_count
-- ----------------------------
DROP TABLE IF EXISTS `dws_benchi_year_count`;
CREATE TABLE `dws_benchi_year_count`  (
  `year_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `count` int NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dws_benchi_year_count
-- ----------------------------

-- ----------------------------
-- Table structure for dws_hefei_er_shou_car_info
-- ----------------------------
DROP TABLE IF EXISTS `dws_hefei_er_shou_car_info`;
CREATE TABLE `dws_hefei_er_shou_car_info`  (
  `specId` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_name` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `kilometer` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_location` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `sell_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `true_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dws_hefei_er_shou_car_info
-- ----------------------------

SET FOREIGN_KEY_CHECKS = 1;
(4)ADS层建模
1、创建数据库;
sql 复制代码
create database qiche_ads location '/data/qiche/ads';
2、创建表;
sql 复制代码
/*
 Navicat Premium Dump SQL

 Source Server         : localhost
 Source Server Type    : MySQL
 Source Server Version : 80041 (8.0.41)
 Source Host           : localhost:3306
 Source Schema         : qiche_ads

 Target Server Type    : MySQL
 Target Server Version : 80041 (8.0.41)
 File Encoding         : 65001

 Date: 09/10/2025 20:55:49
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for ads_benchi_car_half_year
-- ----------------------------
DROP TABLE IF EXISTS `ads_benchi_car_half_year`;
CREATE TABLE `ads_benchi_car_half_year`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ads_benchi_car_half_year
-- ----------------------------

-- ----------------------------
-- Table structure for ads_benchi_new_car_info
-- ----------------------------
DROP TABLE IF EXISTS `ads_benchi_new_car_info`;
CREATE TABLE `ads_benchi_new_car_info`  (
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '资讯月份',
  `info` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '资讯'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ads_benchi_new_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for ads_benchi_year_count
-- ----------------------------
DROP TABLE IF EXISTS `ads_benchi_year_count`;
CREATE TABLE `ads_benchi_year_count`  (
  `year_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `count` int NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ads_benchi_year_count
-- ----------------------------

-- ----------------------------
-- Table structure for ads_hefei_er_shou_car_info
-- ----------------------------
DROP TABLE IF EXISTS `ads_hefei_er_shou_car_info`;
CREATE TABLE `ads_hefei_er_shou_car_info`  (
  `specId` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_name` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `kilometer` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_time` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `car_location` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `sell_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `true_price` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ads_hefei_er_shou_car_info
-- ----------------------------

-- ----------------------------
-- Table structure for ads_month_car_top
-- ----------------------------
DROP TABLE IF EXISTS `ads_month_car_top`;
CREATE TABLE `ads_month_car_top`  (
  `rank` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '排名',
  `seriesname` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '车型名称',
  `priceinfo` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '价格区间',
  `scorevalue` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '评分',
  `salecount` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '销量'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of ads_month_car_top
-- ----------------------------

SET FOREIGN_KEY_CHECKS = 1;

3、数据可视化

1、通过启动datax脚本将数据导⼊到mysql中

2、可视化

下载 finebi 安装包并上传服务器

下载地址: https://www.finebi.com/product/download

安装 linux_unix_FineBI6_1-CN.sh

bash linux_unix_FineBI6_1-CN.sh

遵循安装引导,⼀步步安装(注意中间会有⼀个修改安装位置,将位置切换为 /usr/local/sof

t/finebi )

访问 finebiweb ⻚⾯

http://master:37799/webroot/decision

设置⽤户名和密码

⽤户名 root

密码 123456

选择外接数据库

需要在 mysql 中创建 finebi 数据库

MySQL 8.0.28 及之后版本,推荐设置数据库默认字符集为 utf8mb3 ,默认排序规则为 utf8mb3_bin 。


奔驰2025年新⻋资讯 近半年奔驰⻋销量 奔驰年销量排名

本博客仅供个人参考学习使用,禁止用于商用,如遇到法律纠纷,一概与本人无关,如有侵权,请联系删除!!!

相关推荐
Goboy3 小时前
【Python修仙笔记.3】Python函数作为秘技 - 封装你的仙法
后端·python
高洁013 小时前
大模型-去噪扩散概率模型(DDPM)采样算法详解
python·深度学习·神经网络·transformer·知识图谱
paj1234567893 小时前
elasticsearch-8.12.2集群部署
java·elasticsearch
Goboy3 小时前
【Python修仙笔记.4】数据结构法宝 - 存储你的仙器
后端·python
DemonAvenger4 小时前
深入Redis Zset:从原理到实践,10年经验带你解锁高效排序场景
数据库·redis·性能优化
1candobetter4 小时前
JAVA后端开发——软件分层架构中的“管道井”原则
java·开发语言·架构
Seven974 小时前
Spring 事务、循环依赖
java
聪明的笨猪猪4 小时前
Java Redis “核心应用” 面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
九皇叔叔4 小时前
深入理解 PostgreSQL 数据库的 MVCC:原理、优势与实践
数据库·postgresql