Tag: distributed computing

元素的映射变坏了

我正在实现k-means ,我想创建新的质心。 但映射留下了一个元素! 但是,当K的值较小时,如15,它将正常工作。 基于该代码,我有: val K = 25 // number of clusters val data = sc.textFile(“dense.txt”).map( t => (t.split(“#”)(0), parseVector(t.split(“#”)(1)))).cache() val count = data.count() println(“Number of records ” + count) var centroids = data.takeSample(false, K, 42).map(x => x._2) do { var closest = data.map(p => (closestPoint(p._2, centroids), p._2)) var pointsGroup = closest.groupByKey() println(pointsGroup) pointsGroup.foreach […]

Kafka使用者 – 消费者进程和线程与主题分区的关系是什么

我最近一直在与卡夫卡合作,对消费者群体下的消费者有点困惑。 混淆的中心是将消费者实现为流程还是线程。 对于这个问题,假设我正在使用高级消费者。 让我们考虑一下我尝试过的场景。 在我的主题中有2个分区(为简单起见,我们假设复制因子只有1)。 我创建了一个使用group1组的消费者( ConsumerConnector )进程consumer1 ,然后创建了一个大小为2的主题计数映射,然后在该进程group1成了2个消费者线程consumer1_thread1和consumer1_thread2 。 看起来consumer1_thread1正在消耗分区0而consumer1_thread2正在消耗分区1 。 这种行为总是确定的吗? 以下是代码段。 TestConsumer类是我的消费者线程类。 … Map topicCountMap = new HashMap(); topicCountMap.put(topic, new Integer(2)); Map<String, List<KafkaStream>> consumerMap = consumer.createMessageStreams(topicCountMap); List<KafkaStream> streams = consumerMap.get(topic); executor = Executors.newFixedThreadPool(2); int threadNumber = 0; for (final KafkaStream stream : streams) { executor.submit(new TestConsumer(stream, threadNumber)); threadNumber++; } … 现在,让我们考虑另一个场景(我没有尝试但很好奇),我开始2个消费者进程consumer1和consumer2都具有相同的组group1 ,每个都是单线程进程。 […]

如何获得CRC64分布式计算(使用其线性属性)?

我需要对存储在分布式FS上的相当大的文件进行哈希处理。 我能够以比整个文件更好的性能处理文件的部分,所以我希望能够计算部分的哈希值然后求和。 我正在考虑将CRC64作为散列算法,但我不知道如何使用其理论上的“线性函数”属性,因此我可以对文件的各个部分求和。 有什么建议? 我错过了什么? 附加说明为什么我CRC64 : 我可以控制文件块,但由于应用程序性质,它们需要具有不同的大小(最多1个字节,不可能有任何固定块)。 我知道CRC32实现( zlib ),其中包括对部分CRC进行求和的方法,但我想要更广泛的东西。 8个字节对我来说很好看。 我知道CRC非常快。 我希望从中获益,因为文件可能非常庞大(高达Gb)。

分布式作业调度,管理和报告

我最近玩过Hadoop ,并对MapReduce作业的调度,管理和报告印象深刻。 它似乎使新工作的分配和执行非常无缝,使开发人员能够专注于他们的工作实施。 我想知道Java域中是否存在任何不容易表示为MapReduce问题的作业的分布式执行? 例如: 需要任务协调和同步的工作。 例如,它们可能涉及顺序执行任务,但同时执行某些任务是可行的: .– B –. .–A –| |–. | ‘– C –‘ | Start –| |– Done | | ‘–D ————-‘ 您希望分发但不提供任何输出以减少的CPU密集型任务 – 例如,图像转换/resize。 那么是否有一个提供这种分布式计算环境的Java框架/平台? 或者这种事情是否可以使用Hadoop接受/可实现 – 如果有的话,这些工作的模式/指南是什么?

Akka:如何查找集群中的当前节点?

从Akka演员那里,你怎么能找到集群的节点? 也就是说,本地节点认为当前可访问的节点。 谢谢, – 丹尼尔

如何在kafka中创建自定义序列化程序?

只有很少的序列化器可用,如, org.apache.kafka.common.serialization.StringSerializer org.apache.kafka.common.serialization.StringSerializer 我们如何创建自己的自定义序列化程序?

如何在kafka 0.9.0中使用multithreading消费者?

卡夫卡的文件给出了以下描述的方法: 每个线程一个消费者:一个简单的选择是为每个线程提供自己的消费者>实例。 我的代码: public class KafkaConsumerRunner implements Runnable { private final AtomicBoolean closed = new AtomicBoolean(false); private final CloudKafkaConsumer consumer; private final String topicName; public KafkaConsumerRunner(CloudKafkaConsumer consumer, String topicName) { this.consumer = consumer; this.topicName = topicName; } @Override public void run() { try { this.consumer.subscribe(topicName); ConsumerRecords records; while (!closed.get()) { synchronized (consumer) { records = […]

什么是zookeeper端口及其用法?

我对动物园管理员港口很新,过去几天我都会遇到这个港口。 我两次介绍了zookeeper port关键字: 配置neo4j数据库集群( 链接 )和 运行编译的voltdb目录( 链接 )(请参阅网络配置参数) 然后,我遇到了Apache Zookeeper ,(我猜这与分布式应用程序有关,我也是分布式应用程序的新手)。 因此问题在我脑海中浮现: 在以上2个场景中是否有apache zookeeper的任何实现? 这个动物园管理员端口到底在做什么? 任何帮助将不胜感激,谢谢。