深入了解ElasticSearch的Nested数据类型
[#](#一-es如何存储对象) (一)ES如何存储对象 {#一-es如何存储对象} ------------------------------------------ ElasticSearch中可以将数据以对象的方式存储并查询,但是ES底层的Lucene 没有内部对象的概念,因此如果通过默认的方式往ES中插入对象,ES会将对象层次结构扁平化为字段名称和值的简单列表。 比...
[#](#一-es如何存储对象) (一)ES如何存储对象 {#一-es如何存储对象} ------------------------------------------ ElasticSearch中可以将数据以对象的方式存储并查询,但是ES底层的Lucene 没有内部对象的概念,因此如果通过默认的方式往ES中插入对象,ES会将对象层次结构扁平化为字段名称和值的简单列表。 比...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ 前段时间公司规划了一个新的项目,我成了这个项目的负责人。在做技术选型时,有一个需求阻碍了前进的步伐。大概有十亿条数据,数据总量在六百G左右,这些海量的数据需要每天根据一定的逻辑计算得到几千万的值。当数据量达到这种程度时,Java应用已经无法支撑了,于是在技术选型时选中了大数据计...
[#](#前言) 前言 {#前言} ----------------- 之前项目里用的ES一直是7.6.2版本,后来得到通知需要将集群升级到7.17.13,因此写下这篇文章做个记录。 [#](#前期准备) 前期准备 {#前期准备} ----------------------- 升级版本:7.6.2 -\> 7.17.13 机器数量:三台Linux服务器组成的集群...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ Spark计算框架封装了三种主要的数据结构:RDD(弹性分布式数据集)、累加器(分布式共享只写变量)、广播变量(分布式共享支只读变量) [#](#二-rdd) (二)RDD {#二-rdd} --------------------------- RDD:弹性分布式数据集是...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ SparkSQL可以理解为在原生的RDD上做的一层封装,通过SparkSQL可以在scala和java中写SQL语句,并将结果作为Dataset/DataFrame返回。简单来讲,SparkSQL可以让我们像写SQL一样去处理内存中的数据。 Dataset是一个数据的分布式集...
[#](#概述) 概述 {#概述} ----------------- 事情的起因要从最近的一个新产品说起,最近部门有一个新的大数据产品规划,在考虑技术实现时,有一个动态表字段扩展的需求,比如原来表结构里只有a、b字段,需要不断的往里新增c、d、e等等字段,并且数据量也特别大。 于是就去寻找实现方案,针对这种数据模型无法确定的情况,非关系型数据库是比较合适的,于是找到了Mo...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ 在考研的时候,我有一门专业课是数据库,因此当时我对数据库的基础知识掌握的还算比较扎实,上周我再翻开当时考研时翻了无数遍的数据库书籍的时候,发现好多内容都忘掉了。刚好也决定开始写数据库相关的文章,就有了下面的内容。 [#](#二-基本概念) (二)基本概念 {#二-基本概念} ...
[#](#innodb中的页) InnoDB中的页 {#innodb中的页} -------------------------------------- InnoDB存储引擎基于页的方式存储在磁盘中,它将数据存储在页(Page)的概念上。一个页是 InnoDB 存储引擎中的最小存储单位,它包含了一定数量的数据行、索引节点和其他元数据。 InnoDB 存储引擎中的页包括了数...
[#](#一-什么是分库分表) (一)什么是分库分表 {#一-什么是分库分表} --------------------------------------- 分库分表故名思意是将一张表拆分成多个表,可能是一个库中的分表,也可能是分库又分表。分库分表主要解决的问题是数据库的性能瓶颈问题。即使建立索引,当数据量超过一定值时,查询效率就注定会降下来。通过分库分表,可以将原本的大数...
[#](#前言) 前言 {#前言} ----------------- 为了增加数据库的读能力,InnoDB设计了 Buffer Pool 缓冲池,将热点数据留在内存中,极大提高了数据库的读性能。除此之外,InnoDB还有一种叫做 Change Buffer的特性同样至关重要。 [#](#为什么需要-change-buffer) 为什么需要 Change Buffer {#...