大数据常用哪些数据库

大数据常用哪些数据库,第1张

通常数据库分为关系型数据库和非关系型数据库,关系型数据库的优势到现在也是无可替代的,比如MySQL、SQL Server、Oracle、DB2、SyBase、Informix、PostgreSQL以及比较小型的Access等等数据库,这些数据库支持复杂的SQL *** 作和事务机制,适合小量数据读写场景;但是到了大数据时代,人们更多的数据和物联网加入的数据已经超出了关系数据库的承载范围。大数据时代初期,随着数据请求并发量大不断增大,一般都是采用的集群同步数据的方式处理,就是将数据库分成了很多的小库,每个数据库的数据内容是不变的,都是保存了源数据库的数据副本,通过同步或者异步方式保证数据的一致性,每个库设定特定的读写方式,比如主数据库负责写 *** 作,从数据库是负责读 *** 作,等等根据业务复杂程度以此类推,将业务在物理层面上进行了分离,但是这种方式依旧存在一定的负载压力的问题,企业数据在不断的扩增中,后面就采用分库分表的方式解决,对读写负载进行分离,但是这种实现依旧存在不足,且需要不断进行数据库服务器扩容。 NoSQL数据库大致分为5种类型1、列族数据库:BigTable、HBase、Cassandra、Amazon SimpleDB、HadoopDB等,下面简单介绍几个(1)Cassandra:Cassandra是一个列存储数据库,支持跨数据中心的数据复制。它的数据模型提供列索引,log-structured修改,支持反规范化,实体化视图和嵌入超高速缓存。(2)HBase:Apache Hbase源于Google的Bigtable,是一个开源、分布式、面向列存储的模型。在Hadoop和HDFS之上提供了像Bigtable一样的功能。(3)Amazon SimpleDB:Amazon SimpleDB是一个非关系型数据存储,它卸下数据库管理的工作。开发者使用Web服务请求存储和查询数据项(4)Apache Accumulo:Apache Accumulo的有序的、分布式键值数据存储,基于Google的BigTable设计,建立在Apache Hadoop、Zookeeper和Thrift技术之上。(5)Hypertable:Hypertable是一个开源、可扩展的数据库,模仿Bigtable,支持分片。(6)Azure Tables:Windows Azure Table Storage Service为要求大量非结构化数据存储的应用提供NoSQL性能。表能够自动扩展到TB级别,能通过REST和Managed API访问。2、键值数据库:Redis、SimpleDB、Scalaris、Memcached等,下面简单介绍几个(1)Riak:Riak是一个开源,分布式键值数据库,支持数据复制和容错。(2)Redis:Redis是一个开源的键值存储。支持主从式复制、事务,Pub/Sub、Lua脚本,还支持给Key添加时限。(3)Dynamo:Dynamo是一个键值分布式数据存储。它直接由亚马逊Dynamo数据库实现;在亚马逊S3产品中使用。(4)Oracle NoSQL Database:来自Oracle的键值NoSQL数据库。它支持事务ACID(原子性、一致性、持久性和独立性)和JSON。(5)Oracle NoSQL Database:具备数据备份和分布式键值存储系统。(6)Voldemort:具备数据备份和分布式键值存储系统。(7)Aerospike:Aerospike数据库是一个键值存储,支持混合内存架构,通过强一致性和可调一致性保证数据的完整性。3、文档数据库:MongoDB、CouchDB、Perservere、Terrastore、RavenDB等,下面简单介绍几个(1)MongoDB:开源、面向文档,也是当下最人气的NoSQL数据库。(2)CounchDB:Apache CounchDB是一个使用JSON的文档数据库,使用Javascript做MapReduce查询,以及一个使用HTTP的API。(3)Couchbase:NoSQL文档数据库基于JSON模型。(4)RavenDB:RavenDB是一个基于.NET语言的面向文档数据库。(5)MarkLogic:MarkLogic NoSQL数据库用来存储基于XML和以文档为中心的信息,支持灵活的模式。4、图数据库:Neo4J、InfoGrid、OrientDB、GraphDB,下面简单介绍几个(1)Neo4j:Neo4j是一个图数据库;支持ACID事务(原子性、独立性、持久性和一致性)。(2)InfiniteGraph:一个图数据库用来维持和遍历对象间的关系,支持分布式数据存储。(3)AllegroGraph:AllegroGraph是结合使用了内存和磁盘,提供了高可扩展性,支持SPARQ、RDFS++和Prolog推理。5、内存数据网格:Hazelcast、Oracle Coherence、Terracotta BigMemorry、GemFire、Infinispan、GridGain、GigaSpaces,下面简单介绍几个(1)Hazelcast:Hazelcast CE是一个开源数据分布平台,它允许开发者在数据库集群之上共享和分割数据。(2)Oracle Coherence:Oracle的内存数据网格解决方案提供了常用数据的快速访问能力,一致性支持事务处理能力和数据的动态划分。(3)Terracotta BigMemory:来自Terracotta的分布式内存管理解决方案。这项产品包括一个Ehcache界面、Terracotta管理控制台和BigMemory-Hadoop连接器。(4)GemFire:Vmware vFabric GemFire是一个分布式数据管理平台,也是一个分布式的数据网格平台,支持内存数据管理、复制、划分、数据识别路由和连续查询。(5)Infinispan:Infinispan是一个基于Java的开源键值NoSQL数据存储,和分布式数据节点平台,支持事务,peer-to-peer 及client/server 架构。(6)GridGain:分布式、面向对象、基于内存、SQL+NoSQL键值数据库。支持ACID事务。(7)GigaSpaces:GigaSpaces内存数据网格能够充当应用的记录系统,并支持各种各样的高速缓存场景。

放在很久以前,MySQL是很少受待见的

,而现在MySQL越来越受到重视,包括银行在内的一些系统也会采用MySQL。

放在很久以前,MySQL是很少受待见的

为什么国内绝大多数互联网公司使用的数据库都是MySQL呢?主要原因可以归结为以下这几类:

1、LNMP架构模式的推动

Linux+Nginx+MySQL+PHP这种架构选型在中小型互联网公司使用是最多的,也是最主流的。像淘宝早期也是这种技术选型。因为PHP+MySQL是“黄金搭档”,加上PHP开源框架太多,市场占有率很高,所以也催生了MySQL的发展。

2、大型公司去IOE化的推动:

在以前,一般的不差钱的大型企业在信息化这块的选型较多的就是IOE(IBM小型机AIX系统+Oracle数据库+EMC存储),因为IOE能支撑庞大的业务、很稳定、说出去也是高大尚的。

但是IOE不是一般中小型企业能承担的,IOE的投入巨大。所以在前几年国内不少大型互联网企业称要去IOE化,2013年5月阿里巴巴最后一台IBM小型机下线,2013年07月淘宝广告系统使用的Oracle数据库下线,都是阿里巴巴在去IOE化路上的重要里程碑。

为什么要去IOE呢?IOE的架构模式都是利用小型机和高端存储设备来提供高性能的处理与存储服务,这种架构是集中式的架构(比如将所有的数据集中在一个数据库中),当性能不足时,就通过增加硬件(CPU/内存/磁盘)的方式来提高处理能力,而这种集中式架构不适应当下的大数据需求了。

去IOE的重要实施方案中有一点就是将集中式的Oracle换为分布式的MySQL集群,MySQL可以通过水平扩展来解决性能问题

去IOE的重要实施方案中有一点就是将集中式的Oracle换为分布式的MySQL集群,MySQL可以通过水平扩展来解决性能问题

3、开源免费

较Oracle、SQL

Server而言,MySQL是开源免费的

(虽然MySQL被Oracle了),不像Oracle和SQL

Server是需要商业付费的,而且价格昂贵。

较Oracle、SQL

Server而言,MySQL是开源免费的

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流

~

我是科技领域创作者,欢迎关注我了解更多科技知识!

大数据分析的前瞻性使得很多公司以及企业都开始使用大数据分析对公司的决策做出帮助,而大数据分析是去分析海量的数据,所以就不得不借助一些工具去分析大数据,。一般来说,数据分析工作中都是有很多层次的,这些层次分别是数据存储层、数据报表层、数据分析层、数据展现层。对于不同的层次是有不同的工具进行工作的。下面小编就对大数据分析工具给大家好好介绍一下。

首先我们从数据存储来讲数据分析的工具。我们在分析数据的时候首先需要存储数据,数据的存储是一个非常重要的事情,如果懂得数据库技术,并且能够 *** 作好数据库技术,这就能够提高数据分析的效率。而数据存储的工具主要是以下的工具。

1、MySQL数据库,这个对于部门级或者互联网的数据库应用是必要的,这个时候关键掌握数据库的库结构和SQL语言的数据查询能力。

2、SQL Server的最新版本,对中小企业,一些大型企业也可以采用SQL Server数据库,其实这个时候本身除了数据存储,也包括了数据报表和数据分析了,甚至数据挖掘工具都在其中了。

3、DB2,Oracle数据库都是大型数据库了,主要是企业级,特别是大型企业或者对数据海量存储需求的就是必须的了,一般大型数据库公司都提供非常好的数据整合应用平台

接着说数据报表层。一般来说,当企业存储了数据后,首先要解决报表的问题。解决报表的问题才能够正确的分析好数据库。关于数据报表所用到的数据分析工具就是以下的工具。

1、Crystal Report水晶报表,Bill报表,这都是全球最流行的报表工具,非常规范的报表设计思想,早期商业智能其实大部分人的理解就是报表系统,不借助IT技术人员就可以获取企业各种信息——报表。

2、Tableau软件,这个软件是近年来非常棒的一个软件,当然它已经不是单纯的数据报表软件了,而是更为可视化的数据分析软件,因为很多人经常用它来从数据库中进行报表和可视化分析。

第三说的是数据分析层。这个层其实有很多分析工具,当然我们最常用的就是Excel,我经常用的就是统计分析和数据挖掘工具

1、Excel软件,首先版本越高越好用这是肯定的当然对Excel来讲很多人只是掌握了5%Excel功能,Excel功能非常强大,甚至可以完成所有的统计分析工作!但是我也常说,有能力把Excel玩成统计工具不如专门学会统计软件

2、SPSS软件:当前版本是18,名字也改成了PASW Statistics我从3.0开始Dos环境下编程分析,到现在版本的变迁也可以看出SPSS社会科学统计软件包的变化,从重视医学、化学等开始越来越重视商业分析,现在已经成为了预测分析软件。

最后说表现层的软件。一般来说表现层的软件都是很实用的工具。表现层的软件就是下面提到的内容。

1、PowerPoint软件:大部分人都是用PPT写报告。

2、Visio、SmartDraw软件:这些都是非常好用的流程图、营销图表、地图等,而且从这里可以得到很多零件

3、Swiff Chart软件:制作图表的软件,生成的是Flash


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

原文地址: http://outofmemory.cn/zaji/7199040.html

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

发表评论

登录后才能评论

评论列表(0条)

保存