Apache HBase

【还有五天】开学季当当计算机图书大促

久未见 提交于 2020-11-27 07:32:02
开学季 当当网计算机图书大促 >> 每满100减50 << 满200减100 满300减150 满400减200 不止如此!秉持绝不让大家多花一分钱的精神 机械工业出版社华章公司 联合 实时流式计算 特别送出一批优惠码 “实付满200减40” 可以和满减活动 叠加 使用 优惠码使用后相当于 花160买400的书! 超低门槛!超大力度!快快上车! 选书太纠结?推荐几本必买的好书新书 助你囤的疯狂、读的畅快,绝不后悔! 推荐书单 01 《MySQL技术内幕:InnoDB存储引擎 第2版》 推荐语:国内外数据库专家联袂推荐,基于MySQL5.6,从存储引擎内核角度对InnoDB的核心实现和工作机制进行深入剖析。 02 《Redis设计与实现》 推荐语 :系统而全面地描述了 Redis 内部运行机制,图示丰富,描述清晰,并给出大量参考信息,是NoSQL数据库开发人员案头必备。 03 《HBase原理与实践》 推荐语:HBasePMC成员与网易资深工程师倾力打造,多位技术专家联袂推荐。本书系统介绍HBase基本原理与运行机制,融入了作者多年的开发经验与实践技巧。 04 《ClickHouse原理解析与应用实战》 推荐 语:这是一本可帮助读者深度理解并全面掌握ClickHouse运行原理并进行实践开发的工具书,涵盖了ClickHouse的时代背景、发展历程、核心概念、基础功能、运行原理

这些未在 Spark SQL 文档中说明的优化措施,你知道吗?

偶尔善良 提交于 2020-11-26 14:54:18
​本文来自上周(2020-11-17至2020-11-19)举办的 Data + AI Summit 2020 (原 Spark +AI Summit),主题为《 Spark SQL Beyond Official Documentation》的分享,作者 David Vrba,是 Socialbakers 的高级机器学习工程师。 实现高效的 Spark 应用程序并获得最大的性能为目标,通常需要官方文档之外的知识。理解 Spark 的内部流程和特性有助于根据内部优化设计查询,从而在执行期间实现高效率。在这次演讲中,我们将重点讨论 Spark SQL 的一些官方文档中没有很好描述的内部特性,重点在一些基本示例上解释这些特性,同时分享一些性能技巧。 如果想及时了解Spark、Hadoop或者HBase相关的文章,欢迎关注微信公众号: iteblog_hadoop 本次分享主要有两大主题: Spark SQL 中的统计信息(Statistics) 以排序的方式将数据存储在文件中 Spark SQL 中的统计信息(Statistics) 统计信息这块的分享主要包括以下四个方面: 我们怎么可以看到统计信息 统计信息是如何计算的 统计信息是怎么使用 有什么注意事项? 如果想及时了解Spark、Hadoop或者HBase相关的文章,欢迎关注微信公众号: iteblog_hadoop 在

java爬虫简介(一)->实现数据抓取->httpClient请求接口数据

守給你的承諾、 提交于 2020-11-25 04:28:45
背景 现如今,数据成为了越来越重要的网络资源,越来越有价值。无论是数据的分析还是前后端页面的数据交互,都离不开真实有效的数据。项目开发中数据甲方不可能实时提供,我们只能找到目标网站的数据进行抓取入库。 数据作用 决策支持 提升效益 数据的直接变现方式 数据资源交易 行业报告 广告平台 数据抓取的难点 1、目标网站有反爬取策略 2、目标网站模板会进行定时或实时变动 3、目标网站URL抓取失败 4、IP被封禁 解决办法: 购买代理IP库,随机获取IP进行数据抓取 部署多个应用分别进行抓取,降低单位节点访问的频率 设置每个页面抓取的时间间隔 5、用户登录限制 数据抓取的原理 实质上就是java程序模拟浏览器进行目标网站的访问,无论是请求目标服务器的接口还是请求目标网页内容,都是要在java程序中对数据进行解析。最简单的抓取方式有httpclient请求目标服务器接口,jsoup请求目标页面内容,把请求的数据进行解析然后入库。另外要做好爬取的实时监控,如果URL请求失败3次,就放弃该URL的抓取。 总体架构的设计 1、数据流向 1、确定数据爬取目标 2、数据采集 1、下载数据 2、解析数据 3、存取接入库(database,HDFS) 3、分析查询服务 2、模块划分 1、数据采集模块 2、数据分析模块 3、报表管理模块 4、系统管理与监控模块 3、模块解读 技术选型 数据采集层 JSoup

2020大数据面试题真题总结(附答案)

怎甘沉沦 提交于 2020-11-24 15:57:03
版本 更新时间 更新内容 v1.0 2020-07-01 新建 v1.1 2020-06-13 朋友面试大数据工程师提供的关于架构及数仓方面的题目 v1.2 2020-08-08 朋友面试数据专家提供的数据驱动,spark及flink方面面试题 v1.3 2020-08-22 朋友面试数据开发提供的关于hive及数仓方面的题目 一.Hadoop 1.hdfs写流程 2.hdfs读流程 3.hdfs的体系结构 4.一个datanode 宕机,怎么一个流程恢复 5.hadoop 的 namenode 宕机,怎么解决 6.namenode对元数据的管理 7.元数据的checkpoint 8.yarn资源调度流程 9.hadoop中combiner和partition的作用 10.用mapreduce怎么处理数据倾斜问题? 11.shuffle 阶段,你怎么理解的 12.Mapreduce 的 map 数量 和 reduce 数量是由什么决定的 ,怎么配置 13.MapReduce优化经验 14.分别举例什么情况要使用 combiner,什么情况不使用? 15.MR运行流程解析 16.简单描述一下HDFS的系统架构,怎么保证数据安全? 17.在通过客户端向hdfs中写数据的时候,如果某一台机器宕机了,会怎么处理 18.Hadoop优化有哪些方面 19.大量数据求topN

分布式文件存储hdfs简介及常用命令

戏子无情 提交于 2020-11-24 12:38:56
1、hdfs简介 1.1 什么是HDFS? HDFS(Hadoop Distributed File System)是hadoop生态系统的一个重要组成部分,是hadoop中的的存储组件,是最基础的一部分,MapReduce等计算模型都要依赖于存储在HDFS中的数据。HDFS是一个分布式文件系统,以流式数据访问模式存储超大文件,将数据分块存储到一个商业硬件集群内的不同机器上。 1.2 HDFS的设计目标 存储超大文件 HDFS适合存储大文件,单个文件大小通常在百MB以上 HDFS适合存储海量文件,总存储量可达PB,EB级 流式数据访问 为数据批处理而设计,关注数据访问的高吞吐量 硬件容错 基于普通机器搭建,硬件错误是常态而不是异常,因此错误检测和快速、自 动的恢复是HDFS最核心的架构目标 简单的一致性模型 一次写入,多次读取 一个文件经过创建、写入和关闭之后就不需要改变 不支持低时间延迟的数据访问 hdfs关心的是高数据吞吐量,不适合那些要求低时间延迟数据访问的应用。 本地计算 将计算移动到数据附近 1.3 HDFS的构成 数据块 文件以块为单位进行切分存储,块通常设置的比较大(最小6M,默认 128M) 块越大,寻址越快,读取效率越高,但同时由于MapReduce任务也是以 块为最小单位来处理,所以太大的块不利于于对数据的并行处理 一个文件至少占用一个块(逻辑概念) 冗余备份

HBase(八)HBase的协处理器

孤街浪徒 提交于 2020-11-24 06:14:35
一、协处理器简介 1、 起源   Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执 行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase 中,统计数据表的总行数,需 要使用 Counter 方法,执行一次 MapReduce Job 才能得到。虽然 HBase 在数据存储层中集成 了 MapReduce,能够有效用于数据表的分布式计算。然而在很多情况下,做一些简单的相 加或者聚合计算的时候, 如果直接将计算过程放置在 server 端,能够减少通讯开销,从而获 得很好的性能提升。 于是,HBase 在 0.92 之后引入了协处理器(coprocessors),实现一些激动 人心的新特性:能够轻易建立二次索引、复杂过滤器(谓词下推)以及访问控制等。 2、介绍   协处理器有两种: observer 和 endpoint   Observer 类似于传统数据库中的触发器,当发生某些事件的时候这类协处理器会被 Server 端调用。Observer Coprocessor 就是一些散布在 HBase Server 端代码中的 hook 钩子, 在固定的事件发生时被调用。比如:put 操作之前有钩子函数 prePut,该函数在 put 操作执 行前会被 Region Server 调用;在 put 操作之后则有 postPut 钩子函数  

Hbase单机模式环境搭建

落花浮王杯 提交于 2020-11-23 09:46:03
Hbase 单机模式环境搭建 【注】 本文章为笔者2016年期间为北京某高校硕士班编写的Hbase实验课程,现将此分享至CSDN平台,供大家学习。 【实验目的】 学会Hbase单机模式配置 理解环境的配置文件 【实验原理】 Hbase单节点配置是在没有多台计算机节点的情况下,对Hbase的分布式存储和计算进行模拟安装和配置。通过在一台计算机节点上解压Hbase安装压缩包后,然后进行Hbase相关文件进行配置,让Hbase运行在一台机器上并实现对数据存储和计算的测试支持。默认情况下,Hbase运行在单机模式下。在单机模式中,Hbase使用本地文件系统,而不是HDFS。 【实验环境】 本次环境是:centos6.5 + jdk1.7.0_79 工具包在/simple/soft目录下 host01是计算机名称对应ip地址为 192.168.0.131,可以在/etc/hosts文件中查看映射关系 【实验步骤】 一、安装包解压 1.1 查找安装包位置。 进入/simple/soft目录,执行ls命令,发现hbase安装包hbase-0.96.2-hadoop2-bin.tar.gz。如下图1所示。 图1 1.2 解压安装文件到/simple。 执行命令tar -zxvf /simple/soft/hbase-0.96.2-hadoop2-bin.tar.gz,进行安装包解压。如下图2所示。

关系型数据库和非关系型数据库的对比

岁酱吖の 提交于 2020-11-21 12:49:24
数据库 类型 特性 优点 缺点 关系型数据库 SQLite、Oracle、mysql 1、关系型数据库,是指采用了关系模型来组织 数据的数据库; 2、关系型数据库的最大特点就是事务的一致性; 3、简单来说,关系模型指的就是二维表格模型, 而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 1、容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解; 2、使用方便:通用的SQL语言使得操作关系型数据库非常方便; 3、易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率; 4、支持SQL,可用于复杂的查询。 1、为了维护一致性所付出的巨大代价就是其读写性能比较差; 2、固定的表结构; 3、高并发读写需求; 4、海量数据的高效率读写; 非关系型数据库 MongoDb、redis、HBase 1、使用键值对存储数据; 2、分布式; 3、一般不支持ACID特性; 4、非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。 1、无需经过sql层的解析,读写性能很高; 2、基于键值对,数据没有耦合性,容易扩展; 3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。 1

9月数据库排名出来啦!why哥带你看看数据库到底哪家强!

戏子无情 提交于 2020-11-21 05:26:21
来源: 华章计算机(hzbook_jsj) DB-Engines 最近发布 了 2020 年 9 月份的数据库排名。该网站根据数据库管理系统的受欢迎程度对其进行排名, 实时统计了 35 8种数据库的排名指数 。前 10 名的排行情况详见下图: 1-10排名情况 在国产数据库异军突起的现在,Oracle、 MySQL 、 Microsoft SQL Server 前三的宝座短时间内怕是无可超越。 PostgreSQL 也稳居第四名,它包括了可以说是目前世界上最丰富的数据类型的支持,还是全功能的自由软件数据库,很长时间以来,PostgreSQL是唯一支持事务、子查询、多版本并行控制系统(MVCC)、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统。 推荐语: 《MySQL技术内幕:InnoDB存储引擎(原书第2版) 》 资深MySQL专家撰写,全球知名 MySQL 数据库服务提供商 Percona 公司 CTO 作序推荐,国内多位数据库专家联袂推荐。 推荐语: 《数据库高效优化》 本书以大量案例为依托,系统讲解了SQL语句优化的原理、方法及技术要点,尤为注重实践 , 在章节中引入了大量的案例,便于学习者实践、测试,反复揣摩。 推荐语: 《 PostgreSQL修炼之道:从小工到专家 》 P ostgreSQL中国社区资深数据库专家、沃趣科技首席数据库架构师撰写,

数据仓库①:数据仓库概述

风格不统一 提交于 2020-11-20 07:43:50
前言 阅读本文前,请先回答下面两个问题: 1. 数据库和数据仓库有什么区别? 2. 某大公司Hadoop Hive里的关系表不完全满足完整/参照性约束,也不完全满足范式要求,甚至第一范式都不满足。这种情况正常吗? 如果您不能五秒内给出答案,那么本文应该是对您有帮助的。 注:如果您还不清楚完整参照性约束,请参考 《数据库关系建模》 :,如果您还不了解范式,请参考 《更新异常与规范化设计》 。 数据库的"分家" 随着关系数据库理论的提出,诞生了一系列经典的RDBMS,如Oracle,MySQL,SQL Server等。这些RDBMS被成功推向市场,并为社会信息化的发展做出的重大贡献。然而随着数据库使用范围的不断扩大,它被逐步划分为两大基本类型: 1. 操作型数据库 主要用于 业务支撑 。一个公司往往会使用并维护若干个数据库,这些数据库保存着公司的日常操作数据,比如商品购买、酒店预订、学生成绩录入等; 2. 分析型数据库 主要用于 历史数据分析 。这类数据库作为公司的单独数据存储,负责利用历史数据对公司各主题域进行统计分析; 那么为什么要"分家"?在一起不合适吗?能不能构建一个同样适用于操作和分析的统一数据库? 答案是NO。一个显然的原因是它们会"打架"......如果操作型任务和分析型任务抢资源怎么办呢?再者,它们有太多不同,以致于早已"貌合神离"。接下来看看它们到底有哪些不同吧。