Java大数据开发相关工具项目

适合Java开发的大数据工具和框架:对大数据的存储和处理需要非SQL存储/处理数据工具,例如,NoSQL数据库,全文搜索引擎,实时流式处理,图形数据库等

  • Datomic

–完全事务,云就绪,分布式数据库,用Clojure编写。
是一个灵活的、基于时间因子的数据库,支持联合查询,具有弹性的可扩展性以及支持ACID事务性。Datomic 提供高可用的、分布式存储服务。

  • Amazon DynamoDB

–快速,灵活的全面管理NoSQL的数据库服务,适用于任何规模的要求一致性,单位毫秒延迟的应用程序。一种完全托管的 NoSQL 数据库服务,提供快速而可预测的性能,能够实现无缝扩展。
Oracle Coherence–内存数据网格解决方案,通过提供对常用数据的快速访问,使企业能够可预测地扩展关键任务应用程序。简单来说,Coherence仅支持Java,.NET和C++ API三个版本。

  • CouchDB

–开源的面向文档的NoSQL数据库,使用JSON存储数据。

  • CouchBase

–开源分布式的NoSQL面向文档数据库,针对交互式应用程序进行了优化。延后写入和松散存储。基于Apache CouchDB,并整合了GeoCouch。

  • Apache Hadoop

–用Java编写的开源软件框架,用于分布式存储,并对非常大的数据集进行分布式处理。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群进行高速运算和存储。
HDFS对海量数据进行存储,Mapreduce对海量数据进行计算。

  • HBase

–开放源代码,非关系型,分布式数据库,采用Google的BigTable建模,用Java编写,并在HDFS上运行。HBase利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,
利用Zookeeper做协同服务。

  • Apache Hive

–在Hadoop之上提供类似SQL的层。是一个基于Hadoop的数据仓库平台。通过hive,可以方便地进行ETL工作。hive定义了一个类似于SQL的查询语言,能够将用户编写的SQL转化为相应的Mapreduce程序基于Hadoop执行。

  • Memcached

–通用分布式内存缓存系统。是一套分布式快取系统,作为高速运行的分布式缓存服务器,具有以下的特点:协议简单,基于libevent的事件处理,内置内存存储方式。

  • EHCache

–广泛使用的开源Java分布式缓存。主要面向通用缓存、Java EE和轻量级容器。是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。主要特性有:快速简单,
具有多种缓存策略;缓存数据有两级,内存和磁盘,因此无需担心容量问题;缓存数据会在虚拟机重启的过程中写入磁盘;可以通过RMI、可插入API等方式进行分布式缓存;具有缓存和缓存管理器的侦听接口;
支持多缓存管理器实例,以及一个实例的多个缓存区域;提供Hibernate的缓存实现。

  • Hazelcast

–基于Java的开源内存数据网格,提供Java程序员关键任务交易和万亿级内存应用。中的数据是分布式的,每一个member持有部分数据和相应的backup数据。

  • Redis

–开源(BSD许可)内存数据结构存储,用作数据库,缓存和消息代理。是一个开源的使用ANSI C语言编写的、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis 有三个主要使其有别于其它很多竞争对手的特点:Redis是完全在内存中保存数据的数据库,使用磁盘只是为了持久性目的; Redis相比许多键值数据存储系统有相对丰富的数据类型;
Redis可以将数据复制到任意数量的从服务器中。

  • Apache Cassandra

–java编写的开源分布式数据库管理系统,最初是由Facebook开发的,旨在处理许多商品服务器上的大量数据,提供高可用性,没有单点故障。是一套开源分布式NoSQL数据库系统。
集Google BigTable的数据模型与Amazon Dynamo的完全分布式架构于一身。操作命令类似关系数据库的操作,一种流行的分布式结构化数据存储方案。

  • MongoDB

–最受欢迎的,跨平台的,面向文档的数据库。是一个基于分布式文件存储的数据库,使用C++语言编写。旨在为Web应用提供可扩展的高性能数据存储解决方案。应用性能高低依赖于数据库性能,
MongoDB则是非关系数据库中功能最丰富,最像关系数据库的。核心优势就是灵活的文档模型、高可用复制集、可扩展分片集群。你可以试着从几大方面了解MongoDB,如实时监控MongoDB工具、
内存使用量和页面错误、连接数、数据库操作、复制集等。

  • Apache Kafka

–最初是由LinkedIn开发的高吞吐量,分布式订阅消息系统。是一个开源消息系统项目,由Scala写成。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。
以一个拥有一台或多台服务器的集群运行着,每一台服务器称为broker。

  • Titan

–可扩展的图形数据库,优化用于存储和查询包含分布在多机集群上的数百亿个顶点和边的图形。支持不同的分布式存储层:Cassandra 1.1和HBase 0.92。

  • Neo4j

–在Java中实现的开源图形数据库。是一个高性能的NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全事务特性的Java持久化引擎。

  • Apache Storm

–开源分布式实时计算系统。 是一个能近实时地在数据之上运行用户代码片段的流式数据处理框架。它实际上是一系列连在一起的管道。通常用于简单的分析任务 ,诸如计算,以及清洗,
使其常规化,并且准备摄入用于长期存储的数据。

  • Apache Spark

–Apache Software Foundation中最活跃的项目,是一个开源集群计算框架。是一种与 Hadoop 相似的开源集群计算环境,在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,
其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。相比于hadoop,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载,使它在某些工作负载方面表现得更加优越。

  • Amazon Kinesis

–AWS上的实时流式传输数据平台。对大量的流数据,连续收集和处理。

  • Akka

–用于在JVM上构建高并发,分布式和弹性消息驱动应用程序的工具包。是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。它已经成功运用在电信行业,系统几乎不会宕机。

  • Apache Solr

–开源企业搜索平台,用Java编写,来自Apache Lucene项目。是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。xml格式的http请求与响应。
比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化。

  • Elasticsearch

–java开发的为云构建的分布式RESTful搜索引擎。是基于Lucene的搜索服务器。它提供了分布式多用户能力的全文搜索引擎,基于RESTful web接口。作为Apache许可条款下的开放源码发布,
是比较流行的企业级搜索引擎。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值