将大数据提取到文件的最佳方法是什么?

What is the best way to extract big data to file?

我将 Oracle 用作 DBMS,将​​ Tuxedo 用作应用程序服务器。 客户需要将数据从 Oracle 导出到 SAMFILE 以用于接口目的。 不幸的是,记录的总数很大(超过 1000 万)所以 我想知道将大量数据提取到数据库服务器上的文件的最佳做法是什么。

我习惯于创建游标并获取记录然后写入文件。 有没有更好的方法来处理这个问题?这是一个周期性任务。

我建议您阅读 Adrian Billington 关于调优的文章 UTL_FILE。它涵盖了所有基础。 Find it here.

重要的是缓冲记录,从而减少文件 I/O 调用的次数。您将需要对不同的实现进行基准测试,以查看哪种最适合您的情况。

注意他对查询性能的建议。如果大部分时间花在数据获取上,优化文件 I/O 毫无意义。