Java程序員使用的20幾個大數據工具

jopen 8年前發布 | 21K 次閱讀 Java

Java程序員使用的20幾個大數據工具

英文原文:What Big Data Tools Do Java Developers Use?

最近我問了很多 Java 開發人員關于最近 12 個月內他們使用的是什么大數據工具。

這是一個系列,主題為:

  • 語言
  • web 框架
  • 應用服務器
  • SQL 數據訪問工具
  • SQL 數據庫
  • 大數據
  • 構建工具
  • 云提供商

今天我們就要說說大數據。根據維基百科,大數據是數據集的一個廣義的術語,并且該數據集是如此龐大和復雜,以致于傳統的數據處理應用程序無法勝任。

在許多情況下,使用 SQL 數據庫用于存儲/檢索數據就足夠了。但在另一些情況下,要么 SQL 數據庫規模不夠,要么還有更好的工具。這一切都取決于使用情況。

現在讓我們來討論一下存儲/處理數據用的不同的非 SQL 工具——NoSQL 數據庫,內存緩存,全文搜索引擎,實時流,圖形數據庫,等等。

MongoDB—— 一種流行的,跨平臺的面向文檔的數據庫。

Elasticsearch——專為云而構建的分布式 REST 風格搜索引擎。

Cassandra——一個開源的分布式數據庫管理系統,最初由 非死book 開發,被設計用來處理橫跨多個商用服務器的大量數據,提供了無單點故障的高度可用性。

Redis—— 一個開源的(BSD 許可),內存數據結構存儲,作為數據庫、緩存和消息代理使用。

Hazelcast——基于 Java 的開源內存數據網格。

EHCache——一種被廣泛使用的開源 Java 分布式緩存,用于通用緩存、Java EE 和輕量級容器。Ehcache 相關介紹

Hadoop——用 Java 編寫的一個開源軟件框架,用于分布式存儲和對在計算機集群上的超大型數據集的分布式處理。

Solr——一個開源的企業搜索平臺,用 Java 編寫的,來自于 Apache Lucene 項目。

Spark——Apache Software Foundation 中最活躍的項目,一個開源的集群計算框架。

Memcached—— 一個通用的分布式內存緩存系統。

Apache Hive——提供了 Hadoop 之上類似于 SQL 的層。

Apache Kafka—— 一個高通量、分布式的發布-訂閱式消息系統,最初開發在 LinkedIn 上。Windows 上脫離 Cygwin 運行 Apache Kafka

Akka—— 一個工具包和運行時,用于在 JVM 上構建高度并行的、分布式的、有彈性的消息驅動的應用程序。

HBase—— 一個開源的,非關系型的,分布式數據庫,在谷歌的 BigTable 后建模,用 Java 編寫,并運行在 HDFS 上。

Neo4j——用 Java 實現的開源圖形數據庫。

CouchBase——一個開源的、面向文檔的分布式 NoSQL 數據庫,特別為了交互式應用而優化。

Apache Storm——開源的分布式實時計算系統。

CouchDB——使用 JSON 來存儲數據的面向文檔的開源 NoSQL 數據庫。

Oracle Coherence—— 一個內存的數據網格解決方案,通過提供快速訪問常用數據的渠道,使得企業可預測地擴展關鍵任務應用程序。

Titan—— 一個可擴展的圖形數據庫,優化的目的在于存儲和查詢包含數千億頂點和邊的圖形,分布在多機集群。

Amazon DynamoDB——一個快速、靈活、完全管理的 NoSQL 數據庫服務,用于在任何規模需要一致的、個位數毫秒延遲的所有應用程序。

Amazon Kinesis—— 用于在 AWS 上的流數據的實時平臺。

Datomic—— 一個用 Clojure 寫的完全事務式的,支持云的,分布式數據庫。

-

譯文鏈接:http://www.codeceo.com/article/big-data-tools-java-programmer-use.html

翻譯作者:碼農網 – 小峰

來自: www.codeceo.com

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!