给定内存限制,对具有大量数据的文件进行排序

要点:

  • 我们一天可以同时处理数千个平面文件。
  • 内存限制是一个主要问题。
  • 我们为每个文件进程使用线程。
  • 我们不按列排序。文件中的每一行(记录)都被视为一列。

不能做:

  • 我们不能使用Unix / Linux的sort命令。
  • 无论多么轻巧,我们都无法使用任何数据库系统。

现在,我们不能只加载集合中的所有内容并使用排序机制。它将耗尽所有内存,程序将得到堆错误。

在这种情况下,您将如何对文件中的记录/行进行排序?

回答:

看起来您正在寻找的是 外部排序。

基本上,您首先对一小部分数据进行排序,然后将其写回磁盘,然后遍历这些数据以对所有数据进行排序。

以上是 给定内存限制,对具有大量数据的文件进行排序 的全部内容, 来源链接: utcz.com/qa/405185.html

回到顶部