史上最全的“大数据”学习资源(上)(山东数漫江湖)
資源列表:
關系數據庫管理系統(RDBMS)
框架
分布式編程
分布式文件系統
文件數據模型
Key -Map數據模型
鍵-值數據模型
圖形數據模型
NewSQL數據庫
列式數據庫
時間序列數據庫
類SQL處理
數據攝取
服務編程
調度
機器學習
基準測試
安全性
系統部署
應用程序
搜索引擎與框架
MySQL的分支和演化
PostgreSQL的分支和演化
Memcached的分支和演化
嵌入式數據庫
商業智能
數據可視化
物聯網和傳感器
文章
論文
視頻
關系數據庫管理系統(RDBMS)
MySQL:世界最流行的開源數據庫;
PostgreSQL:世界最先進的開源數據庫;
Oracle數據庫:對象-關系型數據庫管理系統。
框架
Apache Hadoop:分布式處理架構,結合了MapReduce(并行處理)、YARN(作業調度)和HDFS(分布式文件系統);
Tigon:高吞吐量實時流處理框架。
分布式編程
AddThis Hydra:最初在AddThis上開發的分布式數據處理和存儲系統;
AMPLab SIMR:用在Hadoop MapReduce v1上運行Spark;
Apache Beam:為統一的模型以及一套用于定義和執行數據處理工作流的特定SDK語言;
Apache Crunch:一個簡單的Java API,用于執行在普通的MapReduce實現時比較單調的連接、數據聚合等任務;
Apache DataFu:由LinkedIn開發的針對Hadoop and和Pig的用戶定義的函數集合;
Apache Flink:具有高性能的執行時間和自動程序優化;
Apache Gora:內存中的數據模型和持久性框架;
Apache Hama:BSP(整體同步并行)計算框架;
Apache MapReduce:在集群上使用并行、分布式算法處理大數據集的編程模型;
Apache Pig:Hadoop中,用于處理數據分析程序的高級查詢語言;
Apache REEF:用來簡化和統一低層大數據系統的保留性評估執行框架;
Apache S4:S4中流處理與實現的框架;
Apache Spark:內存集群計算框架;
Apache Spark Streaming:流處理框架,同時是Spark的一部分;
Apache Storm:Twitter流處理框架,也可用于YARN;
Apache Samza:基于Kafka和YARN的流處理框架;
Apache Tez:基于YARN,用于執行任務中的復雜DAG(有向無環圖);
Apache Twill:基于YARN的抽象概念,用于減少開發分布式應用程序的復雜度;
Cascalog:數據處理和查詢庫;
Cheetah:在MapReduce之上的高性能、自定義數據倉庫;
Concurrent Cascading:在Hadoop上的數據管理/分析框架;
Damballa Parkour:用于Clojure的MapReduce庫;
Datasalt Pangool:可選擇的MapReduce范例;
DataTorrent StrAM:為實時引擎,用于以盡可能暢通的方式、最小的開支和對性能最小的影響,實現分布式、異步、實時的內存大數據計算;
Facebook Corona:為Hadoop做優化處理,從而消除單點故障;
Facebook Peregrine:MapReduce框架;
Facebook Scuba:分布式內存數據存儲;
Google Dataflow:創建數據管道,以幫助其分析框架;
Netflix PigPen:為MapReduce,用于編譯成Apache Pig;
Nokia Disco:由Nokia開發的MapReduc獲取、轉換和分析數據;
Google MapReduce:MapReduce框架;
Google MillWheel:容錯流處理框架;
JAQL:用于處理結構化、半結構化和非結構化數據工作的聲明性編程語言;
Kite:為一組庫、工具、實例和文檔集,用于使在Hadoop的生態系統上建立系統更加容易;
Metamarkets Druid:用于大數據集的實時e框架;
Onyx:分布式云計算;
Pinterest Pinlater:異步任務執行系統;
Pydoop:用于Hadoop的Python MapReduce和HDFS API;
Rackerlabs Blueflood:多租戶分布式測度處理系統;
Stratosphere:通用集群計算框架;
Streamdrill:用于計算基于不同時間窗口的事件流的活動,并找到最活躍的一個;
Tuktu:易于使用的用于分批處理和流計算的平臺,通過Scala、Akka和Play所建;
Twitter Scalding:基于Cascading,用于MapReduce工作的Scala庫;
Twitter Summingbird:在Twitter上使用Scalding和Storm串流MapReduce;
Twitter TSAR:Twitter上的時間序列聚合器。
分布式文件系統
Apache HDFS:在多臺機器上存儲大型文件的方式;
BeeGFS:以前是FhGFS,并行分布式文件系統;
Ceph Filesystem:設計的軟件存儲平臺;
Disco DDFS:分布式文件系統;
Facebook Haystack:對象存儲系統;
Google Colossus:分布式文件系統(GFS2);
Google GFS:分布式文件系統;
Google Megastore:可擴展的、高度可用的存儲;
GridGain:兼容GGFS、Hadoop內存的文件系統;
Lustre file system:高性能分布式文件系統;
Quantcast File System QFS:開源分布式文件系統;
Red Hat GlusterFS:向外擴展的附網存儲(Network-attachedStorage)文件系統;
Seaweed-FS:簡單的、高度可擴展的分布式文件系統;
Alluxio:以可靠的存儲速率在跨集群框架上文件共享;
Tahoe-LAFS:分布式云存儲系統;
文件數據模型
Actian Versant:商用的面向對象數據庫管理系統;
Crate Data:是一個開源的大規模可擴展的數據存儲,需要零管理模式;
Facebook Apollo:Facebook的Paxos算法,類似于NoSQL數據庫;
jumboDB:基于Hadoop的面向文檔的數據存儲;
LinkedIn Espresso:可橫向擴展的面向文檔的NoSQL數據存儲;
MarkLogic:模式不可知的企業版NoSQL數據庫技術;
MongoDB:面向文檔的數據庫系統;
RavenDB:一個事務性的,開源文檔數據庫;
RethinkDB:支持連接查詢和群組依據等查詢的文檔型數據庫。
Key Map數據模型
注意:業內存在一些術語混亂,有兩個不同的東西都叫做“列式數據庫”。這里列出的有一些是圍繞“key-map”數據模型而建的分布式、持續型數據庫,其中所有的數據都有(可能綜合了)鍵,并與映射中的鍵-值對相關聯。在一些系統中,多個這樣的值映射可以與鍵相關聯,并且這些映射被稱為“列族”(具有映射值的鍵被稱為“列”)。
另一組也可稱為“列式數據庫”的技術因其存儲數據的方式而有別于前一組,它在磁盤上或在存儲器中——而不是以傳統方式,即所有既定鍵的鍵值都相鄰著、逐行存儲。這些系統也彼此相鄰來存儲所有列值,但是要得到給定列的所有值卻不需要以前那么繁復的工作。
前一組在這里被稱為“key map數據模型”,這兩者和Key-value數據模型之間的界限是相當模糊的。后者對數據模型有更多的存儲格式,可在列式數據庫中列出。若想了解更多關于這兩種模型的區分,可閱讀Daniel Abadi的博客:Distinguishing two major types of Column Stores。
Apache Accumulo:內置在Hadoop上的分布式鍵/值存儲;
Apache Cassandra:由BigTable授權,面向列的分布式數據存儲;
Apache HBase:由BigTable授權,面向列的分布式數據存儲;
Facebook HydraBase:Facebook所開發的HBase的衍化品;
Google BigTable:面向列的分布式數據存儲;
Google Cloud Datastore:為完全管理型的無模式數據庫,用于存儲在BigTable上非關系型數據;
Hypertable:由BigTable授權,面向列的分布式數據存儲;
InfiniDB:通過MySQL的接口訪問,并使用大規模并行處理進行并行查詢;
Tephra:用于HBase處理;
Twitter Manhattan:Twitter的實時、多租戶分布式數據庫。
鍵-值數據模型
Aerospike:支持NoSQL的閃存優化,數據存儲在內存。開源,“'C'(不是Java或Erlang)中的服務器代碼可精確地調整從而避免上下文切換和內存拷貝”。
Amazon DynamoDB:分布式鍵/值存儲,Dynamo論文的實現;
Edis:為替代Redis的協議兼容的服務器;
ElephantDB:專門研究Hadoop中數據導出的分布式數據庫;
EventStore:分布式時間序列數據庫;
GridDB:適用于存儲在時間序列中的傳感器數據;
LinkedIn Krati:簡單的持久性數據存儲,擁有低延遲和高吞吐量;
Linkedin Voldemort:分布式鍵/值存儲系統;
Oracle NoSQL Database:Oracle公司開發的分布式鍵值數據庫;
Redis:內存中的鍵值數據存儲;
Riak:分散式數據存儲;
Storehaus:Twitter開發的異步鍵值存儲的庫;
Tarantool:一個高效的NoSQL數據庫和Lua應用服務器;
TiKV:由Google Spanner和HBase授權,Rust提供技術支持的分布式鍵值數據庫;
TreodeDB:可復制、共享的鍵-值存儲,能提供多行原子寫入。
圖形數據模型
Apache Giraph:基于Hadoop的Pregel實現;
Apache Spark Bagel:可實現Pregel,為Spark的一部分;
ArangoDB:多層模型分布式數據庫;
DGraph:一個可擴展的、分布式、低時延、高吞吐量的圖形數據庫,旨在為Google生產水平規模和吞吐量提供足夠的低延遲,用于TB級的結構化數據的實時用戶查詢;
Facebook TAO:TAO是facebook廣泛用來存儲和服務于社交圖形的分布式數據存儲;
GCHQ Gaffer:GCHQ中的Gaffer是一個易于存儲大規模圖形的框架,其中節點和邊緣都有統計數據;
Google Cayley:開源圖形數據庫;
Google Pregel:圖形處理框架;
GraphLab PowerGraph:核心C ++ GraphLab API和建立在GraphLab API之上的高性能機器學習和數據挖掘工具包的集合;
GraphX:Spark中的彈性分布式圖形系統;
Gremlin:圖形追蹤語言;
Infovore:以RDF為中心的Map / Reduce框架;
Intel GraphBuilder:在Hadoop上構建大規模圖形的工具;
MapGraph:用于在GPU上大規模并行圖形處理;
Neo4j:完全用Java寫入的圖形數據庫;
OrientDB:文檔和圖形數據庫;
Phoebus:大型圖形處理框架;
Titan:建于Cassandra的分布式圖形數據庫;
Twitter FlockDB:分布式圖形數據庫。
NewSQL數據庫
Actian Ingres:由商業支持,開源的SQL關系數據庫管理系統;
Amazon RedShift:基于PostgreSQL的數據倉庫服務;
BayesDB:面向統計數值的SQL數據庫;
CitusDB:通過分區和復制橫向擴展PostgreSQL;
Cockroach:可擴展、地址可復制、交易型的數據庫;
Datomic:旨在產生可擴展、靈活的智能應用的分布式數據庫;
FoundationDB:由F1授意的分布式數據庫;
Google F1:建立在Spanner上的分布式SQL數據庫;
Google Spanner:全球性的分布式半關系型數據庫;
H-Store:是一個實驗性主存并行數據庫管理系統,用于聯機事務處理(OLTP)應用的優化;
Haeinsa:基于Percolator,HBase的線性可擴展多行多表交易庫;
HandlerSocket:MySQL/MariaDB的NoSQL插件;
InfiniSQL:無限可擴展的RDBMS;
MemSQL:內存中的SQL數據庫,其中有優化的閃存列存儲;
NuoDB:SQL / ACID兼容的分布式數據庫;
Oracle TimesTen in-Memory Database:內存中具有持久性和可恢復性的關系型數據庫管理系統;
Pivotal GemFire XD:內存中低延時的分布式SQL數據存儲,可為內存列表數據提供SQL接口,在HDFS中較持久化;
SAP HANA:是在內存中面向列的關系型數據庫管理系統;
SenseiDB:分布式實時半結構化的數據庫;
Sky:用于行為數據的靈活、高性能分析的數據庫;
SymmetricDS:用于文件和數據庫同步的開源軟件;
Map-D:為GPU內存數據庫,也為大數據分析和可視化平臺;
TiDB:TiDB是分布式SQL數據庫,基于谷歌F1的設計靈感;
VoltDB:自稱為最快的內存數據庫。
列式數據庫
注意:請在鍵-值數據模型閱讀相關注釋。
Columnar Storage:解釋什么是列存儲以及何時會需要用到它;
Actian Vector:面向列的分析型數據庫;
C-Store:面向列的DBMS;
MonetDB:列存儲數據庫;
Parquet:Hadoop的列存儲格式;
Pivotal Greenplum:專門設計的、專用的分析數據倉庫,類似于傳統的基于行的工具,提供了一個列式工具;
Vertica:用來管理大規模、快速增長的大量數據,當用于數據倉庫時,能夠提供非常快的查詢性能;
Google BigQuery:谷歌的云產品,由其在Dremel的創始工作提供支持;
Amazon Redshift:亞馬遜的云產品,它也是基于柱狀數據存儲后端。
時間序列數據庫
Cube:使用MongoDB來存儲時間序列數據;
Axibase Time Series Database:在HBase之上的分布式時間序列數據庫,它包括內置的Rule Engine、數據預測和可視化;
Heroic:基于Cassandra和Elasticsearch的可擴展的時間序列數據庫;
InfluxDB:分布式時間序列數據庫;
Kairosdb:類似于OpenTSDB但會考慮到Cassandra;
OpenTSDB:在HBase上的分布式時間序列數據庫;
Prometheus:一種時間序列數據庫和服務監測系統;
Newts:一種基于Apache Cassandra的時間序列數據庫。
類SQL處理
Actian SQL for Hadoop:高性能交互式的SQL,可訪問所有的Hadoop數據;
Apache Drill:由Dremel授意的交互式分析框架;
Apache HCatalog:Hadoop的表格和存儲管理層;
Apache Hive:Hadoop的類SQL數據倉庫系統;
Apache Optiq:一種框架,可允許高效的查詢翻譯,其中包括異構性及聯合性數據的查詢;
Apache Phoenix:Apache Phoenix是HBase的SQL驅動;
Cloudera Impala:由Dremel授意的交互式分析框架;
Concurrent Lingual:Cascading中的類SQL查詢語言;
Datasalt Splout SQL:用于大數據集的完整的SQL查詢工具;
Facebook PrestoDB:分布式SQL查詢工具;
Google BigQuery:交互式分析框架,Dremel的實現;
Pivotal HAWQ:Hadoop的類SQL的數據倉庫系統;
RainstorDB:用于存儲大規模PB級結構化和半結構化數據的數據庫;
Spark Catalyst:用于Spark和Shark的查詢優化框架;
SparkSQL:使用Spark操作結構化數據;
Splice Machine:一個全功能的Hadoop上的SQLRDBMS,并帶有ACID事務;
Stinger:用于Hive的交互式查詢;
Tajo:Hadoop的分布式數據倉庫系統;
Trafodion:為企業級的SQL-on-HBase針對大數據的事務或業務工作負載的解決方案。
數據攝取
Amazon Kinesis:大規模數據流的實時處理;
Apache Chukwa:數據采集系統;
Apache Flume:管理大量日志數據的服務;
Apache Kafka:分布式發布-訂閱消息系統;
Apache Sqoop:在Hadoop和結構化的數據存儲區之間傳送數據的工具;
Cloudera Morphlines:幫助Solr、HBase和HDFS完成ETL的框架;
Facebook Scribe:流日志數據聚合器;
Fluentd:采集事件和日志的工具;
Google Photon:實時連接多個數據流的分布式計算機系統,具有高可擴展性和低延遲性;
Heka:開源流處理軟件系統;
HIHO:用Hadoop連接不同數據源的框架;
Kestrel:分布式消息隊列系統;
LinkedIn Databus:對數據庫更改捕獲的事件流;
LinkedIn Kamikaze:壓縮已分類整型數組的程序包;
LinkedIn White Elephant:日志聚合器和儀表板;
Logstash:用于管理事件和日志的工具;
Netflix Suro:像基于Chukwa的Storm和Samza一樣的日志聚合器;
Pinterest Secor:是實現Kafka日志持久性的服務;
Linkedin Gobblin:LinkedIn的通用數據攝取框架;
Skizze:是一種數據存儲略圖,使用概率性數據結構來處理計數、略圖等相關的問題;
StreamSets Data Collector:連續大數據采集的基礎設施,可簡單地使用IDE。
總結
以上是生活随笔為你收集整理的史上最全的“大数据”学习资源(上)(山东数漫江湖)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手机车内充电自燃致两辆车被烧毁!消防提醒
- 下一篇: 在ubunut下使用pycharm和ec