服务器服务_大数据技术的核心包括哪些方面?

大数据在经济发展中的重大意义,并不意味着它可以取代一切对社会问题的理性思考,科学发展的逻辑不能迷失在海量数据中。大数据技术体系庞大而复杂,基础技术包括数据采集、数据预处理、分布式存储、NoSQL数据库、数据仓库、机器学习、并行计算和可视化等多种技术门类和不同技术水平。

数据在经济发展中的重大意义,并不意味着它可以取代一切对社会问题的理性思考,科学发展的逻辑不能迷失在海量数据中。大数据技术体系庞大而复杂,基础技术包括数据采集、数据预处理、分布式存储、NoSQL数据库、数据仓库、机器学习、并行计算和可视化等多种技术门类和不同技术水平。

服务器服务_大数据技术的核心包括哪些方面?

一、数据存储

Hadoop作为一个开源框架,是专门为离线和大规模数据分析而设计的,而HDFS作为其核心存储引擎,在数据存储中得到了广泛应用。HBase是一个H a ; $ S \ B分布式的、面向列的开源数据库,可以看作是hdfs的封装,其本质是数据存储和NoSQL数据库。HBase是一个Key/Value系统,部署8 S ; (在hdfs上,克服了hdfs在随机读写方面的缺U \ v点。和hadoop一样,Hbase主要依靠横向扩展,通过增加廉价的商用服务器, x ) D z U |增加计算和存储容量。Phoeni8 l Sx相当于一个Jaw } *va中间件,它帮助开发工程师访问NoSQL数据库,就像使用JDBC访问关系数据库一样。

纱线是一个Hadoop资源管理器,可以为上层应用提供统一的资源管理和调度。A 6 [ 8它的引入在利用率、统一资源管理和数据共享方面给集群带来了巨大的好处。纱线由以下组件组成:全局资源管理器、资源管理器的每个节点代理的节点管理器、代表每个应用程序的应用程序,以及每个应用程h / K d = G序主控器在节点管理器上运行多个容器。Mesos是一个开源U | ! 6 0 u的集群管理软件,支持Hadoop、Elastiv ` & z [cSearch、Spark、Storm和Ka( S j ]fka。Redis是一个速度非常快的非关系数据库,可以存储键和五种不同类型的值之间的映射,将内存中存储的键值对数据持久化到硬盘上,使用复制特性来扩展A O ] ! 9 ^性能,还可以使用客户端分片来扩展写入性能。

服务器服务_大数据技术的核心包括哪些方面?

Atlas是介于应用程序和MQ \ IySQL之间的中间件。在后端DB的视图中,Atlas相当N 4 } ! N于与其连接的- ` $ $ O = q 8 ]一个客户端,在前端应用的视图中,Atlas相当于一个DB。Atlas作为服务器,与应用程序进行通信,应用程序实现了MySQL的客户端和N y @ 7 8 , d W服务器协议,与MySQL作为客户端进行通信。它对应用屏蔽了数据库的细节,还维护了连接池,以减轻MySQK ; 7 C T d { .L的负担。启动Atlas后,会创建多个线程,其中一个为主线程,其余为工作线程。主线程负责监听所有客户端连接请求,而工作线程只[ 3 ] + S监听主线程的命令请求。随着互联网科技的蓬勃发展,人工智能时代即将到来,所以抓住下一个窗口。帮助那些想向互联网方向学习,但D y L e M [因为时间和资源不足而放弃的人。

Kudu是围绕Hadoop生态系统构建的存储引擎。Kudu与Hadoop生态系统有着相同的设计理念。它运行在普通服a E @ ^务器上,可以大规模分布式部署,满足行业高& j : R ` g可用性要求。设计理念是对快速数据进行快速分析。作为一个开源存储引擎,它可以提供低延迟的随机读写和高效的数据分析。Kudu不仅提供了用于插入、更新和删除的行级API,还提供了接近Parquet性能的批量扫描操作。使用相同的存储不仅可以随机读写,还可以满足数据分析的要求。Kud& M q Z 1u有广泛的应用,例如实时数据分析和数据可能变化的时间序列数据应用。在数据存储过程中,涉及的数据表有数百列,其中包括各H e g a v ; }种复杂的Query。建议采用拼花、ORC等列存储方式压缩数据。拼花地板可以支持灵活的压缩选项,并显著减少磁盘上的存储。

服务器服务_大数据技术的核心包括哪些方面?

二、数据查询和分析

Hive的核心工作是将SQL语句翻译成MR程序,可以将结构化数据映射成数据库表,并提供HQL(H| W p ! W ~ ~ live SQL)查询功能。Hive本身并c C & E # [不存储和计算数据,它完全依赖于HDFS和MapReduce。Hive可以理解为一个客户端工具h Z D,将SQL操作转换成相应的MapReduce作业,然后在hadoop上运行。k v t ( d d ZHiveR y c P W l ?支持标准的SQL语法,这消除了用户编写MapReduce程序的需要。它的出现使精通SQL技能但不熟悉MapReN ] n J I `duce、编程能力弱、不擅长Java语言的用户能够方便地在HG z T Q s 0 E &DFS大规模数据集上查询% N \ s `、汇总和分析数据。Hive是为批量处理大数据而诞生的。Hive的出现解决了传统关系数据库(MySql、Or% H x d T qacle)处理大数据的瓶颈。Hive将执行计划分为map-> shuffle-> reduce-> map-> shuffle-> reduce…如果一个查询被编译成多轮MapReduce,会有更多的中间结果。由于MapReduce执行框架0 m D # G 4 V ;本身的特点Q B 9 D,过多的中间进程会增加Q K M 0 { B整个Query的执行时间。在Hive的运行过程中,用户只需要创建表、导入数据、编写SQL分析语句。这个过z g @ w k ~ i = h程的其余部分由Hive框架自动完成。

Impala是Hive的补充,可以实现高效的SQL查询。Impala用于在H S o e X . @ iHadoop上实现5 z hSQL,对大数6 = G R据进行实时查询和分析。通过大家熟悉的传1 g h统关系数c L D a据库的SQL风格来操作大数据,数据也^ P S E - \ N可以存储在HDFS和HBase中。Impala不再使用速度慢的Hive+MapReduce批处理,而是使用类似于商用并行关系数据库中的分布式查询引擎(由Query Planner、Qu& M ( s ~ G k t Eery CoorX $ 6 b = _ ? # xdinator和Query Exec Engine组成),可以直接查询来自N } T M G O Q ! VHDFS或HBase的数据,具有SELECT、JOIN和统计功能,大大降低了延迟。Impala将整个查询分成一个执行计划树,而不是一系列MapReduce任务。与Hive相比,Impi , G h e V ,ala没有MapReduce启动时间。

服务器服务_大数据技术的核心包括哪些方面?

Hive适合长期批J W R A b j 6量查询分析,而Impala适合实时交互SQL查询。Imp[ B . \ 5 Bala为数据人员提供了一个大数据分析工具,可以快速实验和验证他们的想法。先用Hive进行q Y 7 0 t # K数据转换,再用Impala对Hive处理的数据集进行快速数据分析。一般来说,Impala将执行计划表示为Q ` 5 c t i一个完整的执行计划树,可以更自然地将执行计划分配给每个. G Z b }Impala来执行查询,而不是像Hive那样组合成流水线映射->reduce模式,从而保证Ir ] P G ympala具有更好的并发性,避免不必要的中间排序和洗牌。T o d ` f B % ( {然而,Impala并不支持UDF,它所能处理的问题也有一定的局限性。Spark具有Hadoop MapReduce的特点,它将Job的中间输出结果保存在内存中,因此不需要读取HDFS。Spark支持内^ * Y G | N存分布式数据集,不仅可以提供交互式查: H W C \询,还可以优化迭代工作负载。Spark是用Scala语言实现的,它使用Scala作+ [ J !为应用框架。与Hadoop不同,Spark和Scak . W H k , \ @la可以紧密集成,其中Scala可以像本地收集对象一样轻松操作分布式数据集。Nutch是一个开源的Java搜索引k ~ Q ) ; *擎。它提供了我们运行自己的搜索引擎所需的所有工具,包括全文搜索和网络爬虫。

Solr是一个用Java编写的全文搜索服务器,运行在Servlet容器(如p s g % _ E S u dApache Tomcat或Jetty)中。它提供了类似Web-service的API接口,用户可以通过httpB H K ) L请求向搜索引擎服务器提交一定格式的XML文件,生成索引。也可以通过Http Get操作进行搜索请求,得到XML格式的返回结果。Elasticsearch是一个开源全文搜索引擎,基于Lu4 $ z , A P (ceh P [ne搜索服务器,能够快速存储、搜索和R U }分析海量数据。它专为云计算而设计,可以实现实时搜索,稳定、可靠、快速,并且易于安装和使用。它还涉及一些机器学习语言。例如,Mahout的主要: f P ` R % x目标是创建一些可扩展的机器学习算法,供开发人员在Apache的许可下免费使用。深度学习框架Caffe,使用数据流图进行数值计算的开源软件库TensorFlow,以及其他常用的机器学习算法,如贝叶斯、逻辑回归、决策树、神经网络、协同过滤等。

服务器服务_大数据技术的核心包括哪些方面?

三、数据采集和预处理

对于来自各种来源的数据,包括移动互联网数据、社交网络数据等。这些海量的结构化+ m p Y n r和非结构化数据是分散的,也就是所谓的数据孤岛。这个时候,这些数据就没有意义了。数据采集就是将这些数据写入数据仓库,将分散的数_ ` w h据整合在一起,对这些数据进行综合分析。数据收集包括文件日志收集、数据库日志收集、关系数据库访问和应用程序访问等。当数据量相对较少时,可以编写一个正则脚本将日志写入存储系统。但是随着数据量的增加,这些方法无法提供数据安全,操作维护难度大,需要更强的解决方案。

作为一个实时日志采集C 4 z 3 q 6 q系统,Flume NG支持在日志系统中定制各种数据发送器进行数据采集,同时对数据进行简单处理后写入各种数据接收器(如text、HDFS、Hbase等)。水槽NG采用三层~ p ]:药剂层、收集器层和储存层,每层均可水平展开。代理包括源、通G B B : ) ~ q z道和接收器。Source用于将数据源消费(收集)到通道组件中,channel作为中间临时存储来存储source的所有组件信息。接收器从通道读取数据,并在成功读取后删除通道中的信息。网易数据运河NDC,字面意思是网易数据运河系统,是一个用于实时数据迁移、同步和订阅结构化数据库的平台解决方案。它集成了网易过去在数据传输领域的各种工具和经验,通过数据链路将单机数据库、分布式数据库、OLAP系统和下游G [ y $ 9应用连接在一起。除了确保高效的数据传输,NDC的设计遵循统一和平台化的理念。

服务器服务_大数据技术的核心包括哪些方面?

Logstash是一( \ l个开源的服务器端数据处理管道,可以同时从N p ! , P多个来源收集和转换数据,然后将数据发送到J i { s您最喜欢的“存储库”。一个常见的存储库是Elasticsearch。Logstash支持. I c m s t q {各种输入选项,可以同时从许多常见的数据源中捕获事件,并且可以以连续流模式轻松地从您的日志、指示器、Web应用程序、数据存储和各种AWS服务中收集数据。Sqoop是一种在关系数据库和Hadoop之间传输数据的工具。它可以将关系数据库(如Mysql和Oracle)中的数据导入Hadoop(如HDFS、Hive和Hbase),也可以将Hadoop(如HDFS、HiveC 7 2 & 6和Hbase)中的数据导入关系数据库(如Mysql和Oracle)。Sqoop使MapReduce作业(容错能力极强的分布式并行o m b D b ; % T计算)能够执行任务。SqoopN { : ! * ) ` ~的另一个优势是,它传输大量结构化或半结构化Q { Z 0 h l数据的过程是完全自动化的。

流媒体计算是行业研究的热点。流计算可以实时清理、聚合和分析多个高吞吐量的数据源,能够快速处理和反馈社交网站、& O f L新闻等存在的数据流。目前有很多大数据流分析工具,比如开源的strom、spark stS . n ~ B ^ : Oreaming等等。Strom集群结构是由一个主节点(nimbus)和多个工作节点(supeP o U # _ C B Y prvi\ ] \ H u = r ^ [sors)组成的主从结构。主节点由配置静态指定,或者在运行时动态选择。nij \ 0 B ) u Nmbus和supervC A V Qisor是Storm提供的后台守护程序,它们之间e \ o . % Q J的通信` $ 9 S 4 4是结合Zookeeper的状态变化通知和监控通知来处理的。nimbus process的主要职责D Y b f o k . i 8是管理、协调和监控集群上运行的拓扑(包括拓扑发布、任务分配、事件处理过程中的任务重新分配等)。在等待nimbus分配任务4 : _ I T 5 ; ? 3后,supervisorN O s d T进程生成并监N ? p ) C x w控由worker(jvm进程)执行的任务。主管和工作人1 s E {员在不同的JVM上运行。如果由R [ v C B主管启动的工作进程由于错误而退出(或被终止),主管将尝试重新生成一个新的工作进程。

服务器服务_大数据技术的核心包括哪些方面?

当使用# 7 @ ;上游模块的数据进行计算、统计和分析时,我们可以使用消息系统,尤其是! { V \分布式消息系统。Scala编写的Kafka是一个基于x w %发布/订阅的分布式消息系统。卡夫卡的设计理O 3 @ + Q 2念之一是同时提供离线处理和实时处理,并将- 0 2 f Y z 9 J数据实时备份到另一个数据中心。卡夫卡可以有许H _ 3 0 / ` R多生产者和消费者共享V I P多个主题,并以主题为单位总结信息。卡夫卡发布消息W ? & F k q I 3 =s * u 8 * p r } M节目叫制作人,也叫制作人,订阅话题消费消息的节目叫消费人,也叫消费者。当Kafka以集群模式运行时,它可以由一个服务或多个服务组成,每个服务称为一个代理。在运行过程中,生产者通过网络向卡夫卡集群发送消息,集群向消费者提供消息。卡夫卡通过动, v 4 * , a物园管理员管_ t .理集群配置,选+ ~ 1 * j举领导者,并在消费群体发生变化时进行再平衡。生产者使用推模式向代理发布v ! O消息,消费者使用拉模式从代理订阅和消费消息。卡夫卡可以和弗鲁姆一起工作。7 r 0 V如果需要将流数据从Kafka传输到hadoop,可以使^ c 9 % `用Flume代理,使用Kafka作为源,这T T t m a S { 1 /样就可以n P o将数据从Kafka读取到Hado5 4 W = Iop。

Zookeeper是一个分布式、g h - R F开源的分布式应用协2 = Y % Z : ! p调服务,提供数据同步服务。它的主\ Y t ] Q ! - y要功能是配置管理、名称服务、分布/ k g Q y m c -式锁和集群管理。配置是指在一个地方对配置进行修改,让所有对这个地方的配置感兴趣的人都可以更改,免去了繁琐的手动复制配置,保证了数t E ) ? H据的可靠性和一致w g ^ w \ n * {性。同时可以通过名称获取资源或服务的地址等信息,监控集群中机器的变化,实现类似心跳机制的功能B S $

服务器服务_大数据技术的核心包括哪些方面?

四、数据可视化

对接一些BI平台,将分析得到的数据可视化,可以用来指导9 u p决策服务。主流BI平台,如敏捷B! R lI Tableau、Qlikview、PowrerBI等。国外,SmallBI和国内新兴的网易等。在上述每个阶段,确保数据安9 R K全都是一个不容忽视的问题。Kerberos是一种基于网络身份验证的协议,用于在不安全的网络中以安Q F 6 C ` $ R全的方式验证个人通信。它允许一个实体在不安全的网络环境中进行通信,并以安{ % a d M r [全的方式向另一个实体证明其身份。控制1 c ) S ,权限的Ranger是一个Hadoop集群权限框架,为操作、监控和管理复杂数据提供权限,它提供了一个集中的管理机制来管理基于纱的Hadoop生态系统中的所有数据权限。它可以对Hive- h N ~、Hbase等Hadoop生态组件进行细粒度的数据5 H Q ` H + K D访问控制。通过操作Ranger控制台,管理员可以轻松配置策略来控制用户对HDF_ j 5 G m 0S文件夹、HDFS文件、数据库、表和字段1 Y \ { l p h的访问。这些策略可以针对不同的用户和组进行设置,权限可以与hadoop无缝对接。

五、数据清理

MapReduce作为Hadoop的查询引擎,用于大规模数据集的并行计算。&ld( C Y 7 { { C k Zquo;地图”和“减少”是它的主要思想。程序员在分布式系; * Q : A I S统中运行程序非常方便,无需分布式并行编程。随着业务数据的增加,需要训练和清理的数据会越来越复杂。此时,需要一个任务调度系统,如oozie或azkaban,来# \ , w O R ^ K r调度和监控关键任务。Oozie是一个面向Hadoop平台的工作流调度引擎,提供RESTful API接口接受M A ( r i q k ]用户的提交请求(提交工作流作业)。提交k C k Q s B Q f c工作流后,工作流引擎负责工作流的执行和状态转换。用户在HDFS上部署作业(MR作业),! 4 c - n X ~然后将工作流提交给Oozie,后者以异步方式将作业(MR作P { A v业)提交给Hadoop。这就是为什么在调用ozie的RESTful接口提交作业后,可以立即返回一个JobId,用户程序不必等待作业执行(因为有些大型作业可能会执行很长时间(几个小时甚至几天)。Oozie将工作流对应的Action异步提交给hadoop,在后台执行。

服务器服务_大数据技术的核心包括哪些方面?

阿兹卡班也是一种工作流控制引擎,可以用来解决hadoop或spark等多个# / A Q l - a离线计算任务之间的依赖问题。阿兹卡班主要由三部分组成:关系1 s W Z n X ( v数据库、阿兹卡班Web服务器和阿兹卡班执行器服务器。阿兹卡班将大部分状态信息保存在MySQL中,阿兹卡班Web Server提供Web UI,这是阿兹卡班的主要管理器,包括工作流执行过程中的项目管理、v I N U ) W O身份验证、调度和监控。阿兹卡班执行器服务器用于调度工作流和任务,记录工作流或任务的日志。计算任务的处理平台Sloth是网易首个自主研发的流媒体计算平台,旨在满足公司各类产品对流媒体计算日益增长的需求。作为一个计算服务平台,它易用、实时、可靠,节省了用户在技术(开发、运维)上的投入,帮助用# # 7 L 1 \ Y户专注于解决产品本身的流媒体计算需求。有不懂的请咨询梦飞云i7 M a o L v 4dc了解。

给TA买糖
共{{data.count}}人
人已赞赏
服务器知识库

服务器安全_什么是分布式拒绝服务攻击(DDOS攻击)?

2021-9-10 16:47:34

服务器知识库

一文了解什么是DDoS攻击|服务器安全服务

2021-9-10 16:49:49

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索