横截面数据和面板数据

大数据是一个用于数据集的术语,其大小超出了常用软件工具在可容忍的经过时间内捕获,管理和处理数据的能力。 大数据大小是一个不断变化的目标,目前单个数据集中的数据范围从几十TB到许多PB。

IDC估计,到2011年,数字宇宙将达到1.8 ZB。

Zettabyte有多大? 这是十亿兆字节。 当前的世界人口为70亿,也就是说,如果您为地球上的每个人提供2500亿GB的硬盘,仍然无法满足存储需求。

许多来源促成大量数据……

1.纽约证券交易所每天产生大约1 TB的新交易数据。
2. Facebook托管约100亿张照片,占用1 PB的存储空间。
3.家谱网站Ancestry.com大约存储2.5 PB的数据。 4. Internet档案存储大约2 PB的数据,并且以每月20 TB的速度增长。 5.日内瓦附近的大型Hard Collider对撞机每年将产生约15 PB的数据。 6.每天人们从传感器,移动设备,在线交易和社交网络创建相当于2.5万亿字节的数据。

Facebook,雅虎! Google发现自己正在以前所未有的规模收集数据。 他们是第一批从数百万用户收集大量数据的大型公司。

他们很快使传统的数据系统和技术(如Oracle和MySql)不堪重负。 即使是使用最大硬件的最好,最昂贵的供应商也几乎无法跟上,当然也无法为他们提供有效分析其数据流入的工具。

在2000年代初期,他们开发了MapReduce , BigTable和Google File System等新技术来处理其大数据。 最初,这些技术是专有的。 但是他们意识到,将这些概念公开化,同时将实现隐藏起来,将使它们受益–因为更多的人将为这些做出贡献,并且所雇用的毕业生将在加入之前对其有很好的了解。

在2004/2005年左右,Facebook,Yahoo! Google开始分享描述其大数据技术的研究论文。

Google在2004年发表了研究论文“ MapReduce:大型集群上的简化数据处理”。

MapReduce是用于处理和生成大型数据集的编程模型以及相关的实现。 用户指定一个处理键/值对以生成一组中间键/值对的映射函数,以及一个归约函数,该归约函数合并与同一中间键关联的所有中间值。 许多现实世界的任务是表达在这个模型中,如图此文件。

以这种功能风格编写的程序会自动并行化,并在大型商用机器集群上执行。 运行时系统负责划分输入数据,安排程序在一组机器上的执行,处理机器故障以及管理所需的机器间通信的细节。 这使没有并行和分布式系统经验的程序员可以轻松利用大型分布式系统的资源。 Google的MapReduce实施可在大型商用机器集群上运行,并且具有高度可扩展性。

典型的MapReduce计算在数千台计算机上处​​理许多TB的数据。 程序员和系统易于使用。 现已实施了数百个MapReduce程序,每天在Google的集群上执行多达一千个MapReduce作业。

Doug Cutting曾在Nutch (一个开源搜索技术项目​​,现在由Apache Software Foundation管理)工作,他读过Google发表的这篇论文,以及Google发表的有关Google分布式文件系统[GFS]的另一篇论文 。 他认为GFS将解决他们的存储需求,而MapReduce将解决他们在Nutch以及实施MapReduce和GFS时遇到的扩展问题。 他们将Nutch的GFS实现命名为Nutch分布式文件系统[NDFS]。

Nutch的NDFS和MapReduce实施适用于搜索领域之外,并于2006年2月从Nutch移出,形成了Lucene的独立子项目Hadoop和NDFS,成为HDFS [Hadoop分布式文件系统] –这是一种实现GFS。 在同一时间Yahoo! 扩展了对Hadoop的支持,并雇用了Doug Cutting。

从高层次上讲,这就是HDFS的工作方式。 假设我们有一个300 MB的文件。 [Hadoop在PB和TB的文件中也做得非常好。] HDFS要做的第一件事是将其拆分为块。 目前,HDFS上的默认块大小为128 MB。 拆分为块后,我们将有两个128 MB的块和另一个44 MB的块。 现在,HDFS将使每个块的[n]个数量可以配置为[n]个,例如,n为三个。 HDFS现在将这些副本存储在HDFS群集的不同DataNode中。 我们还有一个NameNode,用于跟踪副本和DataNode。 NameNode知道给定副本所在的位置–每当它检测到给定副本已损坏[DataNode继续在副本上运行校验和]或相应的HDFS节点为dowm时,它将查找该副本在群集中的其他位置,并告诉其他节点'n'X复制副本。 NameNode是一个单点故障–并且两个避免了我们可以拥有与主要节点同步的辅助NameNode-并且当主要节点发生故障时-辅助节点可以控制。 Hadoop项目目前正在实施分布式NameNode。

Google于2006年再次发表了另一篇有关“大表:结构化数据的分布式存储系统”的论文。

Bigtable是用于管理结构化数据的分布式存储系统,该系统旨在跨数千个商用服务器扩展到非常大的PB级数据。 Google的许多项目都将数据存储在Bigtable中,包括Web索引,Google Earth和Google Finance。 这些应用程序在数据大小(从URL到网页到卫星图像)和延迟要求(从后端批量处理到实时数据服务)方面对Bigtable提出了截然不同的要求。 尽管需求千差万别,Bigtable已成功为所有这些Google产品提供了一种灵活的高性能解决方案。 该文描述了Bigtable的,这给客户带来了数据的布局和格式的动态控制提供简单的数据模型,并介绍了Bigtable的设计和实施。

BigTable将两个任意字符串值(行键和列键)和时间戳(因此为三维映射)映射到关联的任意字节数组中。 它不是关系数据库,可以更好地定义为稀疏的分布式多维排序图。

基本上,BigTable讨论了如何在GFS之上构建分布式数据存储。

Hadoop的HBase是BigTable的实现。 HBase是一个分布式的,面向列的数据库,它使用HDFS作为其基础存储,并支持使用MapReduce的批处理式计算和点查询。

亚马逊在2007年发表了有关“发电机:亚马逊的高可用键值商店”的研究论文。

Dynamo是一个高度可用的键值存储系统,Amazon的某些核心服务使用该系统提供“始终在线”的体验。 Apache Cassandra —结合了Dynamo的完全分布式设计和BigTable的数据模型,并用Java编写–由Facebook在2008年开源。这是一种NoSQL解决方案,最初由Facebook开发,并一直支持其收件箱搜索功能,直到2010年末。 Cassandra的最初开发工作由两名从亚马逊招聘到Facebook的Dynamo工程师完成。 但是,Facebook在2010年底放弃了Cassandra,当时他们在HBase上构建了Facebook Messaging平台。

此外,除了使用BigTable的建模方式外,它还具有最终一致性,Gossip协议等属性,该属性是一种服务于受Amazon Dynamo启发的读写请求的主从方式。 重要属性之一是“最终一致性”,这意味着在给定足够长的时间不发送任何更改的情况下,可以预期所有更新最终都会在系统中传播,并且所有副本都是一致的。

在谈论Cassandra时,我使用了“ NoSQL”一词。 NoSQL(有时扩展为“不仅限于SQL”)是一类广泛的数据库管理系统,在某些重要方面与关系数据库管理系统(RDBMS)的经典模型有所不同。 这些数据存储区可能不需要固定的表架构,通常避免联接操作,并且通常水平扩展。

实际上,“ NoSQL”这个名称实际上是在1998年由Carlo Strozzi最初使用的,它是他正在开发的基于文件的数据库的名称。 具有讽刺意味的是,它只是一个没有SQL接口的关系数据库。 这个术语在2009年重新出现,当时Eric Evans用它来命名非关系数据库中的当前激增。

NoSQL数据库分为四类。

1.键值存储:这是基于Amazon的Dynamo论文。
2. ColumnFamily / BigTable克隆:示例包括HBase,Cassandra
3.文档数据库:示例包括CouchDB,MongoDB 4.图形数据库:例如AllegroGrapgh,Neo4j

根据Marin Dimitrov的说法,以下是NoSQL数据库的用例-换句话说,以下是关系数据库运行不佳的情况。

1.海量数据
2.极端查询量
3.模式演变

借助NoSQL,我们获得了诸如大规模可伸缩性,高可用性,更低的成本(与同级别的竞争解决方案相比),可预测的弹性和架构灵活性等优势。

对于应用程序程序员而言,关系数据库和Cassandra之间的主要区别在于它的数据模型 -基于BigTable。 Cassandra数据模型是为大规模分布的数据而设计的。 它以符合ACID的数据惯例进行交易,以获取性能,可用性和运营可管理性方面的重要优势。

如果您想将Cassandra与HBase进行比较,那么这是一个很好的选择。 HBase与Cassandra的另一场辩论在这里 。

参考文献:

  • 来自JCG合作伙伴 的BIG数据的小横截面   Facile登录博客上的Prabath Siriwardena。
  • MapReduce:大型集群上的简化数据处理
  • Bigtable:用于结构化数据的分布式存储系统
  • Dynamo:亚马逊的高可用键值存储
  • Hadoop分布式文件系统
  • ZooKeeper:Internet级系统的无等待协调
  • Hadoop / MapReduce / HBase框架及其在生物信息学中的当前应用概述
  • Cassandra –分散式结构化存储系统
  • NOSQL模式
  • 具有Cassandra和HBase的BigTable模型
  • LinkedIn技术讲座:Apache Hadoop – PB和TB
  • O'Reilly网络广播:Hadoop简介
  • Google开发人员日:MapReduce
  • WSO2Con 2011 –小组:数据,无处不在的数据:大,小,私有,共享,公共等等
  • 使用Apache Cassandra扩展
  • HBase vs Cassandra:我们为什么搬家
  • NoSQL简史

翻译自: https://www.javacodegeeks.com/2012/03/small-cross-section-of-big-data.html

横截面数据和面板数据

横截面数据和面板数据_大数据的小横截面相关推荐

  1. 数据的四大特征_大数据

    数据的四大特征_大数据 我们总是在谈数据分析,数据分析什么的,那我们现在先不谈数据分析,我们先来谈谈数据分析的基础--数据.那么到底什么是数据,数据有什么特征呢?这个问题虽基础却重要. 这里我们所说的 ...

  2. 大数据介绍项目流程_大数据介绍

    大数据介绍项目流程 About Big Data 关于大数据 什么是大数据?(What is Big Data?) In modern world, there are many big proble ...

  3. 大数据项目一般金额多少_大数据分析师年薪一般多少?学什么专业才能从事大数据?...

    近几年,大数据为各个领域带来了全新的变革,大数据的重要性越来越被企业和国家所看到,大数据工作者的需求再次被无限放大,他们的薪资和社会地位也在不断上涨.马云在演讲中就提到,未来的时代将不是IT时代,而是 ...

  4. 大数据 智能交通调度_大数据技术在智能交通中的应用

    龙源期刊网 http://www.qikan.com.cn 大数据技术在智能交通中的应用 作者:庄斌 来源:<名城绘> 2018 年第 04 期 摘要:随着时代的发展和社会需求变化,现代智 ...

  5. 大数据平台容量评估_大数据平台

    系统概述 大数据应用支撑平台提供数据支撑服务,对外发布数据服务进行数据价值变现.包含数据采集.数据治理.数据交换.数据存储.数据计算相关组件的搭建.验证,并建立大数据仓库. b)功能要求 1.数据采集 ...

  6. 5000字 大数据时代读书笔记_大数据时代 读书笔记

    大数据时代 维克托·迈尔·舍恩伯格 首先作者抛出了大数据时代处理数据理念上的三大转变:  要全体不要抽样. 首先,要分析与某事物相关的所有数据,而不是依 靠分析少量的数据样本.全数据模式,样本 = ...

  7. 大数据项目开发案例_大数据开发相关术语解析

    Java['dʒɑːvə] 当前软件开发行业应用最广.就业量最大的编程语言,在各类编程语言排行榜长期位列第一.是企业软件开发的首选语言,也是Android系统的开发语言. Java吸取了C++语言的众 ...

  8. 大数据薪水大概多少_大数据工程师工资待遇一般多少?高吗

    对于计划学习大数据的人来说,可能最关心的问题就是工作后的薪资待遇了,毕竟学习大数据技术就是为了工作就业,所以学习者关心工资问题非常能理解,那么大数据工程师工资待遇高吗?能拿多少呢?到达是个什么水平呢? ...

  9. 大数据薪水大概多少_大数据工程师工资一般多少钱

    大数据热度不减,大家最关注的还是大数据工程师的工资待遇,在咨询课程前都会问这样的问题:大数据工程师拿多少工资?我国大数据人才缺口大,这是大数据工资收入提升的一个条件,另一个就是其岗位分不同工资待遇也会 ...

  10. 5000字 大数据时代读书笔记_大数据时代读书笔记

    大数据时代读书笔记 [篇一:大数据时代读书笔记] 大数据时代 -- 读书笔记 一.引论 1. 大数据时代的三个转变: 1. 可以分析更多的数据,处理和某个现象相关的所有数据,而不是 随机采样 2. 不 ...

最新文章

  1. [LeetCode]题解(python):153-Find Minimum in Rotated Sorted Array
  2. 递归算法小结(数的阶乘、斐波那契和汉诺塔问题)
  3. 外挂学习之路(8)--- 释放技能call
  4. python subprocess-更优雅的创建子进程
  5. 【一类题】二维数点的几个做法
  6. 网络时代:我只是一个用户
  7. python和java语言的区别
  8. 计算机知识体系图谱总结
  9. php 个人中心常见界面,UI设计灵感:个人中心界面设计(User Profile)
  10. linux shell中$0,$?,$!等的特殊用法
  11. 德鲁克:终生难忘的7堂课
  12. 服务器mdl文件转换,Simulink Project 中 MDL 到 SLX 模型文件格式的转换
  13. 局域网计算机维护工具,局域网共享工具,教您局域网共享工具
  14. c语言 ctype 下一字母,LC_CTYPE - [ C语言中文开发手册 ] - 在线原生手册 - php中文网...
  15. 正则表达式与文件格式处理-Linux(笔记)
  16. [精简]托福核心词汇60
  17. TYVJ-P1035 棋盘覆盖
  18. 供应商寄售过程的实现
  19. 可乐瓶游戏c语言,大班活动玩可乐瓶教案
  20. 免费CDN和网站速度测试工具

热门文章

  1. 磁盘分区4K未对齐的解决方案
  2. python猴子分桃_用python实现【五猴分桃】问题
  3. 从零开始 荔枝派nano TF卡启动
  4. FTP Entering Extended Passive Mode
  5. c#非标自动化通讯库,工业自动软件必备的基本程序
  6. Windows msys2 下编译FFmpeg并实现x265依赖
  7. Vue 定义全局css文件
  8. 小程序常见的问题你一定遇到过!
  9. Linux 中 link 链接命令
  10. 图论基础(自认为很全)