首页
学习
活动
专区
圈层
工具
发布

HAWQ技术解析(九) —— 外部数据

HAWQ不但可以读写自身系统中的表,而且能够访问HDFS、Hive、HBase等外部系统的数据。这是通过一个名为PXF的扩展框架实现的。...大部分外部数据是以HAWQ外部表的形式进行访问的,但对于Hive,除外部表方式,PXF还能够与HCatalog结合直接查询Hive表。...查询外部HDFS数据         HAWQ通过外部表的形式访问HDFS文件。下面是创建一个HDFS外部表的语法。...PXF的Hive插件用于读取存储在Hive表中的数据。PXF提供两种方式查询Hive表: 通过整合PXF与HCatalog直接查询。 通过外部表查询。        ...(4)查询可写外部表         HAWQ不支持对可写外部表的查询。为了查询可写外部表的数据,需要建立一个可读外部表,指向HDFS的相应文件。

4K100
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    通过外部表改进一个繁琐的大查询 (r8笔记第32天)

    问题的背景是这样的,业务部门需要做一个大查询,他们目前只拿到了部分账号的一个id字段的值,需要匹配得到一个类似手机号的字段值,开发部门提供了对应 的sql语句,会关联两张表来匹配得到对的数据,然后反馈到...所以我是通过excel把id列的值拷贝到文本文件中,然后通过云服务器来中转这 个文件,避开了流量的限制。间接实现了首要条件。...第二个是目前涉及的id有些多,只能在备库执行,这个倒没有异议,但是结合第三条来看,需要避免使用in list的方式,我们可以采用临时表的方式,或者使用外部表。...所以对此我打算在主库中创建外部表,然后外部表的ddl会同步到备库,然后把实际的文本文件拷贝到备库去,查询操作都在备库执行。这样就和主库没有了关系。备库怎么查询主库都不会收到影响。...然后创建外部表 CREATE TABLE test_cn (cn varchar2(50) ) ORGANIZATION EXTERNAL (TYPE

    84790

    HAWQ与Hive查询性能对比测试

    一、实验目的         本实验通过模拟一个典型的应用场景和实际数据量,测试并对比HAWQ内部表、外部表与Hive的查询性能。 二、硬件环境 1. 四台VMware虚机组成的Hadoop集群。...profile=hiveorc') format 'custom' (formatter='pxfwritable_import');         说明:HAWQ外部表使用PXF协议,指向相应的...; analyze page_click_fact; 六、执行查询         分别在hive表、HAWQ外部表、HAWQ内部表上执行以下5个查询语句,记录执行时间。...同样的查询,在HAWQ的Hive外部表上执行却很慢。因此,在执行分析型查询时最好使用HAWQ内部表。如果不可避免地需要使用外部表,为了获得满意的查询性能,需要保证外部表数据量尽可能小。...同时要使查询尽可能简单,尽量避免在外部表上执行聚合、分组、排序等复杂操作。 ? 图2

    1.5K60

    HAWQ技术解析(三) —— 基本架构

    HAWQ主节点解析查询,优化查询,向段分发查询,并协调查询执行。         最终用户通过主节点与HAWQ交互。...外部数据访问         HAWQ可以使用Pivotal eXtension Framework(PXF)访问外部文件。...PXF是HAWQ的扩展框架,它允许HAWQ象读写HAWQ表一样来访问外部数据源的数据。PXF中已经内建了多个连接器,用于访问HDFS文件,Hive表和HBase表。...并且PXF还与HCatalog集成,直接查询Hive表。         用户可以使用PXF API开发的Java插件,创建自己定制的PXF连接器,访问其它并行数据存储或处理引擎。...以下因素决定了一个查询所使用的虚拟段个数。 查询运行时的可用资源。 查询成本。 表的分布策略,就是说,是随机分布表还是哈希分布表。 查询是否引入了UDF或外部表。

    2.1K90

    MySQL查询某个表中的所有字段并通过逗号分隔连接

    想多造一些测试数据,表中字段又多一个个敲很麻烦,导出表中部分字段数据又不想导出ID字段(因为ID字段是自增的,导出后再插入会报唯一性错误),select * 查出来又是所有的字段。...可以通过如下SQL查询表中所有字段通过逗号连接,然后复制出来进行select查询再导出 select group_concat(COLUMN_NAME) '所有字段' from information_schema.COLUMNS...where table_name = '表名'; 执行效果如下: 下面的语句可以查询某个库中某个表的所有字段,字段的名称、类型、字符长度和字段注释等信息 select * from information_schema.COLUMNS...where table_name = '表名' and table_schema = '数据库名'; 执行效果如下:

    14.2K20

    在NHibernate的单表继承模式下通过父类Repository查询子类

    使用单表继承可以不用Join多个表查询效率高,而且在Domain Model的属性提示到父类或者下降到子类时,数据库模型不用更改。...在NHibernate中经常会遇到通过父类的Repository来查询子类的情况,比如现在有一个抽象的Employee对象,下面有OfficeUser和Teacher两个具体的对象,这两个对象都有其特有的属性...我们可以将OfficeUser和Teacher都保存到Employee表中,然后建立了一个EmployeeRepository,使用Employee作为Query的入口,那么如果要查询Employee表中所有的...ems = cri.List(); 这里又不一样了,where条件后面跟的“Type”是Employee表的Discriminator,是一个列名,也就是通过这一列来区分Employee...以上是以最简单了例子说明了如果通过父类查询具体的子类的方法,实际项目中肯定比这个查询要复杂,但是只要记住了这三种查询的要点,结合其他条件就可以写出NHibernate能够理解的查询。

    1.1K20

    HAWQ取代传统数仓实践(二)——搭建示例模型(MySQL、HAWQ)

    HAWQ是数据库系统,自带元数据表。         查询引擎组件负责实际执行用户查询。...在变化数据捕获(CDC)时需要关联RDS和TDS的表,而HAWQ的外部表和内部表关联查询的速度是很慢的,在数据量非常大的情况下,更是慢到不能忍受。 通常维度数据量比事实数据量小得多。...创建EXT模式中的数据库对象 (1)用HAWQ管理员用户授予dwtest用户在dw库中创建外部表的权限 psql -d dw -h hdp3 -c "grant all on protocol pxf...to dwtest"         如果不授予相应权限,创建外部表时会报以下错误: ERROR: permission denied for external protocol pxf (2)创建HAWQ...下一篇说明的数据初始装载时会看到,为了让EXT的数据文件尽可能的小,Sqoop使用了压缩选项,而hdfstextsimples属性的PXF外部表能自动正确读取Sqoop缺省的gzip压缩文件。 4.

    1.9K81

    HAWQ技术解析(一) —— HAWQ简介

    它包含关联子查询、窗口函数、汇总与数据库、广泛的标量函数与聚合函数的功能。用户可通过ODBC和JDBC连接HAWQ。...HAWQ已经过验证,能够快速为涉及超过50个关联表的高要求查询找到理想查询计划,从而成为业内最佳的SQL on Hadoop数据发现与查询引擎。...HAWQ通过名为Pivotal eXtension Framework(PXF)的模块提供数据联合功能。...除了常见的数据联合功能外,PXF还利用SQL on Hadoop提供其它具有行业特色的能力: 任意大数据集低延迟:PXF使用智能抓取,其过滤器下推到Hive和Hbase。...高效:PXF利用ANALYZE可收集外部数据的统计资料。这样可通过基于代价的优化器优化联合数据源统计信息,帮助联合环境构建更高效的查询。 7.

    7.9K23

    HAWQ取代传统数仓实践(一)——为什么选择HAWQ

    成熟的基于Hadoop的SQL系统需要支持和正确执行多数此类查询,以解决各种不同分析工作场景和使用案例中的问题。图1所示的基准测试是通过TPC-DS中的99个模板生成的111个查询来执行的。...HAWQ虽然没有提供update、delete等DML语句,但通过其强大的数据查询功能,可以轻松实现多维数据仓库中渐变维(SCD)的处理需求。 ?...图1 (4)分区表         与传统DBMS系统类似,HAWQ也支持多种分区方法及多级分区,如List分区和Range分区。分区表对查询性能和数据可维护性都有很大帮助。...(7)外部数据整合         HAWQ通过名为Pivotal eXtension Framework(PXF)的模块提供访问HDFS上的Json文件、Hive、HBase等外部数据的能力。...而且PXF还允许用户自定义:PXF提供框架API以便用户为其自有数据堆栈开发新的连接器,增强了数据引擎的松耦合程度。

    2.4K81

    OSS大数据分析集成:MaxCompute直读OSS外部表优化查询性能(减少数据迁移的ETL成本)

    某电商案例显示:每日300TB日志从OSS导入MaxCompute内部表,产生以下问题: 延迟:平均4.2小时数据同步窗口 成本:每月额外支出$15,000的跨网络传输费用 复杂度:需维护DataX/Spark...作业集群 (2)直读OSS外部表的技术价值 MaxCompute 2.0引入的OSS外部表功能允许直接查询OSS数据,但未经优化的查询性能比内部表低60%-70%。...核心技术实现 (1)存储格式优化策略 // 创建ORC格式外部表示例 CREATE EXTERNAL TABLE ods_oss_log ( user_id STRING, event_time...ods_oss_log WHERE dt BETWEEN '20230501' AND '20230507' AND region IN ('east','north'); 分区策略验证: (3)谓词下推深度优化 通过自定义...进阶优化技巧 (1)OSS缓存加速方案 通过JindoFS构建分布式缓存层: <!

    44610

    面试官最爱问:Doris如何通过表模型设计提升查询性能100倍?

    玩转Doris表模型,让数据如鱼得水 不知道你有没有遇到过这样的场景: 刚接手一个数据分析项目,面对纷繁复杂的业务需求,一筹莫展 - 是选择明细模型保留所有原始数据,还是用聚合模型提升查询性能?...说实话,在Doris表模型的选择上,我也曾走过不少弯路。曾经因为盲目追求查询性能而处处使用聚合模型,结果遇到临时性的多维分析需求时,才发现数据的灵活性被极大地限制了。...主键模型通过保证key列的唯一性,完美地满足了这一需求。 新版本的Doris(2.1以后)默认采用写时合并实现,极大地提升了查询性能。...它就像一个智能管家,在数据写入时就完成了整理工作,确保查询时能够快速找到需要的信息。 聚合模型:报表分析的核心引擎 聚合模型是Doris中最富特色的表模型,它通过预聚合机制大幅提升了查询性能。...让我们通过一个电商分析场景来深入理解它的魅力。 假设我们需要统计各个商家的每日销售额。在传统模式下,每次查询都需要扫描所有订单数据再做聚合,面对海量数据时性能往往难以满足需求。

    94810

    产品图鉴:Greenplum

    Greenplum是老牌的MPP数据仓库,查询稳定性很强,SQL支持非常全面(支持ANSI SQL 2008和SQL OLAP 2003扩展;支持ODBC和JDBC应用编程接口。...,基于PostgreSQL构建而成,主要面向结构化数据OLAP计算,Greenplum在6.0版本大大的提高了对OLTP的支持,tpcb性能提升60倍,单节点查询达到80000TPS(Transactions...SELECT * FROM sales; 支持与其它数据源建立外表,支持本地或远程文件file://、gpfdist//、gpfdists//、pxf://、s3://。...PROFILE=hdfs:text') FORMAT 'TEXT' (DELIMITER '|'); PXF功能是在6.0版本之后添加的功能,支持从以下系统进行数据获取。...能够通过外表接入多种数据源,支持大数据生态系统(如Hadoop、Spark等)之间的无缝集成,具有适应大数据分析场景的能力。易用性较好(使用SQL语法),社区活跃(解决问题方便)。

    99740
    领券