HDFS

Hive的基本介绍以及常用函数

怎甘沉沦 提交于 2020-10-07 01:00:08
一、Hive的简介:    Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。 优点: 1 ) 操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)。 2 ) 避免了去写MapReduce,减少开发人员的学习成本。 3 ) Hive的执行延迟比较高,因此Hive常用于数据分析,对实时性要求不高的场合。 4 ) Hive优势在于处理大数据,对于处理小数据没有优势,因为Hive的执行延迟比较高。 5 ) Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。 缺点: 1 )Hive的HQL表达能力有限 2 )Hive的效率比较低 二、Hive的架构图 三、Hive的数据类型 基本数据类型:   Hive数据类型 Java数据类型   TINYINT    byte   SMALINT    short   INT int   BIGINT     long   BOOLEAN    boolean   FLOAT     float   DOUBLE    double   STRING string   TIMESTAMP 时间类型   BINARY 字节数组 集合   STRUCT 和c语言中的struct类似,都可以通过“点”符号访问元素内容。例如,如果某个列的数据类型是STRUCT{first

如何基于HBase构建容纳大规模数据、支撑高并发、毫秒响应、稳定高效的OLTP实时系统

北战南征 提交于 2020-10-06 20:52:41
前言 本文致力于从架构原理、集群部署、性能优化与使用技巧等方面,阐述在如何基于HBase构建容纳大规模数据、支撑高并发、毫秒响应、稳定高效的OLTP实时系统 。 一、架构原理 1.1 基本架构 从上层往下可以看到HBase架构中的角色分配为: Client——>Zookeeper——>HMaster——>RegionServer——>HDFS Client Client是执行查询、写入等对HBase表数据进行增删改查的 使用方 ,可以是使用HBase Client API编写的程序, 也可以是其他开发好的HBase客户端应用。 Zookeeper Zookeeper同HDFS一样, HBase使用Zookeeper作为集群协调与管理系统 。 在HBase中其主要的功能与职责为: 存储整个集群 HMaster 与 RegionServer 的运行状态 实现 HMaster的故障恢复 与 自动切换 为Client提供 元数据表 的 存储信息 HMaster、RegionServer启动之后,将会在Zookeeper上注册并创建节点( /hbasae/master 与 /hbase/rs/* ),同时 Zookeeper 通过 Heartbeat的心跳机制 来 维护与监控节点状态 ,一旦节点 丢失心跳 ,则认为 该节点宕机 或者下线,将 清除该 节点 在Zookeeper中的注册信息。

ubuntu的hadoop分布式安装 小白

不羁的心 提交于 2020-10-06 08:57:50
基于ubuntu的hadoop分布式安装(课程实验) 在VirtualBox中安装ubuntu,命名这台机器为Master创建用户名为hadoop(自己定)并增加hadoop用户管理员权限: sudo adduser hadoop sudo 更改软件源:在Ubuntu的菜单中找到软件与更新,选择中国服务器,此处aliyun,163都可。然后对APT进行更新: sudo apt-get update (ubuntu的vim和ifconfig运行都需要下载) 安装SSH远程连接: 1)下载SSH客户端 sudo apt-get install open-server 2)尝试登入本机 ssh localhost 3)进行本机的免密登入 cd ~/.ssh/ #没有此目录就执一遍ssh localhost ssh-keygen -t rsa #执行后按enter键即可 将密钥加入本机授权: cat ./id_rsa.pub>>./authorized_keys 1)安装Java环境 sudo apt-get install default-jre defalut-jdk #下载jdk 2)添加环境变量 vim ~/.bashrc export JAVA_HOME = /usr/lib/jvm/defalut-java #在配置文件中加入 source ~/.bashrc

如何优雅的理解HBase和BigTable

最后都变了- 提交于 2020-10-06 02:32:14
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 学习 HBase 最难的地方在于要让你的脑子真正理解它是什么。 HBase:Google BigTable 的开源实现 我们经常会把关系型数据库(RDBMS,比如 MySQL)和 HBase 搞混,因为在这两个系统中都包含 table 和 base(HBase,Database)。 这篇文章的目标是从概念上来说清楚 HBase 这个分布式的数据存储系统。读完后,你应该可以很清楚的知道什么情况下 HBase 更好,什么情况下传统的关系型数据库更好。 关于一些术语 幸运的是,Google 的 BigTable论文清楚的解释了 BigTable 到底是什么。下面是论文中数据模型章节的第一句话: BigTable 是一个稀疏的、分布式的、可持久化的多维有序 map。 在这个节骨眼上,我想给读者一个机会,让他们在读到最后一行字时,能够收集到他们脑壳里的活动信息(这可能是个笑话,但我没懂^v^)。 论文中,继续解释如下: map 通过 rowKey,columnKey 和时间戳进行索引,map 中的每个值都是一个连续的字节数组。 注:rowKey 是记录的主键,唯一标识一行记录 在 Hadoop 的官方文档中,也对 HBase 的架构做了说明: HBase 使用了与 BigTable

Spark缓存 之 Collect Cache Persist

不打扰是莪最后的温柔 提交于 2020-10-05 14:31:56
Spark缓存 之 Collect Cache Persist 三者都有汇聚数据,拉取数据存储的作用,mark一下各自的作用。 Collect: /** * Return an array that contains all of the elements in this RDD. * * @note This method should only be used if the resulting array is expected to be small, as * all the data is loaded into the driver's memory. */ def collect(): Array[T] = withScope { val results = sc.runJob(this, (iter: Iterator[T]) => iter.toArray) Array.concat(results: _*) } collect操作将RDD中所有元素转换为Array,一般多用于本地local模式下测试输出使用;集群模式下不推荐使用,正如源码所说,collect操作应该用于数组预期比较小的情况,因为这里数据会加载到dirver端内存中,本地测试时影响不大,但是集群模式下,如果dirver端内存申请太小就很容易oom。 Cache: /** * Persist

环境篇:Kylin3.0.1集成CDH6.2.0

拟墨画扇 提交于 2020-10-05 06:24:49
环境篇:Kylin3.0.1集成CDH6.2.0 Kylin是什么? Apache Kylin™是一个开源的、分布式的分析型数据仓库,提供Hadoop/Spark 之上的 SQL 查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由 eBay 开发并贡献至开源社区。它能在亚秒内查询巨大的表。 Apache Kylin™ 令使用者仅需三步,即可实现超大数据集上的亚秒级查询。 定义数据集上的一个星形或雪花形模型 在定义的数据表上构建cube 使用标准 SQL 通过 ODBC、JDBC 或 RESTFUL API 进行查询,仅需亚秒级响应时间即可获得查询结果 如果没有Kylin 大数据在数据积累后,需要计算,而数据越多,算力越差,内存需求也越高,询时间与数据量成线性增长,而这些对于Kylin影响不大,大数据中硬盘往往比内存要更便宜,Kylin通过与计算的形式,以空间换时间,亚秒级的响应让人们爱不释手。 注:所谓询时间与数据量成线性增长:假设查询 1 亿条记录耗时 1 分钟,那么查询 10 亿条记录就需 10分钟,100 亿条记录就至少需要 1 小时 40 分钟。 http://kylin.apache.org/cn/ 1 Kylin架构 Kylin 提供与多种数据可视化工具的整合能力,如 Tableau,PowerBI 等,令用户可以使用 BI 工具对 Hadoop 数据进行分析

“天合翔宇”信创就绪,全面打通国产化升级路径

喜欢而已 提交于 2020-10-04 08:03:30
点击上方关注我们! 从“去IOE”到如今大热的“信创”,背后彰显的一个相同事实是:不同时期的ITer虽然在国产化道路上经历了曲折坎坷,但对突破关键核心技术的信念笃定不移。 作为一个已经成长为万亿级规模的新兴市场,信创的“朋友圈”如今变得越来越广。从CPU技术、底层存储、数据库、操作系统,到云平台、应用软件、硬件平台,信创技术和应用生态正在由点及面快速崛起。 随着越来越多关键工作负载的信创化,数据的“汇-存-管-用”全流程需要加速向全栈国产化演进,实现全域的数据可管可控。但是,现阶段信创生态在数据层仍然面临着以下问题: 第一, 信创生态基础架构技术路径多样化 。以关键的CPU技术为例,目前有鲲鹏、兆芯、海光、飞腾、龙芯、申威等基于不同架构和指令集的CPU产品,为了实现对异构计算芯片的融合,需要在数据层实现各生态的兼容适配; 第二, 信创生态和现有 x 86生态的融合、过渡和切换。 现代数据中心构建了以x86为主的应用生态,无论是传统应用还是新兴的云原生工作负载,皆运行在其上。信创生态要破局“出圈”,进入并融入市场,就必须让用户在业务无感知的前提下,实现跨生态的数据迁移和流动; 第三, 信创生态下端到端解决方案及应用的适配。 信创应用生态的不断丰富,给用户带来了多元化的国产化技术选择,通过自由的市场选择,实现信创生态的良性发展。但为了保证用户体验的一致性

什么是HDFS硬盘公链??

我只是一个虾纸丫 提交于 2020-10-03 12:46:39
什么是HDFS硬盘公链?? Hadoop分布式文件系统(HDFS)是指被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File System)。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。 HDFS也是众多分布式存储项目中的一员,但是不同的是,HDFS是一个具备高完成度的项目,当他被矿工发现的时候距离主网上线开始挖矿已经非常之近了。 作为分布式存储的项目,他要解决的主要是用户个人数据存储安全、私密、高效的问题,用分布式存储的技术来满足C端的需求。对比与Fecoin项目,HDFS其实是更加接地气的。 廉价的硬盘存储计算机和相关设备均可以加入成为节点 HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。所以只需要你加入节点作为贡献,就能得到奖励机制。HDFS采用的是的POC+POST的抵押挖矿机制,用户提供硬盘存储空间为主网保存数据以换取HDFS奖励。由于硬盘挖矿的特殊性,为了让矿工能够持续的保存数据于是HDFS采用抵押挖矿原则,每周挖矿的收益延迟一周发放,以此来激励矿工对数据存储。 数据的容错和恢复机制 满足大于N+3保证数据完整性 HDFS设计成能可靠地在集群中大量机器之间存储大量的文件

Hadoop Permission denied: user=root, access=WRITE 问题解决

倖福魔咒の 提交于 2020-10-03 12:09:43
在本地调用HDFS上传文件的时候会报下面的错误: Permission denied: user=bodi, access=WRITE, inode="/":hadoopuser:supergroup:drwxr-xr-x 解决方法1: 将Window的当前用户名改成root 或者 改成hadoop对应的用户名 解决方法2:去掉HDFS的权限验证 hdfs-site.xml中加入以下配置,然后重启 <property> <name>dfs.permissions</name> <value>false</value> </property> 来源: oschina 链接: https://my.oschina.net/bodi666/blog/4435573