问题标签 [bigdata]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
indexing - Solr 方法来重新索引大型文档语料库
我们正在寻找一些关于在 Solr 中系统地重新索引不断增长的文档语料库(现在数千万,一年内数亿)而不降低当前运行的索引的建议。需要定期重新索引,因为:
- 围绕搜索需要额外模式字段的现有语料库引入了新功能,我们不能总是提前预料到
- 语料库跨多个分片编制索引。当它超过某个阈值时,我们需要创建更多的分片并在所有分片之间重新平衡文档(SolrCloud 似乎还不支持)。
当前索引接收非常频繁的更新和添加,需要在几分钟内可供搜索。因此,离线批量重新索引语料库的方法实际上并不奏效,因为当批处理完成时,新文档将可用。
我们目前正在研究的方法是:
- 创建一个新的分片集群并在那里批量重新索引,同时旧集群仍可用于搜索。不属于重新索引批次的新文档将同时发送到旧集群和新集群。准备好切换时,将负载均衡器指向新集群。
- 使用 CoreAdmin:为每个分片生成一个新核心并将重新索引的批次发送到新核心。不属于重新索引批次的新文档将同时发送到旧核心和新核心。准备好切换时,使用 CoreAdmin 动态交换内核。
如果人们能够确认或戳穿这些方法中的任何一种或所有方法,我们将不胜感激。一个比另一个更合适吗?还是我们完全关闭了?先感谢您。
sql - 从另一个表中插入数百万行
从选择语句将行插入表并插入的更快方法?
6M 行需要 > 4 分钟
indexing - Chunked UrlDataSource For Solr DataImportHandler
I'm looking into chunking my data source for optimial data import into solr and was wondering if it was possible to use a master url that chunked data into sections.
For example File 1 may have
with each chunk url leading to something like
I'm working with 500+ million records so I think that the data will need to be chunked to avoid memory issues (ran into that when using the SQLEntityProcessor). I would also like to avoid making 500+ Million web requests as that could get expensive I think
unit-testing - 对大数据进行单元测试的方法
想象一下,您正在设计一个系统,并且您想开始编写确定功能的测试 - 以及性能和可伸缩性。您是否可以分享任何技术来处理不同环境中的大量数据?
real-time - 什么服务让我查询大数据,让我提供非简单查询代码
我想创建巨大的数据集(每行 25 个整数,每秒 30 行,乘以 60)。另一方面,我想查询匹配某个条件的行(例如,25 个整数中不超过 5 个超出某个范围的行)。
我想要这一切都是实时的,即连续插入和查询。
有人知道怎么做,最好使用云服务(亚马逊?谷歌?)
谢谢
mongodb - 处理错误数据库的最佳技术(并行计算?)
我的任务是为我们的网站提取所有谷歌分析数据并对其进行分析并放入数据库,然后生成一些关于该数据的报告。问题是我最终在一个表中有近 2m 条记录。报告由一些 SUM() 和 AVG 查询组成,您可以想象在某些情况下会花费太长时间(最坏的情况是没有设置日期过滤器和广泛的标准(取决于报告的类型)需要 8-10 分钟)。鉴于这次用户将有权访问这些报告是不可接受的......目前该项目正在使用 Postgres。我非常清楚没有 RDMS 将在 10 秒内处理此类数据,尤其是在单台机器上运行。
问题是什么是软件和架构/技术的最佳选择才能获得良好的结果?
我尝试了 MongoDb,但考虑到它是单线程的(至少现在),map/reduce 在单台机器上的运行速度实际上并没有更快。
我知道我可能正在研究一个并行系统,但仍然不确定......我觉得使用 mongoDB 很舒服,我读到它们在集群和使用多个节点方面有了很大的改进,但我希望有人分享其他意见和经验不仅在计算能力方面,而且在价格方面也是最有效的方式。
谢谢
PS关于postgres应该处理这么多数据的一些答案,我发布了一些更多细节:
表结构:
示例查询:
java - FastScatterPlot 和 LineChart @ JFreeChart 与大数据的组合图表(680 万个条目 ~80MB)
我喜欢显示结合 LinePlot 的 FastScatterPlot。是否有可能将这些图表组合成一个组合图?不幸的是,开发人员指南似乎并非如此?!至少没有例子。似乎只能使用 XYDataset,但不是 FastScatterPlot,它使用二维数组来保存数据,XYDataset 必须使用 add() 方法填充,例如:
这是减慢和最终导致堆栈溢出的方式(堆大小已经是 512MB)!因此,我使用了成功显示图表的 FastScatterPlot。但如前所述,我不知道如何将它与例如 LineChart 结合起来。这是到目前为止的缩短代码:
java - ML/数据挖掘/大数据:编程和社区支持的流行语言
我不确定这个问题是否正确,但我要求解决我的疑问。
- 对于
Machine Learning/Data Mining
,我们需要学习数据,这意味着你需要学习Hadoop
,它在Java
for中有实现MapReduce
(如果我错了,请纠正我)。 - Hadoop 还提供
streaming api
支持其他语言(如python
) - 我认识的大多数研究生/研究人员在 python 中解决机器学习问题
hadoop and Java combination
我们经常 看到职位空缺
我观察到Java
和Python
(在我的观察中)是该领域最广泛使用的语言。
- 我的问题是
most popular language
在这个领域工作的目的是什么。 factors
决定一个人应该选择哪种语言/框架涉及什么- 我知道Java和python,但总是很困惑:
- 我是否开始编程
Java(because of hadoop implementation)
- 我是否开始编程
Python(because its easier and quicker to write)
- 我是否开始编程
这是一个非常开放的问题,我相信这些建议可能会对我和有同样疑问的人有所帮助。
非常感谢提前
database - 大型天体物理模拟数据的数据存储
我是天体物理学的研究生。我使用大部分由其他人开发的代码运行大型模拟十多年。有关这些代码的示例,您可以查看小工具http://www.mpa-garching.mpg.de/gadget/和 enzo http://code.google.com/p/enzo/。这绝对是两个最成熟的代码(它们使用不同的方法)。
这些模拟的输出是巨大的。根据您的代码,您的数据会有所不同,但它始终是大数据。你通常需要数十亿个粒子和细胞来做任何现实的事情。最大的运行是每个快照 TB 和每个模拟数百个快照。
目前,读取和写入此类数据的最佳方式似乎是使用 HDF5 http://www.hdfgroup.org/HDF5/,这基本上是使用二进制文件的一种有组织的方式。与带有自定义标头块的未格式化二进制文件相比,这是一个巨大的改进(仍然让我做噩梦),但我不禁认为可能有更好的方法来做到这一点。
我想纯粹的数据大小是这里的问题,但是是否有某种数据存储可以有效地处理 TB 的二进制数据,或者二进制文件是目前唯一的方法?
如果有帮助,我们通常按列存储数据。也就是说,你有一个所有粒子 id 的块、所有粒子位置的块、粒子速度块等。它不是最漂亮的,但它是在某些体积中执行诸如粒子查找之类的最快的。
编辑:抱歉对这些问题含糊不清。史蒂夫是对的,这可能只是数据结构而不是数据存储方法的问题。我现在必须跑步,但我会在今晚或明天晚些时候提供更多细节。
编辑 2:所以我研究得越多,我就越意识到这可能不再是数据存储问题了。未格式化的二进制文件的主要问题是正确读取数据的所有令人头疼的问题(获得正确的块大小和顺序并确定它)。HDF5 几乎解决了这个问题,在文件系统限制得到改善之前不会有更快的选择(感谢 Matt Turk)。
新问题可能归结为数据结构。HDF5 的性能与我们所能得到的一样好,即使它不是最好的查询接口。习惯了数据库,我认为能够查询诸如“随时给我所有速度超过 x 的粒子”之类的东西会非常有趣/强大。你现在可以做类似的事情,但你必须在较低的水平上工作。当然,考虑到数据有多大,并且取决于你用它做什么,为了性能,在低级别工作可能是一件好事。
xml - Facebook 等网站使用什么格式存储个人资料的数据?
我最近开始处理存储在 XML 文件中的大量数据。我一直想知道 Facebook 和其他网络站点如何存储与个人资料相关的所有信息(姓名、资料图片、墙贴等),我觉得 XML 绝对不是存储这么多信息的最佳方式。我试过用谷歌查找有关它的信息,但运气不太好。
Facebook 等大型网站如何存储和处理如此多的数据?我真的很想做一些关于这个的阅读,所以如果你知道任何好的网站,请告诉我!