大数据Hologres(二):Hologres 快速入门

文章目录
Hologres 快速入门
一、资源领取
二、入门体验
1、创建数据库
2、创建表
3、导入示例数据
4、查询表中数据
Hologres 快速入门
一、资源领取
领取链接: 阿里云免费试用 - 阿里云 (aliyun.com)
二、入门体验
1、创建数据库
- 进入Hologres管理控制台,单击左侧实例列表。
- 在实例列表页面,单击实例名称

- 在页面右上角点击登录实例,并新建数据库。



2、创建表
2.1、创建外部表
- 选择SQL编辑器

- 在新增的临时Query查询页面,选择已创建的实例名和数据库

- 选择已创建的实例名和数据库后,在SQL查询的编辑框输入如下语句,单击运行。
DROP FOREIGN TABLE IF EXISTS odps_customer_10g;
DROP FOREIGN TABLE IF EXISTS odps_lineitem_10g;
DROP FOREIGN TABLE IF EXISTS odps_nation_10g;
DROP FOREIGN TABLE IF EXISTS odps_orders_10g;
DROP FOREIGN TABLE IF EXISTS odps_part_10g;
DROP FOREIGN TABLE IF EXISTS odps_partsupp_10g;
DROP FOREIGN TABLE IF EXISTS odps_region_10g;
DROP FOREIGN TABLE IF EXISTS odps_supplier_10g;
IMPORT FOREIGN SCHEMA "MAXCOMPUTE_PUBLIC_DATA#default" LIMIT to
(odps_customer_10g,odps_lineitem_10g,odps_nation_10g,odps_orders_10g,odps_part_10g,odps_partsupp_10g,odps_region_10g,odps_supplier_10g
) FROM SERVER odps_server INTO public OPTIONS(if_table_exist'error',if_unsupported_type'error');


2.2、创建内部表
以下SQL语句用来创建名称分别为LINEITEM、ORDERS、PARTSUPP、PART、CUSTOMER、SUPPLIER、NATION和REGION的表,用于后续存储数据。
DROP TABLE IF EXISTS LINEITEM;BEGIN;
CREATE TABLE LINEITEM (L_ORDERKEY bigint NOT NULL,L_PARTKEY int NOT NULL,L_SUPPKEY int NOT NULL,L_LINENUMBER int NOT NULL,L_QUANTITY DECIMAL(15, 2) NOT NULL,L_EXTENDEDPRICE DECIMAL(15, 2) NOT NULL,L_DISCOUNT DECIMAL(15, 2) NOT NULL,L_TAX DECIMAL(15, 2) NOT NULL,L_RETURNFLAG text NOT NULL,L_LINESTATUS text NOT NULL,L_SHIPDATE date NOT NULL,L_COMMITDATE date NOT NULL,L_RECEIPTDATE date NOT NULL,L_SHIPINSTRUCT text NOT NULL,L_SHIPMODE text NOT NULL,L_COMMENT text NOT NULL,PRIMARY KEY (L_ORDERKEY, L_LINENUMBER)
);
DROP TABLE IF EXISTS LINEITEM;BEGIN;
CREATE TABLE LINEITEM (L_ORDERKEY bigint NOT NULL,L_PARTKEY int NOT NULL,L_SUPPKEY int NOT NULL,L_LINENUMBER int NOT NULL,L_QUANTITY DECIMAL(15, 2) NOT NULL,L_EXTENDEDPRICE DECIMAL(15, 2) NOT NULL,L_DISCOUNT DECIMAL(15, 2) NOT NULL,L_TAX DECIMAL(15, 2) NOT NULL,L_RETURNFLAG text NOT NULL,L_LINESTATUS text NOT NULL,L_SHIPDATE date NOT NULL,L_COMMITDATE date NOT NULL,L_RECEIPTDATE date NOT NULL,L_SHIPINSTRUCT text NOT NULL,L_SHIPMODE text NOT NULL,L_COMMENT text NOT NULL,PRIMARY KEY (L_ORDERKEY, L_LINENUMBER)
);
CALL set_table_property ('LINEITEM', 'clustering_key', 'L_SHIPDATE,L_ORDERKEY');
CALL set_table_property ('LINEITEM', 'segment_key', 'L_SHIPDATE');
CALL set_table_property ('LINEITEM', 'distribution_key', 'L_ORDERKEY');
CALL set_table_property ('LINEITEM', 'bitmap_columns', 'L_RETURNFLAG,L_LINESTATUS,L_SHIPINSTRUCT,L_SHIPMODE');
CALL set_table_property ('LINEITEM', 'dictionary_encoding_columns', 'l_comment:off,l_returnflag,l_linestatus,l_shipinstruct,l_shipmode');
COMMIT;DROP TABLE IF EXISTS ORDERS;BEGIN;
CREATE TABLE ORDERS (O_ORDERKEY bigint NOT NULL PRIMARY KEY,O_CUSTKEY int NOT NULL,O_ORDERSTATUS text NOT NULL,O_TOTALPRICE DECIMAL(15, 2) NOT NULL,O_ORDERDATE date NOT NULL,O_ORDERPRIORITY text NOT NULL,O_CLERK text NOT NULL,O_SHIPPRIORITY int NOT NULL,O_COMMENT text NOT NULL
);
CALL set_table_property ('ORDERS', 'segment_key', 'O_ORDERDATE');
CALL set_table_property ('ORDERS', 'colocate_with', 'lineitem');
CALL set_table_property ('ORDERS', 'distribution_key', 'O_ORDERKEY');
CALL set_table_property ('ORDERS', 'bitmap_columns', 'O_ORDERSTATUS,O_ORDERPRIORITY,O_CLERK,O_SHIPPRIORITY');
CALL set_table_property ('ORDERS', 'dictionary_encoding_columns', 'o_comment:off,o_orderstatus,o_orderpriority,o_clerk');
COMMIT;
DROP TABLE IF EXISTS CUSTOMER;BEGIN;
CREATE TABLE CUSTOMER (C_CUSTKEY int NOT NULL PRIMARY KEY,C_NAME text NOT NULL,C_ADDRESS text NOT NULL,C_NATIONKEY int NOT NULL,C_PHONE text NOT NULL,C_ACCTBAL DECIMAL(15, 2) NOT NULL,C_MKTSEGMENT text NOT NULL,C_COMMENT text NOT NULL
);
CALL set_table_property ('CUSTOMER', 'distribution_key', 'C_CUSTKEY');
CALL set_table_property ('CUSTOMER', 'colocate_with', 'lineitem');
CALL set_table_property ('CUSTOMER', 'bitmap_columns', 'C_NATIONKEY,C_MKTSEGMENT');
CALL set_table_property ('CUSTOMER', 'dictionary_encoding_columns', 'c_name:off,c_address:off,c_phone:off,c_comment:off,c_mktsegment');
COMMIT;
DROP TABLE IF EXISTS SUPPLIER;BEGIN;
CREATE TABLE SUPPLIER (S_SUPPKEY int NOT NULL PRIMARY KEY,S_NAME text NOT NULL,S_ADDRESS text NOT NULL,S_NATIONKEY int NOT NULL,S_PHONE text NOT NULL,S_ACCTBAL DECIMAL(15, 2) NOT NULL,S_COMMENT text NOT NULL
);
CALL set_table_property ('SUPPLIER', 'distribution_key', 'S_SUPPKEY');
CALL set_table_property ('SUPPLIER', 'colocate_with', 'lineitem');
CALL set_table_property ('SUPPLIER', 'bitmap_columns', 'S_NATIONKEY');
CALL set_table_property ('SUPPLIER', 'dictionary_encoding_columns', '');
COMMIT;DROP TABLE IF EXISTS NATION;BEGIN;
CREATE TABLE NATION (N_NATIONKEY int NOT NULL PRIMARY KEY,N_NAME text NOT NULL,N_REGIONKEY int NOT NULL,N_COMMENT text NOT NULL
);
CALL set_table_property ('NATION', 'distribution_key', 'N_NATIONKEY');
CALL set_table_property ('NATION', 'colocate_with', 'lineitem');
CALL set_table_property ('NATION', 'bitmap_columns', '');
CALL set_table_property ('NATION', 'dictionary_encoding_columns', '');
COMMIT;DROP TABLE IF EXISTS REGION;BEGIN;
CREATE TABLE REGION (R_REGIONKEY int NOT NULL PRIMARY KEY,R_NAME text NOT NULL,R_COMMENT text
);
CALL set_table_property ('REGION', 'distribution_key', 'R_REGIONKEY');
CALL set_table_property ('REGION', 'colocate_with', 'lineitem');
CALL set_table_property ('REGION', 'bitmap_columns', '');
CALL set_table_property ('REGION', 'dictionary_encoding_columns', '');
COMMIT;


注意事项:
外部表在Hologres中不存储数据,只进行字段映射。通过外部表可以使用Hologres直接调用存储于MaxCompute公共空间MAXCOMPUTE_PUBLIC_DATA的数据。
3、导入示例数据
- SQL查询的编辑框输入如下语句,单击运行。
INSERT INTO public.customer SELECT * FROM public.odps_customer_10g ;
INSERT INTO public.lineitem SELECT * FROM public.odps_lineitem_10g ;
INSERT INTO public.nation SELECT * FROM public.odps_nation_10g ;
INSERT INTO public.orders SELECT * FROM public.odps_orders_10g ;
INSERT INTO public.part SELECT * FROM public.odps_part_10g ;
INSERT INTO public.partsupp SELECT * FROM public.odps_partsupp_10g ;
INSERT INTO public.region SELECT * FROM public.odps_region_10g ;
INSERT INTO public.supplier SELECT * FROM public.odps_supplier_10g ;vacuum nation;
vacuum region;vacuum supplier;
vacuum supplier;
vacuum customer;
vacuum part;
vacuum partsupp;
vacuum orders;
vacuum lineitem;analyze nation;
analyze region;
analyze lineitem;
analyze orders;
analyze customer;
analyze part;
analyze partsupp;
analyze supplier;
analyze lineitem (l_orderkey,l_partkey,l_suppkey);
analyze orders (o_custkey);
analyze partsupp(ps_partkey,ps_suppkey);
- 在Hologres中,vacuum是一个数据库操作命令,用于回收并释放数据库中不再需要的存储空间。
- 具体而言,vacuum 命令的作用通常包括:

- Analyze 也是一个数据库操作命令,用于收集统计信息,以帮助数据库系统优化查询计划。通过分析表的数据分布和结构,数据库系统可以更好地选择执行计划,提高查询性能。
- 它通常执行以下操作:

4、查询表中数据
selectl_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 lineitem
Where l_shipdate <= date '1998-12-01' - interval '120' day
group by l_returnflag, l_linestatus
order byl_returnflag,l_linestatus;

- 📢博客主页:https://lansonli.blog.csdn.net
- 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
- 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
- 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
相关文章:
大数据Hologres(二):Hologres 快速入门
文章目录 Hologres 快速入门 一、资源领取 二、入门体验 1、创建数据库 2、创建表 3、导入示例数据 4、查询表中数据 Hologres 快速入门 一、资源领取 领取链接: 阿里云免费试用 - 阿里云 (aliyun.com) 二、入门体验 1、创建数据库 进入Hologres管理控制…...
华为仓颉语言入门(7):深入理解 do-while 循环及其应用
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 用法说明 do-while 表达式是一种控制循环的结构,它允许代码在每次循环之后进行条件判断。在这个表达式中,无论条件一开始是否满足,代码块都会被至少执行一次。 语法…...
在传销案件中数据库取证的分步指南
金字塔计划的特点是分层结构,主要由招募新成员的机制驱动。取证部门调查这些方案时,往往依靠数据库记录来分析这种结构。这些记录详细描述了上级和下级之间的关系,使调查人员能够描绘出组织的动态。在本文中,我们将探讨如何利用数…...
数据结构与算法——Java实现 21.栈
目录 一、概述 二、基于链表的栈的实现 接口 链表接口实现类 测试类 编辑 三、基于数组的栈的实现 接口 数组接口实现类 测试类 妈妈,生日快乐,希望你健康快乐没有烦恼也不会有病痛 —— 24.9.28 一、概述 计算机科学中,stack是一种线性的…...
实验一 网络基础及仿真模拟软件Packet Tracer 入门
实验一 网络基础及仿真模拟软件Packet Tracer 入门 【实验目的】 一、认识 Packet Tracer 。 二、学习使用 Packet Tracer 进行拓扑的搭建。 三、学习使用 Packet Tracer 对设备进行配置,并进行简单的测试。 【实验内容和结果】 一、拖放设备和布置线缆 二、用…...
建立分支提交代码
git分支 git branch 产看当前分支 git branch -a 查看所有分支 git checkout 分支名 切换分支 git checkout -b 分支名 建立分支(仅仅是在本地建立了,并没有关联线上) git push --set-upstream origin 分支名 把本地分支推到先线上 gti add …...
认识 Linux操作系统
前言 电脑由硬件和软件相构成,在软件中操作系统只是其中的一个分支,今天我们学习的Linux有是操作系统中的一种,不同的操作系统有自己的特点和生存生态。市面上大多数电脑自带的操作系统都是我们熟知的Windows。Linux将会为大家带来开源的新天…...
AI时代程序员的核心竞争力提升与保持之道
一、引言 ---- 随着人工智能(AI)和生成式人工智能(AIGC)技术的迅速发展,包括chatgpt、midjourney、claude等大语言模型接连不断地涌现,AI辅助编程工具在程序员社区中的普及正在悄然改变我们的工作方式。…...
状态模式原理剖析
《状态模式原理剖析》 状态模式(State Pattern) 是一种行为设计模式,它允许对象在其内部状态改变时改变其行为。换句话说,当对象状态发生变化时,它的行为也会随之变化。 通过状态模式,可以消除通过 if-else…...
若伊(前后端分离)学习笔记
基础应用篇 1. 若伊搭建 若伊版本 若依官方针对不同开发需求提供了多个版本的框架,每个版本都有其独特的特点和适用场景: 前后端混合版本 :RuoYi结合了SpringBoot和Bootstrap的前端开发框架,适合快速构建传统的Web应用程序&…...
Elasticsearch学习笔记(2)
索引库操作 在Elasticsearch中,Mapping是定义文档字段及其属性的重要机制。 Mapping映射属性 type:字段数据类型 1、字符串: text:可分词的文本,适用于需要全文检索的情况。keyword:用于存储精确值&am…...
Vue devtools 插件
一、安装 去这下载https://chrome.zzzmh.cn/ 打开chrome的扩展程序 再打开开发模式 把刚才下载的拖到这里 然后把它固定到工具栏 就是这样了。 二、使用 程序通过open on live server后,打开开发者工具,找到vue就可以了。 这是代码 <div id"ap…...
Ubuntu 16.04安装填坑记录
一. 问题描述: (1)Ubuntu 16.04使用USB启动盘安装时,出现"try ubuntu without installation"或“install ubuntu”选择,Enter选择安装后,显示器黑屏无任何显示。 原因分析: 显示黑…...
python的pyinstaller
1、pyinstaller --onefile -w *.py 可以生成可执行文件 -w就是不需要有console窗体出现、 2、 console窗体会出现一些警告。 比如 Warning: QT_DEVICE_PIXEL_RATIO is deprecated. Instead use: QT_AUTO_SCREEN_SCALE_FACTOR to enable platform plugin controlled per-scre…...
Vue3(五) 组件通信大汇总
文章目录 一、props二、自定义事件三、mitt四、v-model1.v-model的本质2.v-model用在组件标签上3.更换modelValue4.更换modelValue时,可以在组件标签上多次使用v-model 五、$attrs六、$refs,与¥parent1. 回顾标签ref属性修改组件信息2. $refs实现父修改所…...
红队信息搜集扫描使用
红队信息搜集扫描使用 红队行动中需要工具化一些常用攻击,所以学习一下 nmap 等的常规使用,提供灵感 nmap 帮助 nmap --help主机扫描 Scan and no port scan(扫描但不端口扫描)。-sn 在老版本中是 -sP,P的含义是 P…...
Python自学查漏9.28
自学查漏9.28 一、环境安装&代码执行原理&变量命名 安装 Python 代码执行原理 解析(Parsing): 当你运行一个 Python 脚本时,Python 解释器首先会解析整个代码,将其转换成一种叫做“字节码”(bytecode&…...
Java文件I/O处理之RandomAccessFile【随意存取文件】
Java语言有一个处理文件输入输出的RandomAccessFile类,既可以读取文件内容,也可以向文件输出数据。 RandomAccessFile类在国内的技术文档和书籍中都翻译为“随机访问文件”类,确实令人不解。 在中文中“随机”的意思: 不设任何条…...
Android页面跳转与返回机制详解
在Android开发中,页面跳转是实现应用功能交互的重要手段之一。本文将从Activity之间的跳转、Activity与Fragment之间的跳转、Fragment之间的跳转以及页面返回的问题四个方面进行详细解析。 一、Activity之间的跳转 Activity是Android应用的基本构建块,…...
Elasticsearch学习笔记(1)
初识 Elasticsearch 认识和安装 Elasticsearch 是由 Elastic 公司开发的一套强大的搜索引擎技术,属于 Elastic 技术栈的一部分。完整的技术栈包括: Elasticsearch:用于数据存储、计算和搜索。Logstash/Beats:用于数据收集。Kib…...
文档版本混乱、变更无通知、示例代码过期?Perplexity DevDocs监控体系搭建指南(含GitHub Action自动告警模板)
更多请点击: https://intelliparadigm.com 第一章:文档版本混乱、变更无通知、示例代码过期?Perplexity DevDocs监控体系搭建指南(含GitHub Action自动告警模板) 核心痛点与监控目标 现代开发者文档(如 P…...
高性能云端GPU推荐,满足深度学习全场景需求
本文以安诺其集团旗下专业GPU算力平台“智星云”为样本,从其技术架构、全系型号定价、主流平台对比、全场景适配四个维度展开,聚焦一个核心问题:在算力价格全线上涨的2026年,高性能深度学习任务如何用合理的预算匹配最合适的GPU方…...
如何用BilibiliDown轻松下载B站视频:终极跨平台免费开源工具完整指南
如何用BilibiliDown轻松下载B站视频:终极跨平台免费开源工具完整指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.co…...
如何快速完成Windows系统部署:高效自动化工具完整指南
如何快速完成Windows系统部署:高效自动化工具完整指南 【免费下载链接】MediaCreationTool.bat Universal MCT wrapper script for all Windows 10/11 versions from 1507 to 21H2! 项目地址: https://gitcode.com/gh_mirrors/me/MediaCreationTool.bat Wind…...
基于MCP协议构建AI助手本地工具服务器:从原理到实战
1. 项目概述与核心价值最近在折腾AI Agent的开发,发现一个挺有意思的项目,叫kirill-markin/example-mcp-server。这名字听起来平平无奇,但如果你正在研究如何让ChatGPT、Claude这类大模型助手变得更“能干”,能直接操作你电脑上的…...
Perplexity企业版部署倒计时:仅剩3个关键License配额可申领,附2024Q3企业版SLA服务等级白皮书摘要
更多请点击: https://intelliparadigm.com 第一章:Perplexity企业版核心价值与定位 Perplexity企业版并非通用问答工具的简单升级,而是面向现代数据驱动型组织构建的**可信AI协作者平台**。它深度融合企业知识图谱、权限感知检索与可审计推理…...
【模块化设计-14】深入解析 RT-Thread syswatch 系统监控模块:保障系统稳定的核心卫士
在嵌入式系统开发中,系统的稳定性是重中之重。RT-Thread 提供的 syswatch(系统监控)模块,专为解决线程异常阻塞、保障系统持续运行设计。本文将从模块设计理念、核心功能、配置项、工作流程到实际测试,全方位解析 sysw…...
热销榜单:2026年深圳App开发公司推荐,揪出大众推荐的五大高口碑产品
在2026年、深圳的App开发公司凭借其创新能力逐渐崭露头角。在这个市场中解决方案、从电商到物联网设计美学赢得了用户信任;而本凡码农科技则专注于小程序定制、满足市场对便捷应用的追求。还有、云码科技伴随着创新技术提供了更高等灵活性,而晨曦科技结合…...
如何快速设置Translumo:面向初学者的完整实时屏幕翻译指南
如何快速设置Translumo:面向初学者的完整实时屏幕翻译指南 【免费下载链接】Translumo Advanced real-time screen translator for games, hardcoded subtitles in videos, static text and etc. 项目地址: https://gitcode.com/gh_mirrors/tr/Translumo 你是…...
为Claude Code配置Taotoken解决API密钥不稳定与Token不足问题
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 为Claude Code配置Taotoken解决API密钥不稳定与Token不足问题 应用场景类,许多开发者使用Claude Code作为编程助手但常…...
