本篇博文主要对HyperBase(HBase)、Search(ElasticSearch)的索引类型及具体存储位置进行概要总结,让大家从整体上了解TDH平台中HyperBase和Search索引的管理。后续会在大数据核心原理与实践专栏中对索引相关知识进行详细讲解。

ESSearch索引类型存放位置
在早期ESSearch1.X版本,会将索引存在内存,但之后发现没啥明显提升,就在2.X版本去掉了内存存储方式。故现在最新的ESSearch的索引应当存放在本地磁盘。

具体的文件存储格式有如下几种:
    simplefs
    这是一个随机访问文件的文件存储系统,并发性能较差,多线程下存在性能瓶颈问题。如果我们想对ESSearch索引做持久化,推荐使用niofs。

    NIO FS(NIO文件系统)
    通过NIO将分片索引文件写到文件系统上,允许多线程同时读取文件。

    MMap FS(内存映射文件系统)
    将索引分片存储到文件系统上,再通过映射,将索引文件映射到内存中。map即为映射的意思。不过我们需要注意:索引文件映射到内存过程中,我们需要划分出与被映射文件大小一样的虚拟内存空间。
# 设置Linux虚拟地址空间大小
echo "vm.max_map_count=262144" >> /etc/sysctl.conf && sysctl -p

    MMap FS / NIO FS(缺省值, 即default_fs)
    它会为每个类型的文件选择最好的文件系统。

HBase 索引类型及存放位置

HBase索引分为3种:
    一级索引:即原表RowKey索引。这个当然是存放在原表中(此索引存在HDFS上)
    二级索引:在某个或某些列上建立二级索引,实现基于列的快速条件查询,此索引也是与原表一起存放(此索引存在HDFS上)
    全文索引:HBase底层借助ElasticSearch实现全文索引,而ElasticSearch的索引是存在本地磁盘上的,故HBase的全文索引也是存储在磁盘上。
    (注1:在最新版本,使用默认的存储设置default_fs就行。ESSearch会在Windows的64bit系统上使用 mmapfs,在windows的32bit系统上使用 simplefs ,除此之外默认使用 default_fs (hybrid niofs 和 mmapfs),如Linux。)
    (注2:在商业发行版大数据平台TDH上,也是默认存在本地磁盘,但同时也支持存在HDFS上)

总结
说了这么多,大家只要记住ElasticSearch将索引存储在本地磁盘,HBase一级索引、二级索引存在HDFS上,全文索引存在本地磁盘即可!

原文链接:https://blog.csdn.net/whdxjbw/article/details/81133830

HBase和ElasticSearch索引类型及存储位置的更多相关文章

  1. mysql索引类型(按存储结构划分)

    关于mysql索引类型,网上有很多相关的介绍,给人的感觉很乱.鄙人在翻阅相关书籍后,特意梳理了一下.哪里有不对的地方,欢迎指正! 1. B-Tree索引 它使用B-Tree数据结构来存储数据,实际上很 ...

  2. Elasticsearch - 搜索类型与搜索位置

    一.搜索类型: Elasticsearch同意用户选择其所希望的处理查询的方式. 由于存在一些不同的情形,对其使用不同的搜索类型才是合适的.为了控制查询的运行方式,我们能够在请求中使用search_t ...

  3. elasticsearch 索引 类型 id

    zjtest7-frontend:/usr/local/logstash-2.3.4/config# cat logstash_indexer01.conf  input {         redi ...

  4. C语言变量的类型和存储位置

    . C语言变量主要分为全局变量.静态全局变量.局部变量.静态局部变量和寄存器变量.其中静态变量用static关键字进行修饰.程序所占用的内存可以分为以下几个部分: ()代码段-存放程序代码,只读的,不 ...

  5. Elasticsearch索引原理

    转载 http://blog.csdn.net/endlu/article/details/51720299 最近在参与一个基于Elasticsearch作为底层数据框架提供大数据量(亿级)的实时统计 ...

  6. 【Java编程思想阅读笔记】Java数据存储位置

    Java数据存储位置 P46页有感 一.前置知识 栈是由系统自动分配的,Java程序员对栈没有直接的操作权限, 堆是所有线程共享的内存区域,栈 是每个线程独享的. 堆是由程序员自己申请的,在使用new ...

  7. Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)

    Elasticsearch之重要核心概念如下: 1.cluster 代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是 ...

  8. 匹夫细说C#:不是“栈类型”的值类型,从生命周期聊存储位置

    0x00 前言: 匹夫在日常和别人交流的时候,常常会发现一旦讨论涉及到“类型”,话题的热度就会立马升温,因为很多似是而非.或者片面的概念常常被人们当做是全面和正确的答案.加之最近在园子看到有人翻译的& ...

  9. mysql中常见的存储引擎和索引类型

    存储引擎 1.      定义 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类 ...

随机推荐

  1. #1使用html+css+js制作网站教程 准备

    #1使用html+css+js制作网站教程 准备 本系列链接 0 准备 0.1 IDE编辑软件 0.2 浏览器 0.3 基础概念 0.3.1 html 0.3.2 css 0.3.3 js 0.4 文 ...

  2. SpringBoot初识日志

    SpringBoot初识日志 1.市面上的日志框架: JUL.JCL.Jboss-logging.logback.log4j.log4j2.slf4j- 日志门面(日志的抽象层) 日志实现 SLF4j ...

  3. 【JS学习】String基础方法

    前言:本博客系列为学习后盾人js教程过程中的记录与产出,如果对你有帮助,欢迎关注,点赞,分享.不足之处也欢迎指正,作者会积极思考与改正. 目录 定义: 字符串的连接: 标签模板的使用: 字符串的基本方 ...

  4. 【SpringBoot】前缀树 Trie 过滤敏感词

    1.过滤敏感词 Spring Boot实践,开发社区核心功能 完成过滤敏感词 Trie 名称:Trie也叫做字典树.前缀树(Prefix Tree).单词查找树 特点:查找效率高,消耗内存大 应用:字 ...

  5. explain extended;show warnings

    mysql> explain extended select count(*) from xuehao;+----+-------------+-------+------+---------- ...

  6. 【Oracle】从删除的recyclebin中查看并恢复数据

    如果数据库中用了drop删除表,后面没有加上purge的话,会出现在oracle的回收机制中 dba_recyclebin可以查看当前删除的都是哪些 这个只是部分截图,可以看到删除的对象是什么,删除的 ...

  7. C# 合并和拆分PDF文件

    一.合并和拆分PDF文件的方式 PDF文件使用了工业标准的压缩算法,易于传输与储存.它还是页独立的,一个PDF文件包含一个或多个"页",可以单独处理各页,特别适合多处理器系统的工作 ...

  8. AWS IoT Greengrass是什么?V1和V2版本及其差异

    AWS IoT Greengrass ​ Greengrass主要是用于边缘计算或者机器学习有关,对于详细了解请阅读结尾处的官方文档,文档内容也较为丰富. 目录 AWS IoT Greengrass ...

  9. 入门OJ:郭嘉的消息传递

    题目描述 我们的郭嘉大大在曹操这过得逍遥自在,但是有一天曹操给了他一个任务,在建邺城内有N(<=1000)个袁绍的奸细 将他们从1到N进行编号,同时他们之间存在一种传递关系,即若C[i,j]=1 ...

  10. 我在华为OD的275天

    目录 0 - 时间线 1 - 为什么会去华为 OD 2 - 华为 OD 的工作内容 3 - OD 与华为自有员工的对比 4 - 那,到底要不要去华为 OD? 5 - 网传的 OD 转华为正编,真的假的 ...