分布式计算框架—MapReduce
一、MapReduce概述 Hadoop MapReduce 是一个分布式计算框架,用于编写批处理应用程序。编写好的程序可以提交到 Hadoop 集群上用于并行处理大规模的数据集。 MapReduce 作业通过将输入的数据集拆分为独立的块,这些块由 map 以并行的方式处理,框架对 map 的输出进行排序,然后输入到 reduce 中。MapReduce 框架专门用于 <key,value& ...
Hadoop分布式文件系统—HDFS
一、介绍 HDFS (Hadoop Distributed File System)是 Hadoop 下的分布式文件系统,具有高容错、高吞吐量等特性,可以部署在低成本的硬件上。 二、HDFS 设计原理 2.1 HDFS 架构 HDFS 遵循主/从架构,由单个 NameNode(NN) 和多个 DataNode(DN) 组成: NameNode : 负责执行有关 文件系统命名空间 的操作, ...
Hive自定义UDF函数
1. Hive自定义函数介绍 当Hive提供的内置函数无法满足你的业务处理需要时,此时可以考虑使用用户自定义函数(UDF: user-defined function)。 Hive 中常用的UDF有如下三种: UDF 一条记录使用函数后输出还是一条记录,比如:upper/substr; UDAF(User-Defined Aggregation Funcation) 多条记录使用函数后输出还是一 ...
Kafka分区
设置topic下的分区数 在 config/server.properties 配置文件中, 可以设置一个全局的分区数量, 这个分区数量的含义是: 每个主题下的分区数量, 默认为 1 也可以在创建主题的时候, 使用 --partitions 参数指定分区数量 bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic ...
linux环境变量加载顺序
01、环境变量文件描述 /etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. //用户级别的环境变量,用户可以覆盖全局变量 ~/.bash_profile: 每 ...
消息队列易错指南
1.消息队列的坑之非幂等 (1)幂等性概念 所谓幂等性就是无论多少次操作和第一次的操作结果一样。如果消息被多次消费,很有可能造成数据的不一致。而如果消息不可避免地被消费多次,如果我们开发人员能通过技术手段保证数据的前后一致性,那也是可以接受的 。 RabbitMQ、RocketMQ、Kafka 消息队列中间件都有可能出现消息重复消费问题。这种问题并不是 MQ 自己保证的,而是需要开发人员来保证。 ...