公开数据集概述

如果您已开通MaxCompute服务,可以通过MaxComputeSQL分析连接查询公开数据集中的表,以便您快速试用MaxCompute。本文为您介绍公开数据集信息,并指导您如何通过MaxComputeSQL分析连接查询并分析数据。

简介

MaxCompute开放的公开数据集类别包括:GitHub公开事件数据、国家统计数据、TPC性能测试数据、数字商业类数据、生活服务类数据、金融股票类数据。所有的数据均存储在MaxCompute产品的公开项目BIGDATA_PUBLIC_DATASET的不同Schema中。

类别

简介

数据集名称

Schema名称

GitHub公开事件数据

大量开发人员在GitHub上进行开源项目的开发工作,并在项目的开发过程中产生海量事件。GitHub会记录每次事件的类型及详情、开发者、代码仓库等信息,并开放其中的公开事件,包括加星标、提交代码等。

GitHub公开事件数据集

github_events

国家统计数据

包括世界各国、中国各省的年度GDP数据。

国家统计数据集

national_data

TPC性能数据

TPC-DS

TPC-DS是一个面向决策支持的基准,它对决策支持系统的几个普遍适用的方面进行建模,包括查询和数据维护等,使大数据系统等新兴技术能够执行基准测试。

  • TPC-DS 10GB性能测试集

  • TPC-DS 100GB性能测试集

  • TPC-DS 1TB性能测试集

  • TPC-DS 10TB性能测试集

  • tpcds_10g

  • tpcds_100g

  • tpcds_1t

  • tpcds_10t

TPC-H

TPC-H是一个面向决策支持的基准,它由一套面向业务的即席查询和并发数据修改组成,在大数据量下执行高度复杂的查询,并回答关键业务问题。

  • TPC-H 10GB性能测试集

  • TPC-H 100GB性能测试集

  • TPC-H 1TB性能测试集

  • TPC-H 10TB性能测试集

  • tpch_10g

  • tpch_100g

  • tpch_1t

  • tpch_10t

TPCx-BB

TPCx-BB Express Benchmark BB(TPCx-BB)是一个大数据基准测试,衡量基于Hadoop的大数据系统的性能。它通过执行30个经常执行的分析查询来衡量硬件和软件组件的性能。

  • TPCx-BB 10GB性能测试集

  • TPCx-BB 100GB性能测试集

  • TPCx-BB 1TB性能测试集

  • TPCx-BB 10TB性能测试集

  • tpcbb_10g

  • tpcbb_100g

  • tpcbb_1t

  • tpcbb_10t

数字商业

包括淘宝广告、淘宝购物、阿里电商等数据。

数字商业数据集

commerce

生活服务

包括二手房产、影视及票房、手机号码归属、行政及城乡区划代码信息等数据。

生活服务数据集

life_service

金融股票

股票信息。

金融股票数据集

finance

声明

  • MaxCompute提供的公开数据集数据只能用于产品测试,数据将不做周期更新,且不保障数据准确性,因此请您勿用于正式生产。

  • MaxCompute公开数据集中的TPC数据生成与分析基于TPC的基准测试,并不能与已发布的TPC基准测试结果相比较,因为通过MaxCompute公开数据集进行的测试并不符合TPC基准测试的所有要求。

  • MaxCompute提供的TPC性能测试数据源于TPC,你也可以选择自行生成TPC数据,生成TPC测试数据详情请参见TPC官方文档

注意事项

公开数据集对所有的MaxCompute用户开放。在使用过程中,您需要注意:

  • 公开数据集的数据均存储在BIGDATA_PUBLIC_DATASET项目中,但所有用户并未被加入到该项目中,即非项目空间成员。因此需要跨项目访问数据,在编写SQL脚本时,必须在表名前指定项目名称及Schema名称。同时未开启租户级Schema语法开关的用户需要开启Session级Schema语法,才能保证命令正常运行,命令示例如下:

    --开启Session级Schema语法
    set odps.namespace.schema=true; 
    --查询表dwd_github_events_odps中的100条数据
    select * from bigdata_public_dataset.github_events.dwd_github_events_odps where ds='2024-05-10' limit 100;
    重要

    您无需为公开数据集的数据支付存储费用,但是您需要支付执行查询语句产生的相应计算费用,费用计算规则请参见计算费用(包年包月)计算费用(按量付费)

  • 由于公开数据集需要跨项目访问,您在DataWorks的数据地图中无法查找到公开数据集中的表。

  • 由于公开数据集项目支持按Schema存储,未开启租户级别Schema语法的用户无法在DataWorks数据分析提供的公开数据集中直接查看,但您依旧可以通过我们提供的SQL语句进行查询。

详细表信息

公开项目BIGDATA_PUBLIC_DATASET各Schema中的表详细信息如下。

GitHub公开事件数据

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

github_events

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)

表名称与说明

大量开发人员在GitHub上进行开源项目的开发工作,并在项目的开发过程中产生海量事件。GitHub会记录每次事件的类型及详情、开发者、代码仓库等信息,并开放其中的公开事件,包括加星标、提交代码等,具体事件类型请参见GitHubEvents

MaxCompute将GH Archive提供的海量公开事件数据进行离线处理并开发,生成以下表:

  • dwd_github_events_odps(GitHub公开事件数据事实表)

  • dws_overview_by_repo_month(GitHub公开事件月度指标数据聚合表)

说明

表中的数据源于GH Archive

更新周期

  • dwd_github_events_odps:T+1小时更新。

  • dws_overview_by_repo_month:T+1天更新。

查询表结构

--开启Session级Schema语法。
set odps.namespace.schema=true; 
--查询dwd_github_events_odps表结构。如果想查询其他表,替换schema名称和表名即可。
desc bigdata_public_dataset.github_events.dwd_github_events_odps;

查询示例

--开启Session级Schema语法。
SET odps.namespace.schema=true; 
--统计过去一年星标项目排行(说明:本示例并未考虑用户取消星标等情况)
SELECT
    repo_id,
    repo_name,
    COUNT(actor_login) total
FROM
    bigdata_public_dataset.github_events.dwd_github_events_odps
WHERE
    ds>=date_add(getdate(), -365)
    AND type = 'WatchEvent'
GROUP BY
    repo_id,
    repo_name
ORDER BY
    total DESC
LIMIT 10;

更多数据介绍及Query样例请参见GitHub公开事件数据

国家统计数据

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

national_data

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)

表名称与说明

  • annual_gdp_by_province(中国年度分省GDP数据)

  • annual_gdp_by_country(世界各国年度GDP数据)

说明

annual_gdp_by_province数据源于国家统计局,annual_gdp_by_country数据源于国际货币基金组织(IMF)

更新周期

提供固定数据,不做更新。

查询表结构

--开启Session级Schema语法。
set odps.namespace.schema=true; 
--查询annual_gdp_by_province表结构。如果想查询其他表,替换schema名称和表名即可。
desc bigdata_public_dataset.national_data.annual_gdp_by_province;

查询示例

--开启Session级Schema语法。
SET odps.namespace.schema=true; 
--查看过去20年北京市GDP变化趋势。
SELECT
    region,
    gdp,
    year
FROM
    bigdata_public_dataset.national_data.annual_gdp_by_province
WHERE
    region='北京市'
ORDER BY
    year ASC
LIMIT 20;

TPC-DS数据

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

tpcds_10g、tpcds_100g、tpcds_1t、tpcds_10t

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)、中国香港、日本(东京)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、美国(弗吉尼亚)、美国(硅谷)、英国(伦敦)、德国(法兰克福)、阿联酋(迪拜)、华东2金融云、华北2金融云(邀测)、华北2阿里政务云1、华南1金融云

表名称与说明

TPCDS模型模拟一个全国连锁的大型零售商的销售系统,其中含有三种销售渠道:store(实体店)、web(网店)、catalog(电话订购),每种渠道使用两张表分别模拟销售记录和退货记录,同时包含商品信息、促销信息、用户信息等维度表,详情如下:

  • call_center(客户服务中心相关信息)

  • catalog_page(商品目录相关信息)

  • catalog_returns(电话订购渠的商品退货记录)

  • catalog_sales(电话订购渠的商品销售记录)

  • customer(客户信息)

  • customer_address(客户地址信息)

  • customer_demographics(客户基本信用信息)

  • date_dim(时间维度信息)

  • household_demographics(家庭基本信用信息)

  • income_band(收入信息)

  • inventory(仓储信息)

  • item(商品信息)

  • promotion(商品促销信息)

  • reason(用户退货原因)

  • ship_mode(商品快递信息)

  • store(商户信息)

  • store_returns(门店渠道的商品退货记录)

  • store_sales(门店渠道的商品销售记录)

  • time_dim(时间维度信息)

  • warehouse(仓库信息)

  • web_page(商品网页信息)

  • web_returns(网页渠道的商品退货记录)

  • web_sales(网页渠道的商品销售记录)

  • web_site(商品网站基本信息)

说明

表中数据源于TPC

更新周期

提供固定数据,不做更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询tpcds_10g中的call_center表结构。如果想查询其他规格数据集的表,替换schema名称和表名即可。
DESC bigdata_public_dataset.tpcds_10g.call_center;

查询示例

SET odps.namespace.schema=TRUE; 
SELECT dt.d_year ,
       item.i_brand_id brand_id ,
       item.i_brand brand ,
       SUM(ss_sales_price) sum_agg
FROM bigdata_public_dataset.tpcds_10g.date_dim dt ,
     bigdata_public_dataset.tpcds_10g.store_sales ,
     bigdata_public_dataset.tpcds_10g.item
WHERE dt.d_date_sk = store_sales.ss_sold_date_sk
  AND store_sales.ss_item_sk = item.i_item_sk
  AND item.i_manufact_id = 190
  AND dt.d_moy = 12
GROUP BY dt.d_year ,
         item.i_brand ,
         item.i_brand_id
ORDER BY dt.d_year,
         sum_agg DESC,
         brand_id LIMIT 100;

更多不同数据规格的Query样例文件请参考TPC-DS数据

更多数据介绍请参见官方 TPC Benchmark DS 标准规范

TPC-H数据

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

tpch_10g、tpch_100g、tpch_1t、tpch_10t

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)、 中国香港、日本(东京)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、美国(弗吉尼亚)、美国(硅谷)、英国(伦敦)、德国(法兰克福)、阿联酋(迪拜)、华东2金融云、华北2金融云(邀测)、华北2阿里政务云1、华南1金融云

表名称与说明

TPC-H是用来评估在线分析处理的基准程序,主要模拟了一个供应商和采购商之间的交易行为。其中含有订单信息、商品信息、用户信息等,详情如下:

  • customer(消费者信息)

  • lineitem(在线商品信息)

  • nation(国家信息)

  • orders(订单信息)

  • part(零件信息)

  • partsupp(供货商零件信息)

  • region(地区信息)

  • supplier(供货商信息)

说明

表中数据源于TPC

更新周期

提供固定数据,不做更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询tpch_10g中的lineitem表结构。如果想查询其他规格数据集的表,替换schema名称和表名即可。
DESC bigdata_public_dataset.tpch_10g.lineitem;

查询示例

SET odps.namespace.schema=TRUE; 
SET odps.sql.validate.orderby.limit=FALSE;
SET odps.sql.hive.compatible=TRUE;
SELECT l_returnflag,
       l_linestatus,
       sum(l_quantity) AS sum_qty,
       sum(l_extendedprice) AS sum_base_price,
       sum(l_extendedprice * (1 - l_discount)) AS sum_disc_price,
       sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) AS sum_charge,
       avg(l_quantity) AS avg_qty,
       avg(l_extendedprice) AS avg_price,
       avg(l_discount) AS avg_disc,
       count(*) AS count_order
FROM bigdata_public_dataset.tpch_10g.lineitem
WHERE l_shipdate <= date'1998-12-01' - interval '90' DAY
GROUP BY l_returnflag,
         l_linestatus
ORDER BY l_returnflag,
         l_linestatus;

更多数据介绍及查询样例请参见官方 TPC Benchmark H 标准规范

TPCx-BB数据

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

tpcxbb_10g、tpcxbb_100g、tpcxbb_1t、tpcxbb_10t

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)、中国香港、日本(东京)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、美国(弗吉尼亚)、美国(硅谷)、英国(伦敦)、德国(法兰克福)、阿联酋(迪拜)、华东2金融云、华北2金融云(邀测)、华北2阿里政务云1、华南1金融云

表名称与说明

TPCx-BB是一个大数据基准测试工具,该工具模拟了一个网上零售的场景,包含销售记录和退货记录,同时包含商品信息和促销信息等,详情如下:

  • customer(客户信息)

  • customer_address(客户地址信息)

  • customer_demographics(客户基本信用信息)

  • date_dim(时间维度信息)

  • household_demographics(家庭基本信用信息)

  • income_band(收入信息)

  • inventory(仓储信息)

  • item(商品信息)

  • item_marketprices(商品的竞争对手价格信息)

  • product_reviews(商品评论信息)

  • promotion(商品促销信息)

  • reason(用户退货原因)

  • ship_mode(商品快递信息)

  • store(门店信息)

  • store_returns(门店渠道的商品退货记录)

  • store_sales(门店渠道的商品销售记录)

  • time_dim(时间维度信息)

  • warehouse(仓库信息)

  • web_clickstreams(网页点击信息)

  • web_page(商品网页信息)

  • web_returns(网页渠道的商品退货记录)

  • web_sales(网页渠道的商品销售记录)

  • web_site(商品网站信息)

说明

表中数据源于TPC

更新周期

提供固定数据,不做更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询tpcxbb_10g中的web_sales表结构。如果想查询其他规格数据集的表,替换schema名称和表名即可。
DESC bigdata_public_dataset.tpcxbb_10g.web_sales;

查询示例

SET odps.namespace.schema=TRUE; 
select * FROM bigdata_public_dataset.tpcxbb_10g.web_sales limit 100;

更多数据介绍及查询样例请参见官方TPCx-BB标准规范

数字商业数据集

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

commerce

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)

表名称与说明

  • adv_raw_sample(从淘宝网站中随机抽样100+万用户8天内的展示广告点击日志,构成原始的样本骨架)

  • adv_ad_feature(涵盖了raw_sample表中部分广告的基本信息)

  • user_profile(涵盖了raw_sample中全部用户的基本信息)

  • behavior_log(涵盖了raw_sample中全部用户22天内的购物行为(浏览、加购、喜欢、购买))

更新周期

提供固定数据,不再做增量更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询behavior_log表结构。如果想查询其他表,替换表名即可。
DESC bigdata_public_dataset.commerce.behavior_log;

查询示例

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--通过behavior_log统计22天内销量最高的三个商品类目ID。
SELECT cate,
       count(btag) sales
FROM behavior_log
WHERE btag='buy'
GROUP BY cate
ORDER BY sales DESC LIMIT 3;

生活服务数据集

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

life_service

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)

表名称与说明

  • movie_basic_info(电影基本信息表)

  • movie_box(票房基本信息表)

  • areacode_basic_info_2020(2020年行政及城乡区划代码基本信息表)

  • phoneno_basic_info_2020(2020年手机号归属地基本信息表)

更新周期

  • movie_basic_info、movie_box:提供固定日期分区的数据,不再做增量更新。

  • areacode_basic_info_2020、phoneno_basic_info_2020:提供固定数据,不再做增量更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询movie_box表结构。如果想查询其他表,替换表名即可。
DESC bigdata_public_dataset.life_service.movie_box;

查询示例

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE;
--查询2017年1月14日的票房排名前十的电影名称。
SELECT moviename
FROM bigdata_public_dataset.life_service.movie_box
WHERE ds ='20170114'
ORDER BY rank ASC LIMIT 10;

金融股票数据集

项目名称

BIGDATA_PUBLIC_DATASET

Schema名称

finance

可用地域

华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)

表名称与说明

  • ods_enterprise_share_basic(股票基本信息表)

  • ods_enterprise_share_quarter_cashflow(季度现金流报表)

  • ods_enterprise_share_quarter_growth(季度业务增长数据表)

  • ods_enterprise_share_quarter_operation(季度财务周转数据表)

  • ods_enterprise_share_quarter_profit(季度利润表)

  • ods_enterprise_share_quarter_report(季度报表)

  • ods_enterprise_share_trade_h(股票价格表)

更新周期

提供固定日期分区的数据,不再做增量更新。

查询表结构

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE; 
--查询ods_enterprise_share_basic表结构。如果想查询其他表,替换表名即可。
DESC bigdata_public_dataset.finance.ods_enterprise_share_basic;

查询示例

--开启Session级Schema语法。
SET odps.namespace.schema=TRUE;
--查询2017年1月14日的股票基本信息数据。
SELECT *
FROM bigdata_public_dataset.finance.ods_enterprise_share_basic
WHERE ds ='20170114' LIMIT 10;

使用公开数据集

前提条件

已开通MaxCompute并已创建项目,详情请参见创建MaxCompute项目

支持的工具或平台

操作步骤(以SQL分析为例)

  1. 登录MaxCompute控制台,新建MaxCompute项目,具体操作请参见创建MaxCompute项目

  2. 在左侧导航栏单击工作区 > SQL分析,在SQL分析页面左侧单击image.png图标,打开资源管理器,选择公共数据集DEMO中的样例文件。或者新建SQL文件,自行在SQL代码编辑框中输入以下SQL示例:

    --查看过去20年中国各省GDP变化趋势。
    SET odps.namespace.schema=true; 
    SET odps.sql.validate.orderby.limit = false;
    SELECT
        region,
        gdp,
        year
    FROM
        bigdata_public_dataset.national_data.annual_gdp_by_province
    ORDER BY
        year ASC;
  3. 单击页面右侧的运行参数,配置如下参数。

    • 项目:必选项,指定该SQL在哪个项目内执行,因此需要选择当前账号有create instance权限的项目。

    • 计算配额:非必选,即实现作业级别指定Quota。如果要选择,则需要选择当前账号有对应usage权限的Quota;如果不选择,则SQL会在项目配置的默认计算Quota里执行。

  4. 单击运行,在结果页签查看运行结果。image.png

  5. 对查询结果进行可视化分析。您可以单击运行结果的image.png图标,进行简单的可视化分析。image.png

说明

原公开数据集项目公开数据集参考已不再维护与更新,若您仍有需求依然可以继续使用。

相关文档

MaxCompute数据导出方式介绍详情,请参见:

  • Download:支持将数据或指定Instance的执行结果下载至本地。

  • UNLOAD:支持将数据导出至OSS、Hologres外部存储。