HDFS

hadoop和hadoop集群在CentOS7系统下安装和配置

浪子不回头ぞ 提交于 2020-07-28 03:41:55
文章目录 一.安装CentOS7的linux系统 二.hadoop安装前准备 三.hadoop安装和相关文件配置 (一)安装Hadoop (二)修改配置文件 1.hadoop-env.sh运行环境的文件修改 2.core-site.xml配置文件修改(机器ip为192.168.56.101) 3.hdfs-site.xml配置文件的修改 4.新建mapred-site.xml文件写入如下内容: 5.yarn-site.xml配置文件修改 6.slaves配置: `vi slaves` 7.hadoop环境变量配置 (三)格式化HDFS:`hadoop namenode -format` (四)启动和关闭的命令: 四.验证是否成功(先启动hdfs,yarn,历史服务) 五.解决命令执行后报如下警告: 六.集群搭建 (一)复制虚拟机(复制前删除主机器hdfs临时文件目录,然后关闭主机器),如下: (二)启动副本机器,修改静态ip (三)启动所有集群机器,配置免登录 (四)修改主机器的配置文件 (五)修改副本机器的配置文件 七.附安装视频,提取码: xaw6 一.安装CentOS7的linux系统 具体安装见如下链接: linux系统安装 二.hadoop安装前准备 1.所需文件见如下链接,链接:提取码: 6uxv hadoop相关安装包 2.安装jdk见如下链接

快手春节红包背后,高并发存储架构设计

£可爱£侵袭症+ 提交于 2020-07-28 02:51:13
2020年春节,腾讯云文件存储(CFS)在通过了预演层层压测的选拔后成为快手广告推荐业务的护旗手,以100%的可用性护航了快手春节红包活动。本文是腾讯云高级工程师陈宏亮在「云加社区沙龙online」的分享整理,为大家带来应对单文件大吞吐高并发的存储架构设计方案! 点击视频,查看完整直播回放 一、快手红包案例背景 2020年的春节,想必大家都印象深刻,除了新冠肺炎疫情,就是春晚各大APP的红包大战,让不少用户“薅”到了羊毛。 大年三十看春晚,多年来已成为中国人的过年传统之一。春晚是覆盖全国各线城市和广大乡村的超过10亿观众的超级流量入口,可以迅速帮助互联网巨头们实现下沉、导流和拉新。 事实上,红包早已不是单纯的红包,已经成为超级流量入口和新的强大增长引擎。在“红包”发放和领取的背后,包括大数据、云计算、支付结算等一系列的变革。 过去五年来,央视春晚的舞台一直都是BAT的天下。但今年快手在竞标过程中PK掉了阿里、拼多多和字节跳动后,成功竞标成为央视春晚独家合作伙伴。而其他公司虽然没有竞标到春晚的独家合作,但是在2020年春节那个疯狂的除夕夜,他们依然投入了巨资,加入了春节红包这场混战。 一场围绕着春节、民俗和亲情的全民红包大战已经成为各互联网巨头每年农历年底最重磅的营销活动。 而最终的战果,根据快手官方披露的 “春节 10 亿现金红包” 活动成果数据显示:春晚期间,快手红包互动总量高达

Hadoop3.2.1 【 HDFS 】源码分析 : RPC原理 [七] Server端实现&源码

时间秒杀一切 提交于 2020-07-27 18:55:32
Table of Contents 一.Server端架构 二.Server端创建流程 三.Server组件 3.1.Listener 3.1.1. 构建 3.1.2.常量. 3.1.3.构造方法 3.1.3.run方法 3.1.4.doAccept(key) 3.2.Reader 3.2.1.创建 3.2.2.常量 3.2.3.构造方法 3.2.4 run方法 3.2.5. doRunLoop() 3.2.6. doRead(key) 3.3.callQueue [CallQueueManager] 3.3.1.创建 3.3.2.常量 3.3.3.构造方法 3.3.4 put(E e) 3.3.5.offer(E e) 3.4.ConnectionManager 3.4.1.创建 3.4.2.常量 3.4.3.构造方法 3.4.4 scheduleIdleScanTask 方法 3.4.5register 注册connetion 3.5.Connection 3.5.1.创建 3.5.2.常量 3.5.3.构造方法 3.5.4 readAndProcess()方法 3.5.5 processOneRpc()方法 3.5.6.processRpcRequest 方法 3.6.Handler 3.6.1.创建 3.6.2.构造方法 3.6.3 run方法 3.6.Responder

logstash消费kafka数据,根据ID写入hdfs的对应路径下

匆匆过客 提交于 2020-07-27 15:08:18
开发新需求,需要消费kafka的数据,根据业务主键ID写入到对应的hdfs路径下 最开始实验的logstash为7.4版本,发现和本地的kafka版本不对应,报错信息:broker may not be available,后来查看logstash版本,发现需要使用logstash2.4版本才可以和本地的kafka0.9版本对应 日志的格式为: 2020-06-11 11:02:02.632 -- {"gradeId":"2","role":"STUDENT","userStatus":1,"data":{"publishExamClassId":"47c50966f34b41cf819358d077691cce","examSubmitType":2,"examQuestionCount":41,"questionResultSet":[{"questionId":"xl_a543bbe2ca1e4b8e8029c1148ed34abf_v4","originalQueType":11,"questionResult":"1","questionType":1,"userAnswerContent":"[\"1\"]"},{"questionId":"xl_4367b003c0a14d2390470b89ece9184e_v4","originalQueType":11,

ClickHouse大数据分析技术与实战

空扰寡人 提交于 2020-07-27 13:07:52
ClickHouse大数据分析技术与实战课程 课程基于ClickHouse的最新的20.x版本,从理论到实践,由浅入深详解ClickHouse的原理和使用。 本课程从零开始,有Linux操作系统和SQL使用经验即可。 课程以案例驱动,包含大量的实践案例。 将ClickHouse与MySQL、Kafka、HDFS等第三方系统集成,增强ClickHouse的功能。 课程覆盖面广,既有基础功能的详细讲解, 也包含了集群部署、查询优化、运维管理等高级内容。 来源: oschina 链接: https://my.oschina.net/u/4409634/blog/4317006

【HDFS篇05】HDFS客户端操作 --- IO流操作

不羁的心 提交于 2020-07-27 11:19:21
输出倒逼输入 HDFS客户端操作 --- IO流操作 HDFS文件上传 @Test public void putFileToHDFS() throws IOException, InterruptedException, URISyntaxException { // 1 获取文件系统 Configuration configuration = new Configuration(); FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), configuration, "zhutiansama"); // 2 创建输入流 FileInputStream fis = new FileInputStream(new File("e:/data.txt")); // 3 获取输出流 FSDataOutputStream fos = fs.create(new Path("/data.txt")); // 4 流对拷,关键 IOUtils.copyBytes(fis, fos, configuration); // 5 关闭资源 IOUtils.closeStream(fos); IOUtils.closeStream(fis); fs.close(); } HDFS文件下载 // 文件下载 @Test

【HDFS篇01】HDFS入门概述

ぃ、小莉子 提交于 2020-07-27 08:43:23
真正的学习是去探索,思考和重建 HDFS产生背景 ​ 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS只是分布式文件管理系统中的一种。 HDFS定义 ​ HDFS( Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色 关键词:文件系统,分布式 使用场景 ​ 适合一次写入,多次读出的场景,且不支持文件的修改。适合用来做数据分析,并不适合用来做网盘应用 优点 高容错性 (1)数据自动保存多个副本。它通过增加副本的形式,提高容错性。 (2)某一个副本丢失以后,它可以自动恢复 适合处理大数据 (1)数据规模:能够处理数据规模达到GB、TB、甚至PB级别的数据: (2)文件规模:能够处理百万规模以上的文件数量,数量相当之大 (3)可构建在廉价机器上,通过多副本机制,提高可靠性 缺点 不适合低延时数据访问,比如毫秒级的存储数据,是做不到的 无法高效的对大量小文件进行存储 (1)存储大量小文件的话,它会占用 Namenode大量的内存来存储文件目录和块信息。这样是不可取的,因为 Namenode的内存总是有限的:

Ozone的Erasure Coding方案设计

与世无争的帅哥 提交于 2020-07-27 08:37:56
文章目录 前言 EC技术以及EC下的存储效率的提升 Ozone下的EC方案设计 Container Level的EC实现 Block Level的EC实现 引用 前言 众所周知,在当下存储系统中为了存储效率的提升,Erasure Coding(纠删码)技术在扮演着一个越来越重要的角色。比如说目前Hadoop HDFS中,它就已经能够支持EC功能了。在EC模式下,HDFS 可以不必存储多打3份这样的冗余副本数来为了容灾保护。存储效率的提高意味着存储海量数据所需要的存储节点资源的减少。不过本文并不是聊HDFS的EC实现的,而是谈谈时下另外一个存储系统Ozone的EC设计,也是简单聊聊在Ozone的对象存储模式下,EC要如何实现以及它能够带来的好处。 EC技术以及EC下的存储效率的提升 关于EC技术本身,全称Erasure Coding,中文称之为纠删码技术。EC的具体算法实现细节网上资料讲述的也已经很多了,本文不做过分细致的阐述。 简单的来说,就是将原始数据块进行划分成多个data block,然后根据EC算法的计算,产生出新的校验块(parity block),如下所示: 当上述数据块或者校验块发生丢失或者损坏的情况时,系统可以根据EC算法进行重新生成来恢复,以此达到数据保护的效果。 还有一个问题,这里的数据存储效率的提升体现在哪里呢? 继续以上述例子为例,在上面3个数据块

万级TPS亿级流水-中台账户系统架构设计

倖福魔咒の 提交于 2020-07-27 05:28:28
万级TPS亿级流水-中台账户系统架构设计 标签:高并发 万级TPS 亿级流水 账户系统 背景 业务模型 应用层设计 数据层设计 日切对账 背景 我们需要给所有前台业务提供统一的账户系统,用来支撑所有前台产品线的用户资产管理,统一提供支持大并发万级TPS、亿级流水、数据强一致、风控安全、日切对账、财务核算、审计等能力,在万级TPS下保证绝对的数据准确性和数据溯源能力。 注:资金类系统只有合格和不合格,哪怕数据出现只有0.01分的差错也是不合格的,局部数据不准也就意味着全局数据都不可信。 本文只分享系统的核心模型部分的设计,其他常规类的(如压测验收、系统保护策略-限流、降级、熔断等)设计就不做多介绍,如果对其他方面有兴趣欢迎进一步交流。 业务模型 基本账户管理: 根据交易的不同主体,可以分为 个人账户 、 机构账户 。 账户余额 在使用上没有任何限制,很纯粹的账户存储、转账管理,可以满足90%业务场景。 子账户功能: 一个用户可以开通多个子账户,根据余额属性不同可以分为基本账户、过期账户,根据币种不同可以分为人民币账户、虚拟币账户,根据业务形态不同可以自定义。 (不同账户的特定功能是通过账户上的 账户属性 来区分实现。) 过期账户管理: 该账户中的余额是会随着 进账流水 到期自动过期。 如:在某平台充值1000元送300元,其中300元是有过期时间的,但是1000元是没有时间限制的

hadoop伪分布式搭建

不羁岁月 提交于 2020-07-27 00:03:36
第一步: 修改主机名: hostnamectl set - hostname hadoop 查看主机名: hostname 查看虚拟机信息: hostnamectl 第二步: 添加hadoop用户: sudo useradd - m hadoop2 - s / bin / bash 设置密码: sudo passwd hadoop2 第三步: 添加映射: vim /etc/hosts 在第一行添加自己的本机ip和本机名称 第四步: 注意一定要切换到hadoop2用户下操作 设置免密: 1. ssh - keygen - t rsa 生成一个公钥和私钥 , 三次回车 2. ssh - copy - id hadoop2 将公钥拷贝到hadoop2,输入yes,密码 3. ssh hadoop2 测试免密登录成功 第五步: 关闭防火墙: systemctl disable firewalld 输入两次密码 第六步: 安装jdk 1. 切换成root用户,家目录下cd ~ 2. 使用xftp传输文件,传输到那个目录,就在那个目录使用解压命令 3. tar - zxvf jdk - 8u 101 - linux - x64 . tar . gz - C / usr / local / 解压到usr / local下 4. 配置环境变量 vim / etc / profile 添加: