
通常数据库分为关系型数据库和非关系型数据库,关系型数据库的优势到现在也是无可替代的,比如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内存数据网格能够充当应用的记录系统,并支持各种各样的高速缓存场景。
大数据:
大数据(big data),是指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合。
在维克托·迈尔-舍恩伯格及肯尼斯·库克耶编写的《大数据时代》中大数据指不用随机分析法(抽样调查)这样的捷径,而采用所有数据进行分析处理。大数据的4V特点:Volume(大量)、Velocity(高速)、Variety(多样)、Value(价值)。
对于“大数据”(Big data)研究机构Gartner给出了这样的定义。“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
根据维基百科的定义,大数据是指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合。
大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换言之,如果把大数据比作一种产业,那么这种产业实现盈利的关键,在于提高对数据的“加工能力”,通过“加工”实现数据的“增值”。
从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。它的特色在于对海量数据进行分布式数据挖掘,但它必须依托云计算的分布式处理、分布式数据库和云存储、虚拟化技术。[1]
随着云时代的来临,大数据(Big data)也吸引了越来越多的关注。《著云台》的分析师团队认为,大数据(Big data)通常用来形容一个公司创造的大量非结构化数据和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十、数百或甚至数千的电脑分配工作。
大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘电网、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。
最小的基本单位是bit,按顺序给出所有单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。
意义:
有人把数据比喻为蕴[4] 藏能量的煤矿。煤炭按照性质有焦煤、无烟煤、肥煤、贫煤等分类,而露天煤矿、深山煤矿的挖掘成本又不一样。与此类似,大数据并不在“大”,而在于“有用”。价值含量、挖掘成本比数量更为重要。对于很多行业而言,如何利用这些大规模数据是成为赢得竞争的关键。
大数据的价值体现在以下几个方面:
1)对大量消费者提供产品或服务的企业可以利用大数据进行精准营销;
2) 做小而美模式的中长尾企业可以利用大数据做服务转型;
3) 面临互联网压力之下必须转型的传统企业需要与时俱进充分利用大数据的价值。
照你的需求来看,可以有两种方式,一种是分表,另一种是分区 首先是分表,就像你自己所说的,可以按月分表,可以按用户ID分表等等,至于采用哪种方式分表,要看你的业务逻辑了,分表不好的地方就是查询有时候需要跨多个表。 然后是分区,分区可以将表分离在若干不同的表空间上,用分而治之的方法来支撑无限膨胀的大表,给大表在物理一级的可管理性。将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。分区的好处是分区的优点: 1 增强可用性:如果表的一个分区由于系统故障而不能使用,表的其余好的分区仍然可以使用; 2 减少关闭时间:如果系统故障只影响表的一部分分区,那么只有这部分分区需要修复,故能比整个大表修复花的时间更少; 3 维护轻松:如果需要重建表,独立管理每个分区比管理单个大表要轻松得多; 4 均衡I/O:可以把表的不同分区分配到不同的磁盘来平衡I/O改善性能; 5 改善性能:对大表的查询、增加、修改等 *** 作可以分解到表的不同分区来并行执行,可使运行速度更快; 6 分区对用户透明,最终用户感觉不到分区的存在。
该如何用好大数据
近一两年来,大数据是一个被频繁提及的词汇。不管是近几天麻涌举行的五矿物流麻涌基地发布会上,还是在智博会配套活动中国(东莞)云计算高峰论坛上,越来越多的企业和研究者对大数据产生了非常浓厚的兴趣。越来越多的东莞企业表示想要做好大数据运营,但是,大数据要用好并不容易。
大数据是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。大数据技术,是指从各种各样类型的数据中,快速获得有价值信息的能力。
大数据听起来似乎很高深,但其实已经渗透到人们生活的方方面面。例如一个消费者在淘宝上搜索了泳镜,接下来他在打开许多网站时都会看到游泳衣、游泳圈等相关产品的广告。这,就是当前大数据营销的一个典型应用场景。
前不久,陈国良和石钟慈两名专门研究云计算和大数据的工程院院士在东莞进行了一次大数据的知识普及讲座。
据陈国良院士介绍,2012年3月,美国总统奥巴马在一次研究计划上提出了大数据概念。“大数据”的说法由此被全球范围采用,而在此前,国内的研究者一般称其为天文数据、海量数据或者巨量数据。不管是物联网设备的传感器、科学研究还是人们的日常生活,都会产生大量的数据。而善于用好大数据技术,则可以从这些数据中挖到“黄金”。
不过,陈国良也表示,大数据的结果很有价值,但千万不能陷入大数据独裁主义,人,才是大数据的第一要素。当然,要求所有企业都具有大数据分析能力。
陈国良所说的大数据分析能力,便是大数据的组成部分。随着大数据的应用日渐广泛,影响日渐深远,大数据思维的重要性也日渐显著。
大数据思维,就是能够正确利用好大数据的思维方式。大数据并不是指任何决策都参考数据,也不是要求所有问题都足够精准,更不是花巨资打造大数据系统或平台,而是在应该让大数据出场的地方把大数据用好。
要用好大数据,首先应该采集大数据。与传统的调查问卷等搜集信息数据的方式不同,互联网时代的大数据采集是“无限的、无意识的、非结构化的”数据采集。各种纷繁复杂的行为数据以行为日志的形式上传到服务器中,随用随取。此外,分析数据使用了专门的数据模型。最值得一提的是,大数据可以根据营销、决策等特定问题,从数据库中调取海量数据进行挖掘以完成数据验证,甚至可以得出与常识或经验判断完全相异的结论出来。
不少业内人士表示,很多时候,大数据的价值正是体现在这样与直观判断大相径庭的地方。对此,陈国良也表示,“大数据分析结果有时候没有理论支撑甚至无法证明,不过分析仍然有效,技术仍然在发展!”陈国良还为东莞有意进行大数据挖掘的企业支招说,大数据的获取,不能依靠随机采样,也不能强求精确性,甚至分析结果也难以解释其所以然,不过能用就好,以后可以慢慢再弄清其中的科学原因。
业内人士分析说,大数据的应用领域正在逐步增加。一方面,东莞企业可以通过大数据对用户行为与特征作出分析。通过大量数据可以分析出用户的喜好与购买习惯,甚至做到“比用户更了解用户自己”。此外,通过大数据可以支撑精准营销信息推送。让最精确的信息传递到正好匹配的客户手中。
另外,通过大数据可以让营销活动能够与用户能够产生“会心一击”的效果,这种基于海量数据的挖掘和匹配实现的精准信息,能够让企业有效地取得客户的欢心。
在陈国良眼中,云计算、物联网以及大数据是三位一体的,伴随着万物互联的趋势以及云计算逐步变得更加方便易得,价格低廉,大数据的应用场景以及应用的经济类型也都将得到进一步的加强。
以上就是关于大数据常用哪些数据库(什么是大数据库)全部的内容,包括:大数据常用哪些数据库(什么是大数据库)、什么是大数据,大数据为什么重要,如何应用大数据、利用MySQL数据库如何解决大数据量存储问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)