- 博客(1818)
- 收藏
- 关注
转载 HBase的replication原理及部署
一、hbase replication原理hbase 的复制方式是 master-push 方式,即主集群推的方式,主要是因为每个rs都有自己的WAL。 一个master集群可以复制给多个从集群,复制是异步的,运行集群分布在不同的地方,这也意味着从集群和主集群的数据不是完全一致的,它的目标就是最终一致性。Replication 总体结构我们直接引用社区的架构图如下,主集群的hlog中记录了所有针对table的变更(目前的ddl不同步),通过实时读取hlog中的entry来解析变更的数据然后发送到从集
2021-09-13 17:29:07
1092
转载 Hive视图如何创建、特点及应用场景
Hive视图特点View是逻辑存在,Hive暂不支持物化视图(1.0.3) View只读,不支持LOAD/INSERT/ALTER。需要改变View定义,可以是用Alter View View内可能包含ORDER BY/LIMIT语句,假如一个针对view的查询也包含这些语句, 则view中的语句优先级高。例如,定义view数据为limit 10, 针对view的查询limit 20,则最多返回10条数据。 Hive支持迭代视图。5.Hive中视图的查询和普通查询类似,查询时把表名更换为视图名即
2021-09-10 09:37:24
2187
转载 顶级域名 一级域名 二级域名 三级域名什么区别?
任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。含义一:(局部概念)因特网采用层次树状结构命名方法。域是名字空间中一个可被管理的划分(按机构组织划分),域可被划分为子域,子域可再被划分,即形成了顶级域名、二级域名、三级域名等。从右向左为顶级域名、二级域名、三级域名等,用点隔开。最左边的部分是单台计算机的名字(不能再进行划分了)。这里的顶级域名、二级域名、三级域名只是从右向左用点隔开的位置的称呼方式。如 abc.com.cn 其中 cn 是顶级域名、com 是二级域
2021-09-07 17:34:31
5689
转载 nginx+squid实现跨越两层的正向代理
场景描述应用服务器部署在内网中,需要和外网进行交互,但是中间间隔了两个区域,一个区域是业务子区,这个区域不能直接和互联网进行通信,另一个区域是DMZ区域可以和互联网进行通信,因此我们要和互联网进行通信中间隔了两层网络。解决方案在业务子区放一台服务器安装nginx,并安装插件使其可以实现TCP的转发,然后DMZ区域放一台服务器安装squid实现正向代理。nginx部分nginx支持TCP转发我们的目的就是将应用层的数据转发到squid,实际上转发的数据使用的是TCP协议,nginx从1
2021-09-06 15:08:44
1380
转载 Hbase Locality
工作中的一段尴尬对话:同事:Hbase 页面上 Locality 信息列表示啥,是否会对我们开发的功能有影响?我:Locality 是本地化的指标,这个值大部分时间为 1 或者 0.9 ~ 1 之间,如果低于这个值, 会频繁通过走网络取数据,影响读取性能同事:那什么情况这个值会低于 1?我:... (突然发现自己也不是很懂,灰溜溜的 gun 回去学习了)简单的记录下检索到的内容,方便后续复习,同时请各位大佬多多指点背景一:Hbase 模块(抱歉,图忘了从哪个页
2021-09-05 18:23:55
614
原创 大数据常用端口
常见端口汇总:Hadoop: 50070:HDFS WEB UI端口 8020 : 高可用的HDFS RPC端口 9000 : 非高可用的HDFS RPC端口 8088 : Yarn 的WEB UI 接口 8485 : JournalNode 的RPC端口 8019 : ZKFC端口 19888:jobhistory WEB UI端口Zookeeper: 2181 : 客户端连接zookeeper的端口 ...
2021-09-01 15:03:28
396
转载 Spark与Hadoop有哪些用途?
Hadoop和Spark是复杂的框架,每个框架都实现了可以单独或一起工作的不同技术。因此,尝试使彼此平行可能会丢失更广泛的画面。但是现实是,很多公司都在使用这两者,Hadoop用于维护和实施大数据分析,而.Spark用于ETL和SQL批处理操作,涉及的是大型数据集,物联网和ML分配。Hadoop组件:HDFS, 一种用于将大数据跨入分类体系结构中的各个节点的系统。 NameNode, 一个控制和运行DataNode的系统,读取集群中所有记录的元数据和完成的每一步。 DataNodes是在每台
2021-09-01 14:42:03
843
转载 HBase 学习一: 客户端写缓冲区 autoFlush
更多内容,请访问 bbhhhh.github.ioHBase的表操作,默认情况下客户端写缓冲区是关闭的,即table.isAutoFlush() = true, 这种情况下,对表的单行操作会实时发送到服务端完成。因此,对于海量数据插入,修改,RPC通信频繁,效率比较低。这种场景下,可以通过激活客户端缓冲区,批量提交操作请求,提高操作效率。下面是一个简单的关于autoFlush的测试代码: public static void autoFlushTest(){ ...
2021-08-28 18:09:24
701
转载 HBase 增删改查Java API
1. 创建NameSpaceAndTablepackage com.HbaseTest.hdfs;import java.io.IOException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import org.apache.hadoop.hb
2021-08-28 18:01:00
442
转载 Hbase 098.4中使用新API通过Get列表获取多行的列值
在Hbase0.98.4中通过Get列表的方式获取Hbase中多行的列值,本来想使用KeyValue类来处理的,结果发现该类的getRow()和getValue()的两个方法已经废弃了,最终使用新API中的Cell接口来实现,如下:Hbase中测试表中数据如下:hbase(main):005:0> scan 'testtable'ROW COLUMN+CELL ...
2021-08-28 16:54:19
841
转载 hbase中scan和get查看版本数据的区别
一:查看当前所用表二:scan扫描全表数据说明:scan全表扫描出来的数据都是目前时间戳最新的数据。三:利用scan查看同一个cell之前已经put的数据(scan时可以设置是否开启RAW模式,开启RAW模式会返回已添加删除标记但是未实际进行删除的数据)说明:虽然已经put覆盖了之前同一个cell的数据,但是实际上数据并没有进行删除,只是标记删除了,利用RAW模式可以看到。红线的是添加删除标记,但是实际上没有删除的。四:get获取某个cell...
2021-08-28 16:49:18
1948
转载 hbase shell&java 获取多版本的值
在HBase中 一个row对应的相同的列只会有一行。使用scan 或get 得到都是最新的数据,如果我们对这某一row所对应的列进行了更改操作后,并不会多生成一条数据,不会像数据库一样,插入时多生成一条记录,在HBase中对同一条数据的修改或插入都只是put操作,最终看到的都是最新的数据,其它的数据在不同的version中保存,默认是隐藏的,通过时间戳区分,Hbase默认保存最近的三个版本,如何才能看到这些旧版本的数据了?插入测试数据:hbase(main):026:0> put '...
2021-08-28 16:39:27
457
转载 HBase表的基本结构和常用命令行操作
一、HBase表的基本结构1.概述: 平时常见的MySQL、Oracle数据库都是传统型关系数据库,它们都是按行查询、按行存储;而HBase为非关系型数据库,它是按列存储的的。 在HBase插入数据时,先输入数据的格式为rowkey => info => column => valuerowkey:行键,唯一且不重复info:列族(数量一般不超过3个)column:列(在列族下,一个列族下可有许多个列)value:值timestamp:时间戳..
2021-08-28 16:38:17
575
转载 深入理解 HBase Compaction 机制
HBase有很多话题可以聊,包括读写路径上涉及到的一些数据结构,性能优化以及优化读写做的一些设计等。今天要探讨的Compaction机制就是HBase架构上做的一个重要优化,其实关于HBase的架构设计、Flush&Compaction等文章已经多不胜数了,本文也是主要参考HBase官网、社区的一些文章总结,从各个关键点进行总结,旨在为了帮助我们更加牢固的掌握Compaction机制。为什么要执行 Compaction熟悉HBase的同学应该知道,HBase是基于一种LSM-Tree(Log-
2021-08-27 22:30:24
1193
原创 Region/Store/StoreFile/Hfile之间的关系
1. Regiontable在行的方向上分隔为多个Region。Region是HBase中分布式存储和负载均衡的最小单元,即不同的region可以分别在不同的Region Server上,但同一个Region是不会拆分到多个server上。Region按大小分隔,表中每一行只能属于一个region。随着数据不断插入表,region不断增大,当region的某个列族达到一个阈值(默认256M)时就会分成两个新的region。2. Store每一个region有一个或多个store组成...
2021-08-27 16:38:21
1560
转载 vm.min_free_bytes参数的设置和意义
今天在做实验的时候尝试修改了vm.dirty_ratio等参数,都没有能够引发OOM_KILLER,但是参数vm.min_free_bytes的修改引发了系统的宕机或者引发了系统的OOM_KILLER现象。如下是实验的环境:内存256MB如下修改的具体参数1)echo 500000 > /proc/sys/vm/min_free_bytes具体含义:保留500M的内存空间,但是由于系统的内存才256MB,导致系统出现kernel panic,系统崩溃了2)echo ...
2021-08-25 22:13:58
745
转载 vm.min_free_kbytes
之前有次DBA 新来了个小朋友,申请了30台VM 进行部署,没多久和我说机器无法登录了,排查后发现机器无脑重启,盲猜一定改了一些内核参数(公司DBA的一个坏习惯,老是喜欢百度一下直接改,却从不关心为啥这么改),DBA 支支吾吾说改了vm.min_free_kbytes, 数字大到可怕,原来他以为单位是字节,但其实是kb,我说你知道这个参数的意义以及后果么,小朋友支支吾吾,只能感叹一知半解多可怕也多害人,最后只能救援模式慢慢改回来了。vm.min_free_kbytes即强制Linux 系统最低保留多
2021-08-25 22:12:41
1195
转载 调整内核参数:vm.min_free_kbytes
调整内核参数:vm.min_free_kbytes内核参数:内存相关内存管理从三个层次管理内存,分别是node, zone ,page;64位的x86物理机内存从高地址到低地址分为: Normal DMA32 DMA.随着地址降低。[root@localhost01 /home/ahao.mah]#cat /proc/zoneinfo |grep "Node"Node 0, zone DMANode 0, zone DMA32Node 0, zone Normal...
2021-08-25 22:01:57
1445
转载 RabbitMQ 内存和磁盘警告
内存和磁盘警告有两种情况下,Rabbit MQ会停止读取客户端的连接socket,为了防止crash崩溃,这两种情况是:内存使用达到配置值磁盘空间下降到配置值下在这两种情况下,服务器会临时阻塞连接—服务器会暂停读取发布消息的客户端的连接,连接心跳监控也会被禁用,在rabbitmqctl和管理查建中的所有网络连接如果是blocking状态,意味着他们没有尝试发送,因此可以继续,如果是blocked状态,意味着他们已经发布了,现在需要被暂停。集群的警告当运行Rabbit MQ集群的时候,
2021-08-17 16:18:57
1364
转载 2021-08-15
时序数据库:提供高效存取时序数据和统计分析功能的数据管理系统,广泛应用于物联网(IoT)设备监控系统、企业能源管理系统(EMS)、生产安全监控系统和电力检测系统等行业场景。TSDB特点高吞吐量写入数据分级存储高压缩率减少存储空间多维度查询能力高效聚合能力OpenTSDBOpentime series database是基于Hbase的分布式的,可扩展的时间数据库它是建立在Hbase上的一层数据读写服务How does OpenTSDB work?OpenT.
2021-08-15 11:43:07
218
转载 MR、Tez和Spark执行引擎对比
MapReduceMapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)“和"Reduce(归约)”。TezTez是Apache开源的支持DAG作业的计算框架,它直接源于MapReduce框架,核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output, Reduce被拆分成Input、Shuffle、Sort、Merge、Processor和Output等,这样,这些分解后的元操作
2021-08-15 10:26:16
1186
原创 sqoop将Mysql数据导入Hive中
本实验Sqoop版本:Sqoop 1.4.6.2.6.0.3-81 mysql创建表DROP TABLE IF EXISTS `testsqoop`;CREATE TABLE `testsqoop` (`XH` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '序号',`SSQ` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '所属区') ENGINE=InnoDB...
2021-07-24 11:18:25
1449
转载 hive执行更新和删除操作
Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置。要想支持行级insert、update、delete,需要配置Hive支持事务。一、Hive具有ACID语义事务的使用场景1. 流式接收数据。许多用户使用诸如Apache Flume、Apache Storm或Apache Kafka这样的工具将流数据灌入Hadoop集群。当这些工具以每秒数百行的频率写入时,Hive也许只能每15分钟到1小时添加一个分区,因为过于频繁地添加分区很快就会使一个表中的分区数量难以维护。而
2021-07-20 20:34:26
1344
转载 阿里canal是怎么通过zookeeper实现HA机制的?
一. 阿里canal工作原理canal 是阿里的一款开源项目,纯Java开发。基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB)。MySQL主备复制原理Master 将变更写入binlog日志; Slave 的 I/O thread 会去请求 Master 的binlog,并将得到的binlog写到本地的relay-log(中继日志)文件中; Slave 的 SQL thread 会从中继日志读取binlog,然后执行bin.
2021-07-18 17:29:56
878
转载 HDFS集群数据不均衡处理
一、概述公司使用是自己搭建的hadoop集群,版本2.7.3,最近发现出现了hdfs数据存储不均衡的现象,其中有一个datanode使用了65%,而有一个只使用了20%。hadoop集群使用的时间长了会出现这种数据不均衡的问题,当然hadoop提供了解决方案,就是使用balancer,默认进行的是datanode级别的数据均衡,但是2.X版本还不支持datanode内的磁盘之间数据均衡,hadoop在3.0以后的版本里面提供了相关的支持,参考https://hadoop.apache.org/docs/
2021-07-14 12:40:15
1085
转载 dfs.balance.bandwidthPerSec 参数
hdfs-site.xml 文件中的配置参数,用来balancer时,hdfs移动数据的速度,默认值为1M/S的速度。一般情况下设置为10M;设置的过大会影响当前job的运行。修改dfs.balance.bandwidthPerSec参数,需要在namenode上重启hdfs生效。stop-dfs.shstart-dfs.sh...
2021-07-14 09:22:54
763
转载 MySQL自增锁模式innodb_autoinc_lock_mode参数理解调优
前段时间某数据表运行过程中,出现自增字段突然跳跃式增长的问题,潜心研究发现,问题导致原因可能是因为并发写入导致于是通过各种途径查阅是因为innodb_autoinc_lock_mode参数设置的不同表现所在,于是进行了调整,在此对该参数的理解记录一二。官方原文地址:https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html#innodb-auto-increment-initialization中文翻译地
2021-07-10 20:44:04
1781
转载 MySQL自增锁模式innodb_autoinc_lock_mode参数详解
innodb_autoinc_lock_mode这个参数控制着在向有auto_increment 列的表插入数据时,相关锁的行为;通过对它的设置可以达到性能与安全(主从的数据一致性)的平衡【0】我们先对insert做一下分类 首先insert大致上可以分成三类: 1、simple insert 如insert into t(name) values('test') 2、bulk insert 如load data | insert into ... select .... from.
2021-07-10 20:35:30
493
转载 TCP Listen backlog
TCP有限状态机TCP服务创建TCP服务的四个基本步骤:socket – 创建socket套接字。 bind – 绑定要监听的IP地址。 listen – 开始监听客户端连接请求。 accept – 获取TCP握手成功的连接。其中,第3步,开始监听客户端的连接请求时,需要指定一个backlog的参数:int listen(int sockfd, int backlog);这个backlog参数有什么作用呢?不同的操作系统可能有不同的意义,本文只讨论backlog参数在L...
2021-07-07 09:12:21
518
原创 Hadoop:hadoop fs、hadoop dfs与hdfs dfs命令的区别
http://blog.csdn.net/pipisorry/article/details/51340838'Hadoop DFS'和'Hadoop FS'的区别While exploring HDFS, I came across these two syntaxes for querying HDFS:> hadoop dfs> hadoop fswhy we have two different syntaxes for a common purpose为什么会对同...
2021-07-07 09:10:03
485
原创 hadoop fs,hadoop dfs以及hdfs dfs区别
该文由本人于网上查阅资料所得,如有错误希望帮忙评论指正谢谢。hadoop fs:FS relates to a generic file system which can point to any file systems like local, HDFS etc. So this can be used when you are dealing with different file systems such as Local FS, HFTP FS, S3 FS, and others意思是..
2021-06-07 21:50:29
416
2
转载 网络7层架构
一 网络7层架构1、架构图2、架构说明1)物理层主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0 转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的模数转换与数模转换)。这一层的数据单位叫做比特(bit)。属于物理层定义的典型规范代表包括:EIA/TIA、RS-232、EIA/TIA、RS-449、V.35、RJ-45、fddi令牌环网等。2)数据链路...
2021-06-02 11:59:14
8896
转载 IPSec协议
IPSec主要功能为加密和认证,为了进行加密和认证,IPSec还需要有密钥的管理和交换的功能,以便为加密和认证提供所需要的密钥并对密钥的使用进行管理。以上三方面的工作分别由AH,ESP和IKE(Internet Key Exchange,Internet 密钥交换)三个协议规定。为了介绍这三个协议,需要先引人一个非常重要的术语SA(Security Association安全关联)。所谓安全关联是指安全服务与它服务的载体之间的一个“连接”。AH和ESP都需要使用SA,而IKE的主要功能就是SA的建立和维护。
2021-05-15 16:18:18
579
转载 什么是ELK?
我们在进行日志分析时,目前的处理方式是在日志文件中grep(一种强大的文本索引工具)、awk(文本处理工具)获取自己想要的信息。但是在海量的数据日志中,通过这种处理方式,性能远远无法满足要求,主要面临的问题是:1、日志量太大如何归档;2、文本搜索太慢怎么办; 3、如何多维度查询; 因此,需要对日志进行集中化管理,收集所有服务器上的日志信息。常见的解决思路是建立集中式日志收集系统,将所有节点上的日志统一收集、管理、访问。一般大型系统是一个分布式部署的架构,不同的服务器模块部...
2021-04-11 15:26:44
664
转载 索引模板(Index templates)
为什么需要索引模板? 在实际工作中,针对一批大量数据存储的时候需要使用多个索引库,如果手工指定每个索引库的配置信息(settings和mappings)的话就很麻烦了。所以,这个时候,就存在创建索引模板的必要了。 索引可以使用预定义的模板进行创建,这个模板称作Index templates。 模板设置包括settings和mappings,通过模式匹配的方式使得多个索引重用一个模板。1. settings主要作用于index的一些相关配置信息,如分片数、副本数,tranlo...
2021-04-11 11:00:31
887
转载 记录一则强制开库遭遇ORA-16433的处理过程
客户的一套开发环境,大概了解到的背景是清理空间时redo被运维人员当作log误删除,一线同事先接手处理,过程中遇到问题升级到我这里继续分析。接手后,数据库处于mount状态,之前恢复过程中已经做过resetlogs的操作,也设置了"_allow_resetlogs_corruption"隐藏参数为true,目前直接开库会提示需要恢复,重新进行resetlogs时报错ORA-600 [2662],起初看到这个错误心中略有些放松,根据经验,推下SCN就好了:SQL> alter datab.
2021-04-05 21:26:37
429
转载 屡次发生的Oracle谓词越界
近期在客户现场屡次遇到由于统计信息过旧导致执行计划选错引发的数据库性能问题,今天做个总结:谓词越界常见发生在where谓词是时间字段的,总的来说统计信息记录的是一个过旧的时间,而SQL传入的时间是一个最新的时间范围(往往是<time time1<c<time2),由于统计信息不全,按照CBO计算出来的结果集就很小,在多表关联的情况下,CBO就会选择认为的最优的关联方式,而实际执行时发现不是那么回事,有大量结果集需要扫描,就会爆发SQL性能问题。谓词越界就是select的谓词的条件不在
2021-04-05 20:49:44
1254
转载 关于《数据库服务能力成熟度模型》的内容和要求
在首批评估中,云和恩墨作为国内领先的数据技术企业,首家顺利通过了《数据库服务能力成熟度模型》三大能力域的等级评估。其中“规划设计”和“运维运营”专项获得最高的五级评估,“实施部署”专项获得四级评估,这代表着云和恩墨在数据库服务领域已达到国内领先水平。目录导读 0、标准编制背景 1、三大能力域 1.1、规划设计能力 1.1.1、架构规划咨询 1.1.2、容灾备份规划 1.1.3、数据安全规划 1.1.4、产品选型规划 1.1.5.
2021-04-05 20:48:36
1222
转载 RMAN-05501 RMAN-05001
错误信息:RMAN-05501: aborting duplication of target databaseRMAN-05001: auxiliary file name /oracle/oradata/skatedb/tbs_statspack01.dbf conflicts with a file used by the target database在用rman duplicate创建dg的时候,抛出如上的错误,这里只列出用rman dumplicate的过程,具体操作步骤如下:.
2021-03-28 20:27:00
860
转载 HTTP与HTTPS的区别及SSL协议
超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。 为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
2021-03-25 09:06:26
1120
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅