论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
人工智能
›
人工智能
›
AIGC时代的数字化转型核心 Springboot集成数据管理神器 ...
AIGC时代的数字化转型核心 Springboot集成数据管理神器
杀鸡焉用牛刀
论坛元老
|
2024-6-15 00:01:55
|
显示全部楼层
|
阅读模式
楼主
主题
2037
|
帖子
2037
|
积分
6111
往期热门专栏回顾
专栏描述Java项目实战先容Java组件安装、使用;手写框架等Aws服务器实战Aws Linux服务器上操纵nginx、git、JDK、VueJava微服务实战Java 微服务实战,Spring Cloud Netflix套件、Spring Cloud Alibaba套件、Seata、gateway、shadingjdbc等实战操纵 Java基础篇Java基础闲聊,已出HashMap、String、StringBuffer等源码分析,JVM分析,持续更新中 Springboot篇从创建Springboot项目,到加载数据库、静态资源、输出RestFul接口、跨越题目办理到统一返回、全局异常处置惩罚、Swagger文档 Spring MVC篇从创建Spring MVC项目,到加载数据库、静态资源、输出RestFul接口、跨越题目办理到统一返回 华为云服务器实战华为云Linux服务器上操纵nginx、git、JDK、Vue等,以及使用宝塔运维操纵添加Html网页、摆设Springboot项目/Vue项目等 Java爬虫通过Java+Selenium+GoogleWebDriver 模拟真人网页操纵爬取花瓣网图片、bing搜索图片等 Vue实战讲授Vue3的安装、环境配置,基本语法、循环语句、生命周期、路由设置、组件、axios交互、Element-ui的使用等 Spring讲授Spring(Bean)概念、IOC、AOP、集成jdbcTemplate/redis/事件等
媒介
进入大数据阶段就意味着进入NoSQL阶段,更多的是面向OLAP场景,即数据堆栈、BI应用等。
大数据技能的发展并不是偶然的,它的背后是对于本钱的考量。会合式数据库或者基于MPP架构的分布数据库往往接纳的都是性能稳固但价格较为昂贵的小型机、一体机或者PC服务器等,扩展性相对较差;而大数据计算框架可以基于价格低廉的平凡的硬件服务器构建,而且理论上支持无限扩展以支撑应用服务。
在大数据范畴中最著名的就是 Hadoop 生态,总体来看,它主要由三部门构成:底层文件存储体系 HDFS(Hadoop Distributed File System,Hadoop 分布式文件体系)、资源调度计算框架 Yarn(Yet Another Resource Negotiator,又一个资源和谐者)以及基于 HDFS 与 Yarn的上层应用组件,例如 HBase、Hive 等。一个典型的基于 Hadoop 的应用如下图所示。
图片▲图 一个典型的 Hadoop 应用
1、HDFS
HDFS 被设计成适合运行在通用硬件(Commodity Hardware)上的分布式文件体系。它和现有的分布式文件体系有很多共同点,例如典型的 Master-Slave 架构(这里不预备睁开先容),也有不同点,HDFS 是一个具有高度容错性的体系,适合摆设在廉价的呆板上。关于HDFS 这里主要想说两点,默认副本数的设置以及机架感知(Rack Awareness)。
HDFS 默认副本数是 3,这是由于 Hadoop 有着高度的容错性,从数据冗余以及分布的角度来看,需要在同一机房不同机柜以及跨数据中心举行数据存储以保证数据最大可用。因此,为了到达上述目标,数据块需要至少存放在同一机房的不同机架(2 份)以及跨数据中心的某一机架(1 份)中,共 3 份数据。
机架感知的目标是在计算中只管让不同节点之间的通信能够发生在同一个机架之 内,而不是跨机架,进而淘汰分布式计算中数据在不同的网络之间的传输,淘汰网络带 宽资源的消耗。例如当集群发生数据读取的时候,客户端按照由近到远的优先次序决定 哪个数据节点向客户端发送数据,由于在分布式框架中,网络 I/O 已经成为主要的性能瓶颈。
只有深刻理解了这两点,才气理解为什么 Hadoop 有着高度的容错性。高度容错性是Hadoop 可以在通用硬件上运行的基础。
2、Yarn
Yarn 是继 Common、HDFS、MapReduce 之 后 Hadoop 的又一个子项目, 它是在MapReduceV2 中提出的。
在 Hadoop1.0 中,JobTracker 由资源管理器(由 TaskScheduler 模块实现)和作业控制 (由 JobTracker 中多个模块共同实现)两部门构成。
在 Hadoop1.0 中,JobTracker 没有将资源管理相干功能与应用程序相干功能拆分开,逐 渐成为集群的瓶颈,进而导致集群出现可扩展性变差、资源利用率降落以及多框架支持不 足等多方面的题目。
在 MapReduceV2 中,Yarn 负责管理 MapReduce 中的资源(内存、CPU 等)而且将其 打包成 Container。如许可以使 MapReduce 专注于它善于的数据处置惩罚使命,而不需要考虑资源调度。这种松耦合的架构方式实现了 Hadoop 团体框架的灵活性。
3、Hive
Hive 是基于Hadoop 的数据堆栈基础构架,它利用简单的 SQL 语句(简称 HQL)来查询、分析存储在 HDFS 中的数据,并把 SQL 语句转换成 MapReduce 程序来举行数据的处置惩罚。Hive与传统的关系型数据库的主要区别体现在以下几点。
1)存储的位置, Hive 的数据存储在 HDFS 或者 HBase 中,而后者的数据一样平常存储在裸装备或者本地的文件体系中,由于 Hive 是基于 HDFS 构建的,那么依赖 HDFS 的容错特性,Hive 中的数据表自然具有冗余的特点。
2)数据库更新, Hive 是不支持更新的,一样平常是一次写入多次读写(这部门从 Hive 0.14之后开始支持事件操纵,但是约束比较多),但是由于 Hive 是基于 HDFS 作为底层存储的, 而 HDFS 的读写不支持事件特性,因此 Hive 的事件支持必然需要拆分数据文件以及日志文 件才气支持事件的特性。
3)实行 SQL 的延迟,Hive 的延迟相对较高,由于每次实行都需要将 SQL 语句解析成MapReduce 程序。
4)数据的规模上,Hive 一样平常是 TB 级别,而后者规模相对较小。
5)可扩展性上,Hive 支持 UDF、UDAF、UDTF,后者相对来说可扩展性较差。
4、HBase
HBase(Hadoop Database)是一个高可靠性、高性能、面向列、可伸缩的分布式存储体系。它底层的文件体系使用 HDFS, 使用ZooKeeper 来管理集群的 HMaster 和各RegionServer 之间的通信,监控各RegionServer 的状态,存储各 Region 的入口所在等。
4.1.特点
HBase 是 Key-Value 情势的数据库(类比 Java 中的 Map)。既然是数据库那肯定就有 表,HBase 中的表大概有以下几个特点。
1)大:一个表可以有上亿行,上百万列(列多时,插入变慢)。
2)面向列:面向列(族)的存储和权限控制,列(族)独立检索。
3)稀疏:对于空(null)的列,并不占用存储空间,因此,表可以设计得非常稀疏。
4)每个单元格中的数据可以有多个版本,默认情况下版本号主动分配,是单元格插入 时的时间戳。
5)HBase 中的数据都是字节,没有范例定义具体的数据对象(由于体系需要顺应不同 范例的数据格式和数据源,不能预先严酷定义模式)。
这里需要注意的是,HBase 也是基于 HDFS,以是也具有默认 3 个副本、数据冗余的特 点。别的 HBase 也是利用 WAL 的特点来保证数据读写的划一性。
4.2.存储
HBase 接纳列式存储方式举行数据的存储。传统的关系型数据库主要是接纳行式存储 的方式举行数据的存储,数据读取的特点是按照行的粒度从磁盘上读取数据记录,然后根 据现实需要的字段数据举行处置惩罚,如果表的字段数目较多,但是需要处置惩罚的字段较少(特 别是聚合场景),由于行式存储的底层原理,仍然需要以行(全字段)的方式举行数据的查 询。在这个过程中,应用程序所产生的磁盘 I/O、内存要求以及网络 I/O 等都会造成一定的 浪费;而列式存储的数据读取方式主要是按照列的粒度举行数据的读取,这种按需读取的 方式淘汰了应用程序在数据查询时所产生的磁盘 I/O、内存要求以及网络 I/O。
别的,由于雷同范例的数据被统一存储,因此在数据压缩的过程中压缩算法的选用以 及效率将会进一步加强,这也进一步降低了分布式计算中对于资源的要求。
列式存储的方式更适合 OLAP 型的应用场景,由于这类场景具有数据量较大以及查询字段较少(往往都是聚合类函数)的特点。例如近来比较火的 ClickHouse 也是使用列式存储的方式举行数据的存储。
5、Spark及Spark Streaming
Spark 由 Twitter 公司开发并开源,办理了海量数据流式分析的题目。Spark 首先将数据 导入 Spark 集群,然后通过基于内存的管理方式对数据举行快速扫描,通过迭代算法实现 全局 I/O 操纵的最小化,到达提升团体处置惩罚性能的目标。这与 Hadoop 从“计算”找“数据” 的实现思路是雷同的,通常适用于一次写入多次查询分析的场景。
Spark Streaming 是基于 Spark 的一个流式计算框架,它针对及时数据举行处置惩罚和控制, 并可以将计算之后的结果写入 HDFS。它与当下比较火的及时计算框架 Flink 雷同,但是二者在本质上是有区别的,由于 Spark Streaming 是基于微批量(Micro-Batch)的方式举行数据处置惩罚,而非一行一行地举行数据处置惩罚。
关于作者
李杨,资深数据架构师,在数据相干范畴有10年以上工作经验。头部保险资管公司科技平台生意业务体系团队开发组负责人,负责多个应用以及数据平台的建立、优化以及迁移工作。曾担任某数据公司技能合资人,负责多个金融机构的数据堆栈或数据平台相干的工作。《企业级数据架构:核心要素、架构模子、数据管理与平台搭建》作者。
本文摘编于《企业级数据架构:核心要素、架构模子、数据管理与平台搭建》作者。(书号:9787111746829),经出书方授权发布,转载请标明文章出处。
保举理由:
一部从企业架构视角体系讲授企业级数据架构的著作,体系梳理和阐述了企业架构的基础知识,以及数据架构的构成要素、架构模子、数据管理和数据资产管理的理论知识。
资料获取,更多粉丝福利,关注下方公众号获取
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
杀鸡焉用牛刀
论坛元老
这个人很懒什么都没写!
楼主热帖
ElasticSearch-高级查询
手把手带你通过API创建一个loT边缘应用 ...
一、kotlin基础语法学习
第4章 复合类型
背八股文的都是什么水平
揭秘 ChunJun:如何实现 e2e&session ...
Apache Hudi 在袋鼠云数据湖平台的设计 ...
生产事故-记一次特殊的OOM排查 ...
开源轻量级工作流WorkflowCore介绍 ...
源码解析 Handler 面试宝典
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
快速回复
返回顶部
返回列表