大数据开发主要做什么?

大数据开发主要做什么?写在前面本文隶属于专栏《100个问题搞定大数据理论体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定大数据理论体系解答一个大数据平台架构通常如图所示,大数据开发涵盖了图中从下到上各层的实现,其中主要的部分是采集层、储存层、计算层、模型层和接口层,核心部分是储存层和计算层。各层中功能模块的技术实现会根据实际业务场景不同而有所变化,但仍然是围绕着储存数据和数值计算这两大核心功能来进行的。因此,大数据开发的作用主要集中在以

大家好,又见面了,我是你们的朋友全栈君。

写在前面

本文隶属于专栏《100个问题搞定大数据理论体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!

本专栏目录结构和文献引用请见100个问题搞定大数据理论体系

解答

在这里插入图片描述

一个大数据平台架构通常如图所示,大数据开发涵盖了图中从下到上各层的实现,其中主要的部分是采集层、储存层、计算层、模型层和接口层,核心部分是储存层和计算层。
各层中功能模块的技术实现会根据实际业务场景不同而有所变化,但仍然是围绕着储存数据和数值计算这两大核心功能来进行的。
因此,大数据开发的作用主要集中在以下几个方面

1. 资源配置
大数据处理系统面向的是大体量、多来源、多类型的数据。因此,大数据开发需要综合考虑系统资源的合理设计和分配,综合考虑节点数量和角色的分配、硬盘容量和可能的扩展、后台任务和内存空间的分配以及程序设计时内存和并发量等问题。
如果这些资源问题没有处理好,会导致整个大数据集群性能和稳定性下降,极端情况下可能会导致集群部分服务异常关闭,甚至整个集群宕机。

2. 数据移动
数据移动问题包括数据从外部流入到平台、数据从平台流出到外部、数据在平台内的移动以及平台之间的数据移动。
在这个过程中,大数据开发需要充分考虑数据量大小和对数据实时性的要求,避免数据积压和数据丢失。

3.计算性能
如何保障大数据处理平台的计算性能是开发人员在大数据开发过程中需要考虑的问题。
根据不同的业务场景和数据类型,选择合适的计算方式,合理地设计数据存储机制与数据结构,可以在一定程度上保持并优化大数据计算的效率。

4.数据安全
数据安全指的是数据的可用性、完整性和保密性。在进行大数据开发时可以充分利用大数据技术框架所提供的相关数据安全机制,保障数据安全。

5.灵活性和容错性
灵活性是指大数据平台的应变能力,使其在面对不同应用需求时可以不用进行过多的改动和重构。
容错性是指在大数据平台出现部分功能故障时,仍能保证平台的主体功能不失效,或能够在主体功能受到严重影响前重启功能服务或启动替代功能服务。
大数据处理系统的基础设施规模通常比较庞大,采用的又都是廉价的商用设备,因此必须经过大数据开发工作的仔细设计,才能保证存储系统的灵活性和容错性,使其能够随应用一起扩容及扩展,并且稳定运行。

大数据平台架构图

补充

什么是大数据开发?

使用程序语言和大数据技术框架,将与大数据相关的需求实现为一个系统、软件或模块的开发过程

为了进一步明确这个概念,请注意以下几种情况:

  1. 不使用程序开发语言的,不属于大数据开发的范畴。例如用 Excel分析数据的过程。
  2. 功能需求与大数据无关的,不属于大数据开发的范畴。例如用一台服务器就可以承载所有功能的需求。
  3. 最终产品并非是一个系统、软件或模块的,不属于大数据开发的范畴。例如最终产品是一份数据分析报告,或使用 Spark Shell命令行完成的数据处理过程。
  4. 需求被明确前或需求被满足后的工作,不属于大数据开发的范畴。例如大数据平台已经按照需求开发完成,数据分析师利用平台中储存的数据进行算法研发。

值得注意的是,大数据开发是一个完整的系统性工程,应该用整体观念来看待,不能把其中的某项工作单独割裂出来进行界定。

例如,操作Linux Shell或使用图形界面来部署调试集群、査看日志等工作,虽然不符合上述定义,但却是整个系统性开发工作中不可分割的一部分,因此仍然在大数据开发工作的范畴之中;

另一方面,虽然我们试图尽可能清晰地界定大数据开发与其他工作之间的边界,但这个边界仍然是模糊的,需要在实际开发工作中灵活变通,如向 Hadoop集群中提交一个实现某种数椐挖掘功能的
MapReduce任务,即使该任务与整个平台的耦合性并不强,可以被割裂出来界定为数据挖掘工作,但若被界定为数据开发工作,也并没有明显的不妥。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135978.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab多重比较lsd法,多重比较LSD-t值的计算(附证明方法)

    matlab多重比较lsd法,多重比较LSD-t值的计算(附证明方法)多重比较LSD-t值的计算问题的提出:向学术期刊投稿时,“变态”的审稿人向你“索要”LSD-t值,可是SPSS的输出结果中没有这个值——是不是有点悲催?!另外,大家还会有一个常见的疑问:采用LSD-t法进行两两比较之后得出来的p值,需不需要调整显著性水平?我们先把原始数据和答案给出来,然后再讲一讲其中的数理逻辑。本例使用的原始数据如下图所示,有兴趣的读者可以用本数据进行对照学习(本例采用单因素方差…

    2022年6月12日
    45
  • 安全通信网络-(一)网络架构

    安全通信网络-(一)网络架构安全通信网络随着现代信息化技术的不断发展,等级保护对象通常通过网络实现资源共享和数据交互,当大量的设备连成网络后,网络安全成了最为关注的问题。按照“一个中心,三重防御”的纵深防御思想,边界外部通过广

    2022年7月3日
    22
  • pycharm安装tensorflow版本无法找到_pycharm安装后无解释器

    pycharm安装tensorflow版本无法找到_pycharm安装后无解释器1、TensorFlow安装keras需要在TensorFlow之上才能运行。所以这里安装TensorFlow。TensorFlow需要vs环境,需要wein64位环境,所以32位的小伙伴需要升级为64位系统以后才行。(1)第一种方式使用pip安装如果只想专用cpu加速,安装pipinstall–upgradetensorflow如果想使用gpu加速,还需要安装pipinstall–upgradetensorflow-gpu安装以后还需要cuda显卡驱动,可参考https://

    2022年8月25日
    7
  • SecureCRT显示乱码的解决办法

    SecureCRT显示乱码的解决办法SecureCRT是一款支持SSH的终端仿真程序,用于连接运行包括Windows、UNIX和VMS的工具。对于学ARM的人来说,这个软件也是十分的好用!下面来看看SecureCRT的显示问题,如果没有设置好,那么就会出现乱码这种情况。比如:我发现在连接Linux系统之后,因为我装的是中文版的Linux系统,所以在显示中文的时候,SecureCRT显示出乱码。原因在于我们的Linux

    2022年7月17日
    45
  • springmvc实现拦截器两种方式_追逐拦截他人的定义

    springmvc实现拦截器两种方式_追逐拦截他人的定义SpringMVC拦截器1、什么是拦截器  在系统中,经常需要在处理用户请求之前和之后执行一些行为,例如检测用户的权限,或者将请求的信息记录到日志中,即平时所说的“权限检测”及“日志记录”。当然不仅仅这些,所以需要一种机制,拦截用户的请求,在请求的前后添加处理逻辑。  SpringMVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(InterceptorChain)。在访问被拦截的方法或字段时

    2025年8月11日
    2
  • kubernetes入门到精通(二):k8s部署Tomcat集群,基于NTFS协议的文件集群共享,Service提供负载均衡,端口转发工具Rinetd配置外部访问

    配置Docker阿里云镜像加速服务登录阿里云账号,进入控制台->容器镜像服务(不需要有阿里云的服务器,只要注册账号即可)在两台node节点上配置好阿里云的镜像加速。重启一下dockersudosystemctlrestartdocker重启一下k8ssystemctlstartkubelet部署Tomcat集群方法1:使用可视化界面部署tomcat集群dashboard->工作负载->创建->创建应用稍等几分钟之后,

    2022年4月7日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号