大数据资源整理.docx
《大数据资源整理.docx》由会员分享,可在线阅读,更多相关《大数据资源整理.docx(25页珍藏版)》请在冰豆网上搜索。
大数据资源整理
最全大数据学习资源整理
超人学院
MySQL:
世界最流行的开源数据库;
PostgreSQL:
世界最先进的开源数据库;
Oracle数据库:
对象-关系型数据库管理系统。
框架
ApacheHadoop:
分布式处理架构,结合了MapReduce(并行处理)、YARN(作业调度)和HDFS(分布式文件系统);
Tigon:
高吞吐量实时流处理框架。
分布式编程
AddThisHydra:
最初在AddThis上开发的分布式数据处理和存储系统;
AMPLabSIMR:
用在HadoopMapReducev1上运行Spark;
ApacheBeam:
为统一的模型以及一套用于定义和执行数据处理工作流的特定SDK语言;
ApacheCrunch:
一个简单的JavaAPI,用于执行在普通的MapReduce实现时比较单调的连接、数据聚合等任务;
ApacheDataFu:
由LinkedIn开发的针对Hadoopand和Pig的用户定义的函数集合;
ApacheFlink:
具有高性能的执行时间和自动程序优化;
ApacheGora:
内存中的数据模型和持久性框架;
ApacheHama:
BSP(整体同步并行)计算框架;
ApacheMapReduce:
在集群上使用并行、分布式算法处理大数据集的编程模型;
ApachePig:
Hadoop中,用于处理数据分析程序的高级查询语言;
ApacheREEF:
用来简化和统一低层大数据系统的保留性评估执行框架;
ApacheS4:
S4中流处理与实现的框架;
ApacheSpark:
内存集群计算框架;
ApacheSparkStreaming:
流处理框架,同时是Spark的一部分;
ApacheStorm:
Twitter流处理框架,也可用于YARN;
ApacheSamza:
基于Kafka和YARN的流处理框架;
ApacheTez:
基于YARN,用于执行任务中的复杂DAG(有向无环图);
ApacheTwill:
基于YARN的抽象概念,用于减少开发分布式应用程序的复杂度;
Cascalog:
数据处理和查询库;
Cheetah:
在MapReduce之上的高性能、自定义数据仓库;
ConcurrentCascading:
在Hadoop上的数据管理/分析框架;
DamballaParkour:
用于Clojure的MapReduce库;
DatasaltPangool:
可选择的MapReduce范例;
DataTorrentStrAM:
为实时引擎,用于以尽可能畅通的方式、最小的开支和对性能最小的影响,实现分布式、异步、实时的内存大数据计算;
FacebookCorona:
为Hadoop做优化处理,从而消除单点故障;
FacebookPeregrine:
MapReduce框架;
FacebookScuba:
分布式内存数据存储;
GoogleDataflow:
创建数据管道,以帮助其分析框架;
NetflixPigPen:
为MapReduce,用于编译成ApachePig;
NokiaDisco:
由Nokia开发的MapReduc获取、转换和分析数据;
GoogleMapReduce:
MapReduce框架;
GoogleMillWheel:
容错流处理框架;
JAQL:
用于处理结构化、半结构化和非结构化数据工作的声明性编程语言;
Kite:
为一组库、工具、实例和文档集,用于使在Hadoop的生态系统上建立系统更加容易;
MetamarketsDruid:
用于大数据集的实时e框架;
Onyx:
分布式云计算;
PinterestPinlater:
异步任务执行系统;
Pydoop:
用于Hadoop的PythonMapReduce和HDFSAPI;
RackerlabsBlueflood:
多租户分布式测度处理系统;
Stratosphere:
通用集群计算框架;
Streamdrill:
用于计算基于不同时间窗口的事件流的活动,并找到最活跃的一个;
Tuktu:
易于使用的用于分批处理和流计算的平台,通过Scala、Akka和Play所建;
TwitterScalding:
基于Cascading,用于MapReduce工作的Scala库;
TwitterSummingbird:
在Twitter上使用Scalding和Storm串流MapReduce;
TwitterTSAR:
Twitter上的时间序列聚合器。
分布式文件系统
ApacheHDFS:
在多台机器上存储大型文件的方式;
BeeGFS:
以前是FhGFS,并行分布式文件系统;
CephFilesystem:
设计的软件存储平台;
DiscoDDFS:
分布式文件系统;
FacebookHaystack:
对象存储系统;
GoogleColossus:
分布式文件系统(GFS2);
GoogleGFS:
分布式文件系统;
GoogleMegastore:
可扩展的、高度可用的存储;
GridGain:
兼容GGFS、Hadoop内存的文件系统;
Lustrefilesystem:
高性能分布式文件系统;
QuantcastFileSystemQFS:
开源分布式文件系统;
RedHatGlusterFS:
向外扩展的附网存储(Network-attachedStorage)文件系统;
Seaweed-FS:
简单的、高度可扩展的分布式文件系统;
Alluxio:
以可靠的存储速率在跨集群框架上文件共享;
Tahoe-LAFS:
分布式云存储系统;
文件数据模型
ActianVersant:
商用的面向对象数据库管理系统;
CrateData:
是一个开源的大规模可扩展的数据存储,需要零管理模式;
FacebookApollo:
Facebook的Paxos算法,类似于NoSQL数据库;
jumboDB:
基于Hadoop的面向文档的数据存储;
LinkedInEspresso:
可横向扩展的面向文档的NoSQL数据存储;
MarkLogic:
模式不可知的企业版NoSQL数据库技术;
MongoDB:
面向文档的数据库系统;
RavenDB:
一个事务性的,开源文档数据库;
RethinkDB:
支持连接查询和群组依据等查询的文档型数据库。
KeyMap数据模型
注意:
业内存在一些术语混乱,有两个不同的东西都叫做“列式数据库”。
这里列出的有一些是围绕“key-map”数据模型而建的分布式、持续型数据库,其中所有的数据都有(可能综合了)键,并与映射中的键-值对相关联。
在一些系统中,多个这样的值映射可以与键相关联,并且这些映射被称为“列族”(具有映射值的键被称为“列”)。
另一组也可称为“列式数据库”的技术因其存储数据的方式而有别于前一组,它在磁盘上或在存储器中——而不是以传统方式,即所有既定键的键值都相邻着、逐行存储。
这些系统也彼此相邻来存储所有列值,但是要得到给定列的所有值却不需要以前那么繁复的工作。
前一组在这里被称为“keymap数据模型”,这两者和Key-value数据模型之间的界限是相当模糊的。
后者对数据模型有更多的存储格式,可在列式数据库中列出。
ApacheAccumulo:
内置在Hadoop上的分布式键/值存储;
ApacheCassandra:
由BigTable授权,面向列的分布式数据存储;
ApacheHBase:
由BigTable授权,面向列的分布式数据存储;
FacebookHydraBase:
Facebook所开发的HBase的衍化品;
GoogleBigTable:
面向列的分布式数据存储;
GoogleCloudDatastore:
为完全管理型的无模式数据库,用于存储在BigTable上非关系型数据;
Hypertable:
由BigTable授权,面向列的分布式数据存储;
InfiniDB:
通过MySQL的接口访问,并使用大规模并行处理进行并行查询;
Tephra:
用于HBase处理;
TwitterManhattan:
Twitter的实时、多租户分布式数据库。
键-值数据模型
Aerospike:
支持NoSQL的闪存优化,数据存储在内存。
开源,“’C'(不是Java或Erlang)中的服务器代码可精确地调整从而避免上下文切换和内存拷贝”。
AmazonDynamoDB:
分布式键/值存储,Dynamo论文的实现;
Edis:
为替代Redis的协议兼容的服务器;
ElephantDB:
专门研究Hadoop中数据导出的分布式数据库;
EventStore:
分布式时间序列数据库;
GridDB:
适用于存储在时间序列中的传感器数据;
LinkedInKrati:
简单的持久性数据存储,拥有低延迟和高吞吐量;
LinkedinVoldemort:
分布式键/值存储系统;
OracleNoSQLDatabase:
Oracle公司开发的分布式键值数据库;
Redis:
内存中的键值数据存储;
Riak:
分散式数据存储;
Storehaus:
Twitter开发的异步键值存储的库;
Tarantool:
一个高效的NoSQL数据库和Lua应用服务器;
TiKV:
由GoogleSpanner和HBase授权,Rust提供技术支持的分布式键值数据库;
TreodeDB:
可复制、共享的键-值存储,能提供多行原子写入。
图形数据模型
ApacheGiraph:
基于Hadoop的Pregel实现;
ApacheSparkBagel:
可实现Pregel,为Spark的一部分;
ArangoDB:
多层模型分布式数据库;
DGraph:
一个可扩展的、分布式、低时延、高吞吐量的图形数据库,旨在为Google生产水平规模和吞吐量提供足够的低延迟,用于TB级的结构化数据的实时用户查询;
FacebookTAO:
TAO是facebook广泛用来存储和服务于社交图形的分布式数据存储;
GCHQGaffer:
GCHQ中的Gaffer是一个易于存储大规模图形的框架,其中节点和边缘都有统计数据;
GoogleCayley:
开源图形数据库;
GooglePregel:
图形处理框架;
GraphLabPowerGraph:
核心C++GraphLabAPI和建立在GraphLabAPI之上的高性能机器学习和数据挖掘工具包的集合;
GraphX:
Spark中的弹性分布式图形系统;
Gremlin:
图形追踪语言;
Infovore:
以RDF为中心的Map/Reduce框架;
Intel GraphBuilder:
在Hadoop上构建大规模图形的工具;
MapGraph:
用于在GPU上大规模并行图形处理;
Neo4j:
完全用Java写入的图形数据库;
OrientDB:
文档和图形数据库;
Phoebus:
大型图形处理框架;
Titan:
建于Cassandra的分布式图形数据库;
TwitterFlockDB:
分布式图形数据库。
NewSQL数据库
ActianIngres:
由商业支持,开源的SQL关系数据库管理系统;
AmazonRedShift:
基于PostgreSQL的数据仓库服务;
BayesDB:
面向统计数值的SQL数据库;
CitusDB:
通过分区和复制横向扩展PostgreSQL;
Cockroach:
可扩展、地址可复制、交易型的数据库;
Datomic:
旨在产生可扩展、灵活的智能应用的分布式数据库;
FoundationDB:
由F1授意的分布式数据库;
GoogleF1:
建立在Spanner上的分布式SQL数据库;
GoogleSpanner:
全球性的分布式半关系型数据库;
H-Store:
是一个实验性主存并行数据库管理系统,用于联机事务处理(OLTP)应用的优化;
Haeinsa:
基于Percolator,HBase的线性可扩展多行多表交易库;
HandlerSocket:
MySQL/MariaDB的NoSQL插件;
InfiniSQL:
无限可扩展的RDBMS;
MemSQL:
内存中的SQL数据库,其中有优化的闪存列存储;
NuoDB:
SQL/ACID兼容的分布式数据库;
OracleTimesTenin-MemoryDatabase:
内存中具有持久性和可恢复性的关系型数据库管理系统;
PivotalGemFireXD:
内存中低延时的分布式SQL数据存储,可为内存列表数据提供SQL接口,在HDFS中较持久化;
SAPHANA:
是在内存中面向列的关系型数据库管理系统;
SenseiDB:
分布式实时半结构化的数据库;
Sky:
用于行为数据的灵活、高性能分析的数据库;
SymmetricDS:
用于文件和数据库同步的开源软件;
Map-D:
为GPU内存数据库,也为大数据分析和可视化平台;
TiDB:
TiDB是分布式SQL数据库,基于谷歌F1的设计灵感;
VoltDB:
自称为最快的内存数据库。
列式数据库
注意:
请在键-值数据模型阅读相关注释。
ColumnarStorage:
解释什么是列存储以及何时会需要用到它;
ActianVector:
面向列的分析型数据库;
C-Store:
面向列的DBMS;
MonetDB:
列存储数据库;
Parquet:
Hadoop的列存储格式;
PivotalGreenplum:
专门设计的、专用的分析数据仓库,类似于传统的基于行的工具,提供了一个列式工具;
Vertica:
用来管理大规模、快速增长的大量数据,当用于数据仓库时,能够提供非常快的查询性能;
GoogleBigQuery:
谷歌的云产品,由其在Dremel的创始工作提供支持;
AmazonRedshift:
亚马逊的云产品,它也是基于柱状数据存储后端。
时间序列数据库
Cube:
使用MongoDB来存储时间序列数据;
AxibaseTimeSeriesDatabase:
在HBase之上的分布式时间序列数据库,它包括内置的RuleEngine、数据预测和可视化;
Heroic:
基于Cassandra和Elasticsearch的可扩展的时间序列数据库;
InfluxDB:
分布式时间序列数据库;
Kairosdb:
类似于OpenTSDB但会考虑到Cassandra;
OpenTSDB:
在HBase上的分布式时间序列数据库;
Prometheus:
一种时间序列数据库和服务监测系统;
Newts:
一种基于ApacheCassandra的时间序列数据库。
类SQL处理
ActianSQLforHadoop:
高性能交互式的SQL,可访问所有的Hadoop数据;
ApacheDrill:
由Dremel授意的交互式分析框架;
ApacheHCatalog:
Hadoop的表格和存储管理层;
ApacheHive:
Hadoop的类SQL数据仓库系统;
ApacheOptiq:
一种框架,可允许高效的查询翻译,其中包括异构性及联合性数据的查询;
ApachePhoenix:
ApachePhoenix是HBase的SQL驱动;
ClouderaImpala:
由Dremel授意的交互式分析框架;
ConcurrentLingual:
Cascading中的类SQL查询语言;
DatasaltSploutSQL:
用于大数据集的完整的SQL查询工具;
FacebookPrestoDB:
分布式SQL查询工具;
GoogleBigQuery:
交互式分析框架,Dremel的实现;
PivotalHAWQ:
Hadoop的类SQL的数据仓库系统;
RainstorDB:
用于存储大规模PB级结构化和半结构化数据的数据库;
SparkCatalyst:
用于Spark和Shark的查询优化框架;
SparkSQL:
使用Spark操作结构化数据;
SpliceMachine:
一个全功能的Hadoop上的SQLRDBMS,并带有ACID事务;
Stinger:
用于Hive的交互式查询;
Tajo:
Hadoop的分布式数据仓库系统;
Trafodion:
为企业级的SQL-on-HBase针对大数据的事务或业务工作负载的解决方案。
数据摄取
AmazonKinesis:
大规模数据流的实时处理;
ApacheChukwa:
数据采集系统;
ApacheFlume:
管理大量日志数据的服务;
ApacheKafka:
分布式发布-订阅消息系统;
ApacheSqoop:
在Hadoop和结构化的数据存储区之间传送数据的工具;
ClouderaMorphlines:
帮助Solr、HBase和HDFS完成ETL的框架;
FacebookScribe:
流日志数据聚合器;
Fluentd:
采集事件和日志的工具;
GooglePhoton:
实时连接多个数据流的分布式计算机系统,具有高可扩展性和低延迟性;
Heka:
开源流处理软件系统;
HIHO:
用Hadoop连接不同数据源的框架;
Kestrel:
分布式消息队列系统;
LinkedInDatabus:
对数据库更改捕获的事件流;
LinkedInKamikaze:
压缩已分类整型数组的程序包;
LinkedInWhiteElephant:
日志聚合器和仪表板;
Logstash:
用于管理事件和日志的工具;
NetflixSuro:
像基于Chukwa的Storm和Samza一样的日志聚合器;
PinterestSecor:
是实现Kafka日志持久性的服务;
LinkedinGobblin:
LinkedIn的通用数据摄取框架;
Skizze:
是一种数据存储略图,使用概率性数据结构来处理计数、略图等相关的问题;
StreamSetsDataCollector:
连续大数据采集的基础设施,可简单地使用IDE。
服务编程
AkkaToolkit:
JVM中分布性、容错事件驱动应用程序的运行时间;
ApacheAvro:
数据序列化系统;
ApacheCurator:
ApacheZooKeeper的Java库;
ApacheKaraf:
在任何OSGi框架之上运行的OSGi运行时间;
ApacheThrift:
构建二进制协议的框架;
ApacheZookeeper:
流程管理集中式服务;
GoogleChubby:
一种松耦合分布式系统锁服务;
LinkedinNorbert:
集群管理器;
OpenMPI:
消息传递框架;
Serf:
服务发现和协调的分散化解决方案;
SpotifyLuigi:
一种构建批处理作业的复杂管道的Python包,它能够处理依赖性解析、工作流管理、可视化、故障处理、命令行一体化等等问题;
SpringXD:
数据摄取、实时分析、批量处理和数据导出的分布式、可扩展系统;
TwitterElephantBird:
LZO压缩数据的工作库;
TwitterFinagle:
JVM的异步网络堆栈。
调度
ApacheAurora:
在ApacheMesos之上运行的服务调度程序;
ApacheFalcon:
数据管理框架;
ApacheOozie:
工作流作业调度程序;
Chronos:
分布式容错调度;
LinkedinAzkaban:
批处理工作流作业调度;
Schedoscope:
Hadoop作业敏捷调度的ScalaDSL;
Sparrow:
调度平台;
Airflow:
一个以编程方式编写、调度和监控工作流的平台。
机器学习
ApacheMahout:
Hadoop的机器学习库;
brain:
JavaScript中的神经网络;
ClouderaOryx:
实时大规模机器学习;
ConcurrentPattern:
Cascading的机器学习库;
convnetjs:
Javascript中的机器学习,在浏览器中训练卷积神经网络(或普通网络);
Decider:
Ruby中灵活、可扩展的机器学习;
ENCOG:
支持多种先进算法的机器学习框架,同时支持类的标准化和处理数据;
etcML:
机器学习文本分类;
EtsyConjecture:
Scalding中可扩展的机器学习;
GoogleSibyl:
Google中的大规模机器学习系统;
GraphLabCreate:
Python的机器学习平台,包括ML工具包、数据工程和部署工具的广泛集合;
H2O:
Hadoop统计性的机器学习和数学运行时间;
MLbase:
用于BDAS堆栈的分布式机器学习库;
MLPNeuralNet:
针对iOS和MacOSX的快速多层感知神经网络库;
MonkeyLearn:
使文本挖掘更为容易,从文本中提取分类数据;
nupic:
智能计算的Numenta平台,它是一个启发大脑的机器智力平台,基于皮质学习算法的精准的生物神经网络;
PredictionIO:
建于Hadoop、Mahout和Cascading上的机器学习服务器;
SAMOA:
分布式流媒体机器学习框架;
scikit-learn:
scikit-learn为Python中的机器学习;
SparkMLlib:
Spark中一些常用的机器学习(ML)功能的实现;
VowpalWabbit:
微软和雅虎发起的学习系统;
WEKA:
机器学习软件套件;
BidMach:
CPU和加速GPU的机器学习库。
基准测试
ApacheHadoopBenchmarking:
测试Hadoop性能的微基准;
BerkeleySWIMBenchmark:
现实大数据工作负载基准测试;
IntelHiBench:
Hadoop基准测试套件;
PUMABenchmarking:
MapReduce应用的基准测试套件;
YahooGridmix3:
雅虎工程师团队的Hadoop集群基准测试。
安全性
ApacheKnoxGateway:
Hadoop集群安全访问的单点;
ApacheSentry:
存储在Hadoop的数据安全模块。
系统部署
ApacheAmbari:
Hadoop管理的运作框架;
ApacheBigtop:
Hadoop生态系统的部署框架;
ApacheHelix:
集群管理框架;
ApacheMesos:
集群管理器;
ApacheSlider:
一种YARN应用,用来部署YARN中现有的分布式应用程序;
ApacheWhirr:
运行云服务的库集;
ApacheYARN:
集群管理器;
Brooklyn:
用于简化应用程序部署和管理的库;
Buildoop:
基于Groovy语言,和ApacheBigTop类似;
ClouderaHUE:
和Hadoop进行交互的Web应用程序;
FacebookPrism:
多数据中心复制系统;
GoogleBorg:
作业调度和监控系统;
GoogleOmega:
作业调度和监控系统;
HortonworksHOYA:
可在YARN上部署HBase集群的应用;
Marathon:
用于长期运行服务的Mesos框架。
应用程序
Adobespindle:
使用Scala、Spark和Parquet处理的下一代web分析;
ApacheKiji:
基于HBase,实时采集和分析数据的框架;
ApacheNutch:
开源网络爬