Java程序员在用的大数据工具

问题:他们最近一年最喜欢用什么工具或者是框架?

受访者可以选择列表中的选项或者列出自己的,本文主要关心的是大数据工具。上一篇Java调查包括下列内容:

  1. 开发语言
  2. Web框架
  3. 应用服务器
  4. 数据库工具
  5. SQL数据
  6. 大数据
  7. 开发工具
  8. 云供应商

现在,来看看维基百科上对大数据的定义:

大数据,广义上来说是一组量很大很复杂的数据集合,在这种情况下传统的数据处理方式将不再适用。

对于一般情况来说传统的SQL数据库足够用。再另外一些场景下,传统的数据库能够承载的数据库量级有限,并且现在有了越来越多的工具可供使用。关键取决于场景。 
现在让我们来讨论不同的非SQL工具来存储/处理数据 - NoSQL数据库、内存缓存、全文搜索引擎、实时流媒体、图形数据库等。

大数据-调查结果

图片描述

  • MongoDB-一种非常流行的、跨平台、面向document的数据库。
  • Elasticsearch-专为云计算设计的分布式REST风格的搜索引擎。
  • Cassandra-一个开源的分布式数据库管理系统。最初是Facebook设计和开发的,部署在大量商用服务器上来处理大量的数据。高可用,无单点故障。
  • Redis-开源的(BSD)内存数据结构存储、内存库、缓存、消息代理。
  • Hazelcast-基于Java开发的内存数据网格。
  • EHCache-广泛使用的开源Java分布式缓存、J2ee、轻量级容器。
  • Hadoop-用java开发的开源分布式大数据框架,用来处理非常大规模数据,hadoop是集群化部署。
  • Solr-使用java开发的开源企业级搜索平台。最初归属在Apache Lucene项目中。
  • Spark-ASF中最活跃的项目,是一个开源的集群化计算框架。
  • Memcached–通用分布式缓存系统。
  • Apache Hive-在Hadoop支持类SQL封装,将SQL语句变成mr程序来执行。
  • Apache Kafka–高吞吐量、分布式、消息发布-订阅系统,最早是Linkin开发的。
  • Akka–Java开发的用来建造高并发,基于jvm弹性消息驱动的应用。
  • Hbase-根据Google的BigTable论文开发的开源分布式非关系型数据库。开发语言是Java,用HDFS作为底层存储。
  • Neo4j–用Java实现的开源图形数据库。
  • CouchBase–面向Document的开源分布式NoSQL数据库,并且针对交互应用做过优化。
  • Apache Storm–开源分布式实时计算系统。
  • CouchDB–使用json来存储数据的开放源码面向文档的NoSQL数据库。
  • Oracle Coherence–内存数据网格解决方案,使企业通过提供快速访问热数据来预测关键任务应用的规模。
  • Titan–可扩展的图形数据库,针对集群存储和查询数千亿的图形数据做过优化。
  • 亚马逊 DynamoDB – 一个快速、灵活NoSQL数据库,能够应对所有规模应用程序的需求,包括持久化、毫秒级延迟。
  • Amazon Kinesis–AWS上的实时数据计算平台。
  • Datomic–提供完整事务支持,云计算,分布式的数据库,开发语言用Clojure。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop是一个开源的大数据框架,它可以帮助处理和存储大规模数据集。作为一名好的程序员,在大数据领域掌握Hadoop是非常重要的。 首先,好的程序员需要了解Hadoop的基本概念和架构。Hadoop采用分布式文件系统和分布式计算模型,可以将数据存储在多个节点上进行并行处理程序员需要了解Hadoop的组成,如HDFS(分布式文件系统),YARN(资源管理器)和 MapReduce(计算框架)等,以便能够正确地配置和管理Hadoop集群。 其次,好的程序员需要熟练掌握Hadoop的编程模型和编程语言。Hadoop使用Java作为主要编程语言,程序员需要熟悉Java并掌握Hadoop相关的API。此外,Hadoop还支持其他编程语言如Python和Scala,程序员可以根据自己的需求选择合适的语言进行开发。 另外,好的程序员需要了解Hadoop生态系统中的其他工具和技术。Hadoop生态系统包含了许多与Hadoop配套的工具,如Hive、Pig、Spark等。这些工具可以帮助程序员更方便地进行大数据处理和分析。对于好的程序员来说,了解并熟练使用这些工具是非常必要的。 最后,好的程序员需要具备解决实际问题和优化性能的能力。Hadoop是一个非常强大的工具,但是在处理大规模数据时可能会面临一些挑战,如数据倾斜、性能瓶颈等。好的程序员需要能够分析和解决这些问题,并进行性能优化,以确保Hadoop集群的稳定运行。 总之,作为好的程序员,在大数据领域掌握Hadoop是非常重要的。通过了解Hadoop的概念和架构、熟练掌握Hadoop的编程模型和编程语言、了解Hadoop生态系统中的其他工具和技术,以及具备解决实际问题和优化性能的能力,程序员可以更好地利用Hadoop进行大数据处理和分析。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值