数仓建设 - DIM维度

文章目录

  • 前置:准备数据库
  • 一、商品维度表
    • 1.1 表结构设计
    • 1.2 建表语句
    • 1.3 ETL任务脚本
  • 二、优惠券维度表
    • 2.1 表结构设计
    • 2.2 ETL任务脚本
  • 三、活动维度表
    • 3.1 表结构设计
    • 3.2 ETL任务脚本
  • 四、地区维度表
    • 4.1 表结构设计
    • 4.2 ETL任务脚本
  • 五、日期维度表
  • 六、用户维度表
    • 6.1 表结构设计
    • 6.2 ETL任务脚本

前置:准备数据库

[hadoop@hadoop102 apache-hive-3.1.2-bin]$ bin/hive
create database dw_dwd;
use dw_dwd;

一、商品维度表

1.1 表结构设计

序号字段名字段类型字段中文名描述
1idSTRINGSKU_ID主键
2priceDECIMAL商品价格来自sku表
3sku_nameSTRING商品名称来自sku表
4sku_descSTRING商品描述来自sku表
5weightDECIMAL重量来自sku表
6is_saleINT是否在售来自sku表
7spu_idSTRINGSPU编号来自sku表
8spu_nameSTRINGSPU名称来自spu表
9category3_idSTRING三级品类ID来自sku表
10category3_nameSTRING三级品类名称来自base_category3表
11category2_idSTRING二级品类id来自base_category3表
12category2_nameSTRING二级品类名称来自base_category2表
13category1_idSTRING一级品类ID来自base_category2表
14category1_nameSTRING一级品类名称来自base_category1表
15tm_idSTRING品牌ID来自sku表
16tm_nameSTRING品牌名称来自base_trademark表
17sku_attr_valuesSTRING平台属性JSON串
18sku_sale_attr_valuesSTRING销售属性JSON串
19create_timeSTRING创建时间JSON串

1.2 建表语句

use dw_dwd;DROP TABLE IF EXISTS dim_sku_full;
CREATE EXTERNAL TABLE dim_sku_full (`id` STRING COMMENT '商品id',`price` DECIMAL(16,2) COMMENT '商品价格',`sku_name` STRING COMMENT '商品名称',`sku_desc` STRING COMMENT '商品描述',`weight` DECIMAL(16,2) COMMENT '重量',`is_sale` INT COMMENT '是否在售;1:是,0:否',`spu_id` STRING COMMENT 'spu编号',`spu_name` STRING COMMENT 'spu名称',`category3_id` STRING COMMENT '三级分类id',`category3_name` STRING COMMENT '三级分类名称',`category2_id` STRING COMMENT '二级分类id',`category2_name` STRING COMMENT '二级分类名称',`category1_id` STRING COMMENT '一级分类id',`category1_name` STRING COMMENT '一级分类名称',`tm_id` STRING COMMENT '品牌id',`tm_name` STRING COMMENT '品牌名称',`sku_attr_values` ARRAY<STRUCT<attr_id:STRING,value_id:STRING,attr_name:STRING,value_name:STRING>> COMMENT '平台属性',`sku_sale_attr_values` ARRAY<STRUCT<sale_attr_id:STRING,sale_attr_value_id:STRING,sale_attr_name:STRING,sale_attr_value_name:STRING>> COMMENT '销售属性',`create_time` STRING COMMENT '创建时间'
) COMMENT '商品维度表'
PARTITIONED BY (`dt` STRING)
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_sku_full/'
TBLPROPERTIES ("orc.compress"="snappy");msck repair table dim_sku_full;

1.3 ETL任务脚本

[hadoop@hadoop102 ~]$ cd /home/hadoop/bin/
[hadoop@hadoop102 bin]$ vim dim_sku_full.sh

内容:

#!/bin/bash# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;thendate_y_m_d=$1
else date_y_m_d=`date -d "-1 day" +%F`
fietl_sql="
insert overwrite table dw_dwd.dim_sku_full partition(dt='${date_y_m_d}')
selectsku.id,sku.price,sku.sku_name,sku.sku_desc,sku.weight,sku.is_sale,sku.spu_id,spu.spu_name,sku.category3_id,c3.name,c3.category2_id,c2.name,c2.category1_id,c1.name,sku.tm_id,tm.tm_name,attr.attrs,sale_attr.sale_attrs,sku.create_time
from 
(selectid,price,sku_name,sku_desc,weight,is_sale,spu_id,category3_id,tm_id,create_timefrom dw_ods.ods_sku_info_fullwhere dt='${date_y_m_d}'
) sku
left join 
(selectid,spu_namefrom dw_ods.ods_spu_info_fullwhere dt='${date_y_m_d}'
) spu on sku.spu_id=spu.id
left join 
(selectid,name,category2_idfrom dw_ods.ods_base_category3_fullwhere dt='${date_y_m_d}'
) c3 on sku.category3_id=c3.id
left join 
(selectid,name,category1_idfrom dw_ods.ods_base_category2_fullwhere dt='${date_y_m_d}'
) c2 on c3.category2_id=c2.id
left join 
(selectid,namefrom dw_ods.ods_base_category1_fullwhere dt='${date_y_m_d}'
) c1 on c2.category1_id=c1.id
left join 
(selectid,tm_namefrom dw_ods.ods_base_trademark_fullwhere dt='${date_y_m_d}'
) tm on sku.tm_id=tm.id
left join 
(selectsku_id,collect_set(named_struct('attr_id',attr_id,'value_id',value_id,'attr_name',attr_name,'value_name',value_name)) attrsfrom dw_ods.ods_sku_attr_value_fullwhere dt='${date_y_m_d}'group by sku_id
) attr on sku.id=attr.sku_id
left join 
(selectsku_id,collect_set(named_struct('sale_attr_id',sale_attr_id,'sale_attr_value_id',sale_attr_value_id,'sale_attr_name',sale_attr_name,'sale_attr_value_name',sale_attr_value_name)) sale_attrsfrom dw_ods.ods_sku_sale_attr_value_fullwhere dt='${date_y_m_d}'group by sku_id
) sale_attr on sku.id=sale_attr.sku_id;
"hive -e "$etl_sql"

授予脚本执行权限:

[hadoop@hadoop102 bin]$ chmod +x dim_sku_full.sh

执行脚本:

[hadoop@hadoop102 bin]$ dim_sku_full.sh

二、优惠券维度表

2.1 表结构设计

CREATE EXTERNAL TABLE IF NOT EXISTS `dw_dwd.dim_coupon_full` (`id`                STRING COMMENT '优惠券编号',`coupon_name`       STRING COMMENT '优惠券名称',`coupon_type_code`  STRING COMMENT '优惠券类型编码',`coupon_type_name`  STRING COMMENT '优惠券类型名称',`condition_amount`  DECIMAL(16, 2) COMMENT '满额数',`condition_num`     BIGINT COMMENT '满件数',`activity_id`       STRING COMMENT '活动编号',`benefit_amount`    DECIMAL(16, 2) COMMENT '减免金额',`benefit_discount`  DECIMAL(16, 2) COMMENT '折扣',`benefit_rule`      STRING COMMENT '优惠规则:满元*减*元,满*件打*折',`create_time`       STRING COMMENT '创建时间',`range_type_code`   STRING COMMENT '优惠范围类型编码',`range_type_name`   STRING COMMENT '优惠范围类型名称',`limit_num`         BIGINT COMMENT '最多领取次数',`taken_count`       BIGINT COMMENT '已领取次数',`start_time`        STRING COMMENT '可以领取的开始时间',`end_time`          STRING COMMENT '可以领取的结束时间',`operate_time`      STRING COMMENT '修改时间',`expire_time`       STRING COMMENT '过期时间'
) COMMENT '优惠券维度表'
PARTITIONED BY (`dt` STRING)
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_coupon_full/'
TBLPROPERTIES ("orc.compress"="snappy");

2.2 ETL任务脚本

[hadoop@hadoop102 hadoop]$ cd /home/hadoop/bin/
[hadoop@hadoop102 bin]$ vim dim_coupon_full.sh

内容:

#!/bin/bash# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;thendate_y_m_d=$1
else date_y_m_d=`date -d "-1 day" +%F`
fietl_sql="
insert overwrite table dw_dwd.dim_coupon_full partition(dt='${date_y_m_d}')
selectid,coupon_name,coupon_type,coupon_dic.dic_name,condition_amount,condition_num,activity_id,benefit_amount,benefit_discount,case coupon_typewhen '3201' then concat('满',condition_amount,'元减',benefit_amount,'元')when '3202' then concat('满',condition_num,'件打', benefit_discount,' 折')when '3203' then concat('减',benefit_amount,'元')end benefit_rule,create_time,range_type,range_dic.dic_name,limit_num,taken_count,start_time,end_time,operate_time,expire_time
from
(selectid,coupon_name,coupon_type,condition_amount,condition_num,activity_id,benefit_amount,benefit_discount,create_time,range_type,limit_num,taken_count,start_time,end_time,operate_time,expire_timefrom dw_ods.ods_coupon_info_fullwhere dt='${date_y_m_d}'
)ci
left join
(selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt='${date_y_m_d}'and parent_code='32'
)coupon_dic
on ci.coupon_type=coupon_dic.dic_code
left join
(selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt='${date_y_m_d}'and parent_code='33'
)range_dic
on ci.range_type=range_dic.dic_code;
"hive -e "$etl_sql"

授予脚本执行权限:

[hadoop@hadoop102 bin]$ chmod +x dim_coupon_full.sh

执行脚本:

[hadoop@hadoop102 bin]$ dim_coupon_full.sh 2023-12-05

三、活动维度表

3.1 表结构设计

CREATE EXTERNAL TABLE IF NOT EXISTS `dw_dwd.dim_activity_full` (`activity_rule_id`    STRING COMMENT '活动规则ID',`activity_id`         STRING COMMENT '活动ID',`activity_name`       STRING COMMENT '活动名称',`activity_type_code`  STRING COMMENT '活动类型编码',`activity_type_name`  STRING COMMENT '活动类型名称',`activity_desc`       STRING COMMENT '活动描述',`start_time`          STRING COMMENT '开始时间',`end_time`            STRING COMMENT '结束时间',`create_time`         STRING COMMENT '创建时间',`condition_amount`    DECIMAL(16, 2) COMMENT '满减金额',`condition_num`       BIGINT COMMENT '满减件数',`benefit_amount`      DECIMAL(16, 2) COMMENT '优惠金额',`benefit_discount`    DECIMAL(16, 2) COMMENT '优惠折扣',`benefit_rule`        STRING COMMENT '优惠规则',`benefit_level`       STRING COMMENT '优惠级别'
) COMMENT '活动维度表'
PARTITIONED BY (`dt` STRING)
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_activity_full/'
TBLPROPERTIES ("orc.compress"="snappy");

3.2 ETL任务脚本

vim dim_activity_full.sh

内容:

#!/bin/bash# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;thendate_y_m_d=$1
else date_y_m_d=`date -d "-1 day" +%F`
fietl_sql="
insert overwrite table dw_dwd.dim_activity_full partition(dt='${date_y_m_d}')
selectrule.id,info.id,activity_name,rule.activity_type,dic.dic_name,activity_desc,start_time,end_time,create_time,condition_amount,condition_num,benefit_amount,benefit_discount,case rule.activity_typewhen '3101' then concat('满',condition_amount,'元减',benefit_amount,'元')when '3102' then concat('满',condition_num,'件打', benefit_discount,' 折')when '3103' then concat('打', benefit_discount,'折')end benefit_rule,benefit_level
from
(selectid,activity_id,activity_type,condition_amount,condition_num,benefit_amount,benefit_discount,benefit_levelfrom dw_ods.ods_activity_rule_fullwhere dt='${date_y_m_d}'
)rule
left join
(selectid,activity_name,activity_type,activity_desc,start_time,end_time,create_timefrom dw_ods.ods_activity_info_fullwhere dt='${date_y_m_d}'
)info
on rule.activity_id=info.id
left join
(selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt='${date_y_m_d}'and parent_code='31'
)dic
on rule.activity_type=dic.dic_code;
"hive -e "$etl_sql"

授予脚本执行权限:

[hadoop@hadoop102 bin]$ chmod +x dim_activity_full.sh

执行脚本:

[hadoop@hadoop102 bin]$ dim_activity_full.sh

四、地区维度表

4.1 表结构设计

CREATE EXTERNAL TABLE IF NOT EXISTS `dw_dwd.dim_province_full` (`id`              STRING COMMENT '省份ID',`province_name`   STRING COMMENT '省份名称',`area_code`       STRING COMMENT '地区编码',`iso_code`        STRING COMMENT '旧版国际标准地区编码,供可视化使用',`iso_3166_2`      STRING COMMENT '新版国际标准地区编码,供可视化使用',`region_id`       STRING COMMENT '地区ID',`region_name`     STRING COMMENT '地区名称'
) COMMENT '地区维度表'
PARTITIONED BY (`dt` STRING)
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_province_full/'
TBLPROPERTIES ("orc.compress"="snappy");

4.2 ETL任务脚本

[hadoop@hadoop102 bin]$ vim dim_province_full.sh

内容:

#!/bin/bash# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;thendate_y_m_d=$1
else date_y_m_d=`date -d "-1 day" +%F`
fietl_sql="
insert overwrite table dw_dwd.dim_province_full partition(dt='${date_y_m_d}')
selectprovince.id,province.name,province.area_code,province.iso_code,province.iso_3166_2,region_id,region_name
from
(selectid,name,region_id,area_code,iso_code,iso_3166_2from dw_ods.ods_base_province
)province
left join
(selectid,region_namefrom dw_ods.ods_base_region
)region
on province.region_id=region.id;
"hive -e "$etl_sql"

授予脚本执行权限:

[hadoop@hadoop102 bin]$ chmod +x dim_province_full.sh

执行脚本:

[hadoop@hadoop102 bin]$ dim_province_full.sh

五、日期维度表

1、上传日期数据文件到HDFS的临时目录 /tmp/tmp_dim_date_info/
2、执行下面SQL

-- 创建临时表
CREATE EXTERNAL TABLE IF NOT EXISTS `default.tmp_dim_date_info` (`date_id`       STRING COMMENT '日',`week_id`       STRING COMMENT '周ID',`week_day`      STRING COMMENT '周几',`day`            STRING COMMENT '每月的第几天',`month`          STRING COMMENT '第几月',`quarter`       STRING COMMENT '第几季度',`year`           STRING COMMENT '年',`is_workday`    STRING COMMENT '是否是工作日',`holiday_id`    STRING COMMENT '节假日'
) COMMENT '时间维度表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION '/tmp/tmp_dim_date_info/';-- 创建日期表
CREATE EXTERNAL TABLE IF NOT EXISTS `dw_dwd.dim_date` (`date_id`    STRING COMMENT '日期ID',`week_id`    STRING COMMENT '周ID,一年中的第几周',`week_day`   STRING COMMENT '周几',`day`        STRING COMMENT '每月的第几天',`month`      STRING COMMENT '一年中的第几月',`quarter`    STRING COMMENT '一年中的第几季度',`year`       STRING COMMENT '年份',`is_workday` STRING COMMENT '是否是工作日',`holiday_id` STRING COMMENT '节假日'
) COMMENT '日期维度表'
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_date/'
TBLPROPERTIES ("orc.compress"="snappy");-- 导入到正式表
insert overwrite table dw_dwd.dim_date select * from default.tmp_dim_date_info;

六、用户维度表

动态分区、拉链表

6.1 表结构设计

CREATE EXTERNAL TABLE IF NOT EXISTS `dw_dwd.dim_user_full` (`id`           STRING COMMENT '用户ID',`name`         STRING COMMENT '用户姓名',`phone_num`    STRING COMMENT '手机号码',`email`        STRING COMMENT '邮箱',`user_level`   STRING COMMENT '用户等级',`birthday`     STRING COMMENT '生日',`gender`       STRING COMMENT '性别',`create_time`  STRING COMMENT '创建时间',`operate_time` STRING COMMENT '操作时间'
) COMMENT '用户维度表'
PARTITIONED BY (`dt` STRING)
STORED AS ORC
LOCATION '/warehouse/dw_dwd.db/dim_user_full/'
TBLPROPERTIES ("orc.compress"="snappy");

6.2 ETL任务脚本

vim dim_user_full.sh

内容:

#!/bin/bash# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;thendate_y_m_d=$1
else date_y_m_d=`date -d "-1 day" +%F`
fietl_sql="
insert overwrite table dw_dwd.dim_user_full partition (dt = '${date_y_m_d}')
select id,name,phone_num,email,user_level,birthday,gender,create_time,operate_time
from dw_ods.ods_user_info_full
where dt = '${date_y_m_d}'
"hive -e "$etl_sql"

授予脚本执行权限:

[hadoop@hadoop102 bin]$ chmod +x dim_user_full.sh

执行脚本:

[hadoop@hadoop102 bin]$ dim_user_full.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/204530.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用 PHP和html做一个简单的注册页面

用 PHP和html做一个简单的注册页面 index.html的设计 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title…

Antd search input无中框

发现input.search&#xff0c; 搜索图标的左侧有个竖线&#xff0c;不是很好看 把它改掉, 新建一个自己的CSS .custom-search-input{.ant-input-affix-wrapper{border-right: none !important;}.ant-input-group-addon{.ant-btn{border-left: none !important;}}}应用 <S…

Oracle 表数据锁了,处理方式,Oracle锁表处理

Oracle 表数据锁了&#xff0c;处理方式&#xff0c;Oracle锁表处理 参考连接&#xff1a; Oracle锁表处理_oracle锁表怎么解决_辣椒炒鸡的博客-CSDN博客 实践&#xff1a; 1、查看被锁的表 select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object …

厦门基础城建中排水管网作用,助力提升城市韧性

在厦门这个美丽的海滨城市&#xff0c;城市建设与发展日新月异&#xff0c;其中&#xff0c;城市生命线下的排水管网监测系统作为城市基础设施的重要组成部分&#xff0c;对保障城市安全、提升城市品质发挥着关键作用。 对于厦门城市建设中的排水管网监测系统安装策略 1. 合理…

Pytorch CIFAR10图像分类 ShuffleNetv2篇

Pytorch CIFAR10图像分类 ShuffleNetv2篇 文章目录 Pytorch CIFAR10图像分类 ShuffleNetv2篇4. 定义网络&#xff08;ShuffleNetv2&#xff09;高效网络设计实用指南指南一&#xff1a;同等通道大小最小化内存访问量指南二&#xff1a;过量使用组卷积会增加MAC指南三&#xff1…

精通Nginx(22)-支持Stream和Mail协议

前面章节主要讲述Nginx对http协议的支持,这也是Nginx使用最广泛的功能。本节补充讲述Nginx对Stream协议和Mail协议的支持。 Stream支持 Nginx对传输层协议TCP和UDP提供代理和负载均衡支持,同时具备健康检查、动态配置等能力。 TCP负载均衡 针对传输层tcp协议的数据包进行代…

TA-Lib学习研究笔记(九)——Pattern Recognition (1)

TA-Lib学习研究笔记&#xff08;九&#xff09;——Pattern Recognition &#xff08;1&#xff09; 0.程序代码 形态识别的函数的应用&#xff0c;通过使用A股实际的数据&#xff0c;验证形态识别函数&#xff0c;用K线显示出现标志的形态走势&#xff0c;由于入口参数基本上…

MTK平台如何debug A2DP 卡音问题

一 听auido文件 卡音问题首先要听以下3个部分的audio文件 1 .auido dump中的af_mixer_write_pcm_xxx.wav,这是auido传 给A2DP的源文件,如果这里有卡音,可以转给auido的人check • track是AudioTrack送到AudioFlinger的聲音 • mixer_pcm是AudioFlinger處理過程中的聲音 •…

扩展卡尔曼滤波技术(Extended Kalman Filter,EKF)

一、概念介绍 卡尔曼滤波是一种高效率的递归滤波器(自回归滤波器), 它能够从一系列的不完全包含噪声的测量中&#xff0c;估计动态系统的状态&#xff0c;然而简单的卡尔曼滤波必须应用在符合高斯分布的系统中。 扩展卡尔曼滤波就是为了解决非线性问题&#xff0c;普通卡尔曼…

SpringMVC修炼之旅(3)REST风格与拦截器

一、概述 1.1简介 Restful就是一个资源定位及资源操作的风格。不是标准也不是协议&#xff0c;只是一种风格。基于这个风格设计的软件可以更简洁&#xff0c;更有层次&#xff0c;更易于实现缓存等机制。 1.2功能 资源&#xff1a;互联网所有的事物都可以被抽象为资源 资源操作…

基于SpringBoot+Thymeleaf+Mybatis实现大学生创新创业管理系统(源码+数据库+项目运行指导文档)

一、项目简介 本项目是一套基于SpringBoot实现大学生创新创业管理系统&#xff0c;主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目可以直接作为bishe使用。 项目都经过严格调试&#…

STM32CubeMx+MATLAB Simulink串口输出实验

STM32CubeMxMATLAB Simulink串口输出实验 &#x1f4cc;《STM32CubeMxMATLAB Simulink点灯程序》&#x1f4cd;相关篇《MATLAB Simulink STM32硬件在环 &#xff08;HIL&#xff09;实现例程测试》&#x1f516;需要的软件支持包&#xff1a;Embedded Coder Support Package fo…

KEPServerEX 6 之 用户可配置协议U-CON-Driver 中文说明与实战案例(完整版)

用户可配置(U-CON)驱动的提供的一种灵活的通信协议,它可以用于连接不同类型的自动化设备和控制器,实现设备之间的数据交换。支持只读和读写两种数据传输方式,文档最后提供两个真实案例详细案例(实战配置) KEPServerEX 6 之 用户可配置协议U-CON-Driver 中文说明与实战案例…

Java 实现 图片 添加 文字水印、图片水印 工具类

一、话不多说&#xff0c;直接上代码 1.1&#xff0c;水印类型枚举 import lombok.AllArgsConstructor; import lombok.Getter;/*** author: wangjing* createTime: 2023-12-05 15:01* version: 1.0.0* Description: 水印类型枚举*/ Getter AllArgsConstructor SuppressWarni…

「Verilog学习笔记」状态机-重叠序列检测

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 读入数据移位寄存&#xff0c;寄存后的数据与序列数做对比&#xff0c;相等则flag为1&#xff0c;不等则为0 timescale 1ns/1nsmodule sequence_test2(input wire clk ,in…

java单人聊天

服务端 package 单人聊天;import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import…

拼多多商品详情API:构建高效电子商务解决方案

一、引言 随着互联网的快速发展&#xff0c;电子商务行业正在迅速崛起&#xff0c;其中拼多多以其独特的商业模式和创新的商品详情API&#xff0c;成为了行业内的佼佼者。本文将深入探讨拼多多商品详情API的技术特点、实现方式及其在电子商务解决方案中的应用。 二、拼多多商…

【PyTorch】模型选择、欠拟合和过拟合

文章目录 1. 理论介绍2. 实例解析2.1. 实例描述2.2. 代码实现2.2.1. 完整代码2.2.2. 输出结果 1. 理论介绍 将模型在训练数据上拟合的比在潜在分布中更接近的现象称为过拟合&#xff0c; 用于对抗过拟合的技术称为正则化。训练误差和验证误差都很严重&#xff0c; 但它们之间差…

跨地域组网挑战之如何实现数据传输无缝连接?

全球化是当今商业领域的主要趋势&#xff0c;许多行业都迅速扩展到跨国和跨地区运营。软件开发领域也不例外&#xff0c;为了利用全球资源和降低成本&#xff0c;越来越多的软件开发公司将团队分布在不同地理位置&#xff0c;而这也面临着实时回传开发数据至总部服务器的企业组…

要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 7 章:让我们想一想 提示语

要求CHATGPT高质量回答的艺术&#xff1a;提示工程技术的完整指南—第 7 章&#xff1a;"让我们想一想 "提示语 让我们想一想 "提示语是一种用于鼓励 ChatGPT 生成具有反思性和沉思性文字的技巧。 让我们想一想 "提示语的提示公式是 “让我们想一想”&am…