首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >处理海量数据

处理海量数据
EN

Stack Overflow用户
提问于 2014-06-20 12:15:57
回答 1查看 146关注 0票数 2

让我们假设我有一个大文件(500GB+),并且我有一个数据记录声明Sample,它表示该文件中的一行:

代码语言:javascript
运行
复制
data Sample = Sample {
field1 :: Int,
field2 :: Int
}

那么,什么数据结构适合于在这些Sample数据的集合上处理(filter/map/折叠)?Don Stewart has answered here认为,不应将Sample类型视为列表[Sample]类型,而应将其视为Vector类型。我的问题是,如何将它表示为Vector类型来解决问题?是否将文件内容表示为Sample类型的向量也将占用大约500 as?

解决这类问题的推荐方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-20 12:59:30

据我所见,您想要使用的操作(filtermapfold)可以通过管道(参见Data.Conduit.List)和管道(参见Pipes.Prelude)来完成。

这两个库都完全能够操作/折叠和过滤流数据。取决于您的场景,它们可能解决您的实际问题。

但是,如果您需要对值进行多次调查,那么最好将块加载到向量中,正如@Don所说。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24327060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档