Hive

大数据学习——hive数仓DML和DDL操作

回眸只為那壹抹淺笑 提交于 2020-11-14 01:40:51
1 创建一个分区表 create table t_partition001(ip string,duration int ) partitioned by (country string) row format delimited fields terminated by ' , ' ; 2 添加数据 load data local inpath ' /root/hivedata/t_partitioned ' into table t_partition001 partition(country = "China"); 3 增加一个分区 alter table t_partition001 add partition(country = "Japan"); 4添加数据 load data local inpath ' /root/hivedata/t_partitioned ' into table t_partition001 partition(country = "Japan"); 5 show partitions t_partition001; 6删除分区 alter table t_partition001 drop partition(country="Japan"); 7修改表名 alter table t_partition001 rename to t

风控管理平台

廉价感情. 提交于 2020-11-13 06:55:48
本文从以下四个方面,阐述风控管理平台的建设: 一. 架构演进 二. 技术架构 三. 业务架构 四. 系统难点 一. 架构演进 将公司内部风控系统从业务代码为主的风控架构改造为了平台化为主的2代架构,进而改造成为动态化及离线数据模型化的2.5代架构,正在向深度学习,在线数据模型的3代架构上演变。 二. 技术架构 首先来看目前风控的技术架构,从业务及架构层面将风控划分为五大体系:分别是存储体系,识别体系,支撑体系,运营体系,数据计算体系。 其中存储体系包括hbase,mysql,redis,es,hive,实际上都利用了现有的框架或开源项目。 识别体系包括控制平台(控制系统,批处理系统,决策系统,总线系统),处罚平台(处罚系统),分析平台(规则系统,模型系统), 数据平台(数据系统,运营数据系统)。 支撑体系主要是指后台配置系统。 运营体系主要是指风控运营系统,kibana报表系统。 数据计算体系主要指大数据及离线计算平台及基于其上的数据分析业务。 其调用关系如下图: 三. 业务架构 其次,来看整个系统的业务架构。目前已经初步具备的 业务能力有,营销作弊,交易欺诈,登录注册防控,内容防控 数据模型能力有,用户画像及风险评级,关联反查,风险大盘,各类报表等 运营能力有,用户预警,商户预警,案件审核,综合信息查询 并且基于现有的数据,分类整理并形成了自身的数据资产,分别为名单类,用户类

Hive实战:详解Hive复合数据类型

荒凉一梦 提交于 2020-11-12 08:32:10
1.概述 Hive作为大数据中离线数据的存储,并把Hive作为构建数据仓库的环境,一般情况下数据仓库的数据类型都是基本数据类型如int、string、double等,但是有时候也会需要一些复合数据结构来存储数据,如array、map、struct;下面我们就分别介绍下这三种符合数据结构: 类型 定义 说明 array Array<data_type> array中的数据为相同类型,例如,假如array A中元素['a','b','c'],则A[1]的值为'b' map Map<key,value> Map数据类型,主要是以K:V形式进行存储可以通过字段名[‘key’]进行访问,将返回这个key对应的Value struct STRUCT < col_name : data_type [COMMENT col_comment], …> structs内部的数据可以通过DOT(.)来存取,例如,表中一列a的类型为STRUCT{b INT; c INT},我们可以通过a.ba来访问域b 2.Array使用 1).新建一张学生成绩表student1,里面有id,name,score字段,score是个array数据类型,里面是学生的成绩,新建表语句: hive> create table student1( id int , name string , score array <

使用 Iceberg on Kubernetes 打造新一代云原生数据湖

大城市里の小女人 提交于 2020-11-11 19:49:30
背景 大数据发展至今,按照 Google 2003年发布的《The Google File System》第一篇论文算起,已走过17个年头。可惜的是 Google 当时并没有开源其技术,“仅仅”是发表了三篇技术论文。所以回头看,只能算是揭开了大数据时代的帷幕。随着 Hadoop 的诞生,大数据进入了高速发展的时代,大数据的红利及商业价值也不断被释放。现今大数据存储和处理需求越来越多样化,在后 Hadoop 时代,如何构建一个统一的数据湖存储,并在其上进行多种形式的数据分析,成了企业构建大数据生态的一个重要方向。怎样快速、一致、原子性地在数据湖存储上构建起 Data Pipeline,成了亟待解决的问题。并且伴随云原生时代到来,云原生天生具有的自动化部署和交付能力也正催化这一过程。本文就主要介绍如何利用 Iceberg 与 Kubernetes 打造新一代云原生数据湖。 何为 Iceberg Apache Iceberg is an open table format for huge analytic datasets. Iceberg adds tables to Presto and Spark that use a high-performance format that works just like a SQL table. Apache Iceberg 是由

Canal+Camus快速采集MySQL Binlog到数据仓库

独自空忆成欢 提交于 2020-11-11 00:44:06
点击上方 蓝色字体 ,选择“ 设为星标 ” 回复”资源“获取更多资源 大数据技术与架构 点击右侧关注,大数据开发领域最强公众号! 大数据 真好玩 点击右侧关注,大数据真好玩! 数据仓库的同步方法 我们的数据仓库长久以来一直使用天级别的离线同步方法:采用Sqoop或DataX按天定时获取各个MySQL表的全量或增量数据,然后载入到Hive里对应的各个表中。这种方法门槛低,容易操作,在数仓建设阶段能够快速启动。但是随着时间的推移,它暴露出了一些缺点: 从MySQL获取数据只能靠select,如果一次select数据量过大,会造成慢查询,甚至影响线上业务; 随着业务量的增长和新业务的加入,数据量会相应增加,离线同步一次的耗时会越来越长; 增量同步方式无法检测到MySQL中被delete掉的记录,如果没有时间戳字段的话,也较难检测到被update的记录。 所以,我们最近致力于按照变动数据获取(Change Data Capture,CDC)的方式改造我们的数仓,分三步走: 首先订阅MySQL库的Binlog,将其存储到临时表中; 然后对需要入库的表一次性制作快照,并将存量数据导入Hive; 最后基于存量数据和Binlog记录的变动进行合并,还原出与业务库相同的数据。 本文要说的就是第一步的实现方案。我们采用阿里的开源组件Canal来接入MySQL Binlog,并投递到Kafka

从7个方面告诉你应该学习Python

寵の児 提交于 2020-11-08 23:15:56
点击 蓝字 “ python教程 ”关注我们哟! 前言 Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了 高价值Python学习视频教程及相关电子版书籍, 欢迎前来领取! Python 是一门更注重可读性和效率的语言,尤其是相较于 Java,PHP 以及 C++ 这样的语言,它的这两个优势让其在开发者中大受欢迎。 诚然,它有点老了,但仍是80后啊 —— 至少没有 Cobol 或者 Fortran 那么老。而且,如果还能派上用场的话,为啥要折腾着改变它呢 (尤其在这个还有那么多方法可以提升它性能的时候)? 实际上这要看你怎么看待它,生命线长本身就是件好事 —— 说明它稳定且可靠。 如果你是像其他许多人一样都是从 Java,C 或者 Perl 开始进入职业生涯的,那么学习 Python 的曲线基本上是不存在的。然而也正是由于 Python 易于上手这一事实,让有些人没有意识到 Python 也应该是一项必要的编程技能。 我要向各位坦诚,我对 Python 的喜爱也是从几年以前才开始的。不经历长期的痛苦教训,我们是不会对这门语言以及它的平台所提供的一切心生感激的。我写下这篇短文的目的就是要将你从同样的痛苦中拯救出来,让你明白为什么需要去了解 Python。 1. Python 易于学习 好吧,相较于其它许多你可以拿来用的编程语言而言,它