0

0

大数据架构的几个关键技术

-

-

发布时间:2018-03-10 09:41:20

|

5405人浏览过

|

来源于php中文网

原创

企业it基础设施平台的重新构建是一项复杂的任务。重新构建平台通常由一系列变化的关键业务驱动因素引发,现在情况正是如此。简而言之,主导企业it技术的近30年的平台无法再满足推动业务发展所需的工作负载的需求。

1.jpg

数字化转型的核心是数据,它已成为商业中最有价值的事务。由于格式不兼容,传统数据库的局限性,以及无法灵活地合并来自多个来源的数据,组织长期以来一直受到其使用数据的困扰。新兴技术的出现有望改变这一切。

改善软件部署模式是消除数据使用障碍的一个主要方面。更高的“数据灵活性”还需要更灵活的数据库和更具可扩展性的实时流式传输平台。实际上,事实上,至少有七种基础技术可以结合在一起,为企业提供一种灵活的、实时的“数据结构”。

与他们正在取代的技术不同,这七种软件创新能够扩展以满足许多用户和许多用例的需求。对于企业而言,他们有能力实现更快、更明智的决策,并创造更好的客户体验。

1. NoSQL数据库

RDBMS在数据库市场上占据了近30年的主导地位。但是,面对数据量的不断增长以及数据处理速度的加快,传统关系数据库已经显示出其不足。NoSQL数据库由于其速度和扩展能力而被接管。就文档数据库而言,它们从软件工程的角度提供了一个更简单的模型。这种更简单的开发模式可加快产品上市速度,并帮助企业更快响应客户和内部用户的需求。

2.实时流媒体平台

实时响应客户对客户体验至关重要。在过去的10年中面向消费者的行业经历了巨大的颠覆,这并不神秘。这与企业对用户实时做出反应的能力有关。转向实时模型需要事件流。

消息驱动的应用程序已存在多年。然而,如今的流媒体平台的规模比以往要大得多,成本要低得多。最近流媒体技术的进步为许多优化业务的新方式打开了大门。通过为软件开发和测试团队提供实时反馈循环,事件流还可以帮助企业提高产品质量,并更快地开发新的软件。

3. Docker和容器

容器对开发人员和操作人员,以及组织本身都有很大的好处。传统的基础设施隔离方法是静态分区,即为每个工作负载分配一个单独的固定资源块(无论是物理服务器还是虚拟机)。静态分区可以更容易排除故障,但是实质性未充分利用的硬件成本很高。例如,Web服务器平均只使用了可用总计算量的10%。

容器技术的巨大好处是它能够创造一种新的隔离方式。那些最了解容器的人员可能会相信他们可以通过使用Ansible、Puppet或Chef等工具来获得同样的好处,但实际上这些技术具有很强的互补性。此外,无论企业如何努力,这些自动化工具都无法实现在不同基础设施和硬件设置之间自由移动工作负载所需的隔离。同一个容器可以在本地数据中心的裸机硬件上或公共云中的虚拟机上运行,无需进行任何更改。这是真正的工作负载移动性。

4.容器存储库

容器存储库对于敏捷性至关重要。如果没有用于构建容器映像的DevOps进程以及用于存储它们的回收站,每个容器都必须建立在每一台机器中,才可以运行。通过存储库,可以在读取该存储库的计算机上启动容器映像。在多个数据中心处理时,这变得更加复杂。如果在一个数据中心内建立一个容器图像,那么如何将图像移动到另一个数据中心?理想情况下,通过利用融合数据平台,企业将有能力在数据中心之间对存储库实现镜像。

这里的一个关键细节是,内部部署和云计算之间的镜像功能可能与企业的数据中心之间的镜像功能差异很大。融合数据平台将通过提供这些功能为企业解决这个问题,而不管组织中使用的是数据中心基础设施还是云计算基础设施。

华友协同办公自动化OA系统
华友协同办公自动化OA系统

华友协同办公管理系统(华友OA),基于微软最新的.net 2.0平台和SQL Server数据库,集成强大的Ajax技术,采用多层分布式架构,实现统一办公平台,功能强大、价格便宜,是适用于企事业单位的通用型网络协同办公系统。 系统秉承协同办公的思想,集成即时通讯、日记管理、通知管理、邮件管理、新闻、考勤管理、短信管理、个人文件柜、日程安排、工作计划、工作日清、通讯录、公文流转、论坛、在线调查、

下载

5.容器编排

每个容器看起来都有它自己的私有操作系统,而不是静态硬件分区。与虚拟机不同,容器不需要计算和内存的静态分区。这使管理员能够在服务器上启动大量容器,而无需担心大量的内存量。有了像Kubernetes这样的容器编排工具,启动容器,移动它们并在环境中的其他地方重新启动容器变得非常容易。

在新的基础设施组件到位之后,诸如MapR-DB或MongoDB之类的文档数据库,MapR-ES或Apache Kafka之类的事件流式传输平台(诸如Kubernetes之类的编排工具),以及在Docker容器中实现用于构建和部署软件的DevOps过程之后,人们必须了解应该在这些容器中部署哪些组件的问题。

6.微服务

从历史上看,微服务的概念并不新鲜。如今的差异在于,启用技术(NoSQL数据库、事件流、容器编排)可以随着数千个微服务的创建而扩展。如果没有这些数据存储、事件流和架构编排的新方法,大规模微服务部署将不可能实现。管理大量数据、事件和容器实例所需的基础设施将无法扩展到所需的级别。

微服务都是与提供敏捷性有关。微服务通常由一个功能或一小组功能组成。工作的功能单元越小且越集中,创建、测试和部署服务就越容易。这些服务必须解耦,否则企业将失去具有敏捷性的微服务承诺。微服务可以依赖于其他服务,但通常通过负载平衡的REST API或事件流。通过使用事件流,企业可以利用请求和响应主题轻松跟踪事件的历史记录。由于整个请求流和请求中的所有数据都可以在任何时间点重播,因此这种方法对故障排除具有重大的益处。

由于微服务封装了一小部分工作,并且由于它们彼此分离,所以随着时间的推移更换或几乎没有障碍地升级服务。在原有模式下,依赖像RPC这样的紧密耦合意味着不得不关闭所有连接,然后重新建立它们。负载均衡是实现这些的一个大问题,因为人工配置使它们容易出错。

7.功能即服务

正如人们已经看到微服务在行业中占据主导地位,所以人们也会看到无服务器计算的兴起或者可能更准确地将其称为功能即服务(FaaS)。 FaaS以这样一种方式创建微服务,即代码可以包装在轻量级框架中,内置于容器中,按需执行(基于某种触发器),然后自动进行负载平衡,多亏有了轻量级框架。FaaS的美妙之处在于它让开发人员几乎完全专注于该功能。因此,FaaS看起来是微服务方法的合乎逻辑的结论。

触发事件是FaaS的关键组成部分。没有它,只有在需要完成工作的情况下,才能调用功能和消耗资源。功能的自动调用使得FaaS真正具有价值。想象一下,每当有人读取用户的配置文件时,都会有一个审计事件,这是一个必须运行以通知安全团队的功能。更具体地说,它可能仅过滤出某些类型的记录。它可以是具有选择性的,毕竟它是一个完全可定制的业务功能。需要注意的是,使用像FaaS这样的部署模型来完成这样的工作流程非常简单。

把事件放在一起

触发服务背后的魔力实际上不过是事件流中的事件。某些类型的事件比其他事件更频繁地用作触发器,但是企业如果希望成为触发器的事件都可能成为触发器。触发事件可以是文档更新,对新文档运行OCR过程,然后将OCR过程中的文本添加到NoSQL数据库。如果人们以更有趣的方式思考,每当上传图像时,都可以通过机器学习框架进行图像识别和评分。这里没有根本的限制。如果定义了一个触发器事件,发生了一些事件,该事件触发该功能,并且该功能完成其工作。

FaaS将成为采用微服务的下一个阶段。然而,接近FaaS时必须考虑一个主要因素,那就是供应商锁定。 FaaS隐藏了特定的存储机制、特定的硬件基础架构和编排,这对开发人员来说都是伟大的事情。但由于这种抽象,托管的FaaS产品是IT行业有史以来最大的供应商锁定机会之一。由于这些API不是标准化的,因此从公共云中的FaaS产品迁移几乎是不可能的,不会丢失已经完成的近100%的工作。如果通过利用来自融合数据平台的事件以更有条理的方式接近FaaS,那么在云计算提供商之间移动将变得更加容易。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

38

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

83

2026.03.09

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

97

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

223

2026.03.05

PHP高性能API设计与Laravel服务架构实践
PHP高性能API设计与Laravel服务架构实践

本专题围绕 PHP 在现代 Web 后端开发中的高性能实践展开,重点讲解基于 Laravel 框架构建可扩展 API 服务的核心方法。内容涵盖路由与中间件机制、服务容器与依赖注入、接口版本管理、缓存策略设计以及队列异步处理方案。同时结合高并发场景,深入分析性能瓶颈定位与优化思路,帮助开发者构建稳定、高效、易维护的 PHP 后端服务体系。

458

2026.03.04

AI安装教程大全
AI安装教程大全

2026最全AI工具安装教程专题:包含各版本AI绘图、AI视频、智能办公软件的本地化部署手册。全篇零基础友好,附带最新模型下载地址、一键安装脚本及常见报错修复方案。每日更新,收藏这一篇就够了,让AI安装不再报错!

169

2026.03.04

Swift iOS架构设计与MVVM模式实战
Swift iOS架构设计与MVVM模式实战

本专题聚焦 Swift 在 iOS 应用架构设计中的实践,系统讲解 MVVM 模式的核心思想、数据绑定机制、模块拆分策略以及组件化开发方法。内容涵盖网络层封装、状态管理、依赖注入与性能优化技巧。通过完整项目案例,帮助开发者构建结构清晰、可维护性强的 iOS 应用架构体系。

246

2026.03.03

C++高性能网络编程与Reactor模型实践
C++高性能网络编程与Reactor模型实践

本专题围绕 C++ 在高性能网络服务开发中的应用展开,深入讲解 Socket 编程、多路复用机制、Reactor 模型设计原理以及线程池协作策略。内容涵盖 epoll 实现机制、内存管理优化、连接管理策略与高并发场景下的性能调优方法。通过构建高并发网络服务器实战案例,帮助开发者掌握 C++ 在底层系统与网络通信领域的核心技术。

34

2026.03.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
【web前端】Node.js快速入门
【web前端】Node.js快速入门

共16课时 | 2.1万人学习

php-src源码分析探索
php-src源码分析探索

共6课时 | 0.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号