大数据核心技术有哪些

大数据核心技术有哪些,第1张

大数据技术的体系庞大且复杂,基础的技术包含数据的采集、数据预处理、分布式存储、数据库、数据仓库、机器学习、并行计算、可视化等。

1、数据采集与预处理:FlumeNG实时日志收集系统,支持在日志系统中定制各类数据发送方,用于收集数据;Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,提供数据同步服务。

2、数据存储:Hadoop作为一个开源的框架,专为离线和大规模数据分析而设计,HDFS作为其核心的存储引擎,已被广泛用于数据存储。HBase,是一个分布式的、面向列的开源数据库,可以认为是hdfs的封装,本质是数据存储、NoSQL数据库。

3、数据清洗:MapReduce作为Hadoop的查询引擎,用于大规模数据集的并行计算。

4、数据查询分析:Hive的核心工作就是把SQL语句翻译成MR程序,可以将结构化的数据映射为一张数据库表,并提供HQL(HiveSQL)查询功能。Spark启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。

5、数据可视化:对接一些BI平台,将分析得到的数据进行可视化,用于指导决策服务。

通常数据库分为关系型数据库和非关系型数据库,关系型数据库的优势到现在也是无可替代的,比如MySQL、SQLServer、Oracle、DB2、SyBase、Informix、PostgreSQL以及比较小型的Aess等等数据库,这些数据库支持复杂的SQL *** 作和事务机制,适合小量数据读写场景;但是到了大数据时代,人们更多的数据和物联网加入的数据已经超出了关系数据库的承载范围。

大数据时代初期,随着数据请求并发量大不断增大,一般都是采用的集群同步数据的方式处理,就是将数据库分成了很多的小库,每个数据库的数据内容是不变的,都是保存了源数据库的数据副本,通过同步或者异步方式保证数据的一致性,每个库设定特定的读写方式,比如主数据库负责写 *** 作,从数据库是负责读 *** 作,等等根据业务复杂程度以此类推,将业务在物理层面上进行了分离,但是这种方式依旧存在一定的负载压力的问题,企业数据在不断的扩增中,后面就采用分库分表的方式解决,对读写负载进行分离,但是这种实现依旧存在不足,且需要不断进行数据库服务器扩容。

NoSQL数据库大致分为5种类型

1、列族数据库:BigTable、HBase、Cassandra、AmazonSimpleDB、HadoopDB等,下面简单介绍几个

(1)Cassandra:Cassandra是一个列存储数据库,支持跨数据中心的数据复制。它的数据模型提供列索引,log-structured修改,支持反规范化,实体化视图和嵌入超高速缓存。

(2)HBase:ApacheHbase源于Google的Bigtable,是一个开源、分布式、面向列存储的模型。在Hadoop和HDFS之上提供了像Bigtable一样的功能。

(3)AmazonSimpleDB:AmazonSimpleDB是一个非关系型数据存储,它卸下数据库管理的工作。开发者使用Web服务请求存储和查询数据项

(4)ApacheAumulo:ApacheAumulo的有序的、分布式键值数据存储,基于Google的BigTable设计,建立在ApacheHadoop、Zookeeper和Thrift技术之上。

(5)Hypertable:Hypertable是一个开源、可扩展的数据库,模仿Bigtable,支持分片。

(6)AzureTables:WindowsAzureTableStorageService为要求大量非结构化数据存储的应用提供NoSQL性能。表能够自动扩展到TB级别,能通过REST和ManagedAPI访问。

2、键值数据库:Redis、SimpleDB、Scalaris、Memcached等,下面简单介绍几个

(1)Riak:Riak是一个开源,分布式键值数据库,支持数据复制和容错。(2)Redis:Redis是一个开源的键值存储。支持主从式复制、事务,Pub/Sub、Lua脚本,还支持给Key添加时限。

(3)Dynamo:Dynamo是一个键值分布式数据存储。它直接由亚马逊Dynamo数据库实现;在亚马逊S3产品中使用。

(4)OracleNoSQLDatabase:来自Oracle的键值NoSQL数据库。它支持事务ACID(原子性、一致性、持久性和独立性)和JSON。

(5)OracleNoSQLDatabase:具备数据备份和分布式键值存储系统。

(6)Voldemort:具备数据备份和分布式键值存储系统。

(7)Aerospike:Aerospike数据库是一个键值存储,支持混合内存架构,通过强一致性和可调一致性保证数据的完整性。

3、文档数据库:MongoDB、CouchDB、Perservere、Terrastore、RavenDB等,下面简单介绍几个

(1)MongoDB:开源、面向文档,也是当下最人气的NoSQL数据库。

(2)CounchDB:ApacheCounchDB是一个使用JSON的文档数据库,使用Javascript做MapRece查询,以及一个使用>

(3)Couchbase:NoSQL文档数据库基于JSON模型。

(4)RavenDB:RavenDB是一个基于NET语言的面向文档数据库。

(5)MarkLogic:MarkLogicNoSQL数据库用来存储基于XML和以文档为中心的信息,支持灵活的模式。

4、图数据库:Neo4J、InfoGrid、OrientDB、GraphDB,下面简单介绍几个

(1)Neo4j:Neo4j是一个图数据库;支持ACID事务(原子性、独立性、持久性和一致性)。

(2):一个图数据库用来维持和遍历对象间的关系,支持分布式数据存储。

(3):是结合使用了内存和磁盘,提供了高可扩展性,支持SPARQ、RDFS和Prolog推理。

5、内存数据网格:Hazelcast、OracleCoherence、TerracottaBigMemorry、GemFire、Infinispan、GridGain、GigaSpaces,下面简单介绍几个

(1)Hazelcast:HazelcastCE是一个开源数据分布平台,它允许开发者在数据库集群之上共享和分割数据。

(2)OracleCoherence:Oracle的内存数据网格解决方案提供了常用数据的快速访问能力,一致性支持事务处理能力和数据的动态划分。

(3)TerracottaBigMemory:来自Terracotta的分布式内存管理解决方案。这项产品包括一个Ehcache界面、Terracotta管理控制台和BigMemory-Hadoop连接器。

(4)GemFire:VmwarevFabricGemFire是一个分布式数据管理平台,也是一个分布式的数据网格平台,支持内存数据管理、复制、划分、数据识别路由和连续查询。

(5)Infinispan:Infinispan是一个基于Java的开源键值NoSQL数据存储,和分布式数据节点平台,支持事务,peer-to-peer及client/server架构。

(6)GridGain:分布式、面向对象、基于内存、SQLNoSQL键值数据库。支持ACID事务。

(7)GigaSpaces:GigaSpaces内存数据网格能够充当应用的记录系统,并支持各种各样的高速缓存场景。

大数据技术层面主要分为这几层

 1 预测分析技术

这也是大数据的主要功能之一。预测分析允许公司通过分析大数据源来发现、评估、优化和部署预测模型,从而提高业务性能或降低风险。同时,大数据的预测分析也与我们的生活息息相关。淘宝会预测你每次购物可能还想买什么,爱奇艺正在预测你可能想看什么,百合网和其他约会网站甚至试图预测你会爱上谁……

2 NoSQL数据库

NoSQL,Not Only SQL,意思是“不仅仅是SQL”,泛指非关系型数据库。NoSQL数据库提供了比关系数据库更灵活、可伸缩和更便宜的替代方案,打破了传统数据库市场一统江山的格局。并且,NoSQL数据库能够更好地处理大数据应用的需求。常见的NoSQL数据库有HBase、Redis、MongoDB、Couchbase、LevelDB等。

3 搜索和知识发现

支持来自于多种数据源(如文件系统、数据库、流、api和其他平台和应用程序)中的大型非结构化和结构化数据存储库中自助提取信息的工具和技术。如,数据挖掘技术和各种大数据平台。

4 大数据流计算引擎

能够过滤、聚合、丰富和分析来自多个完全不同的活动数据源的数据的高吞吐量的框架,可以采用任何数据格式。现今流行的流式计算引擎有Spark Streaming和Flink。

5 内存数据结构

通过在分布式计算机系统中动态随机访问内存(DRAM)、闪存或SSD上分布数据,提供低延迟的访问和处理大量数据。

6 分布式文件存储

为了保证文件的可靠性和存取性能,数据通常以副本的方式存储在多个节点上的计算机网络。常见的分布式文件系统有GFS、HDFS、Lustre 、Ceph等。

7 数据虚拟化

数据虚拟化是一种数据管理方法,它允许应用程序检索和 *** 作数据,而不需要关心有关数据的技术细节,比如数据在源文件中是何种格式,或者数据存储的物理位置,并且可以提供单个客户用户视图。

8 数据集成

用于跨解决方案进行数据编排的工具,如Amazon Elastic MapReduce (EMR)、Apache Hive、Apache Pig、Apache Spark、MapReduce、Couchbase、Hadoop和MongoDB等。

9 数据准备

减轻采购、成形、清理和共享各种杂乱数据集的负担的软件,以加速数据对分析的有用性。

10 数据质量

使用分布式数据存储和数据库上的并行 *** 作,对大型高速数据集进行数据清理和充实的产品。

以上就是关于大数据核心技术有哪些全部的内容,包括:大数据核心技术有哪些、大数据常用哪些数据库(什么是大数据库)、大数据从技术层面分为那几层,每一层有什么功能等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9720667.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存