作为日常导入作业的一部分,我是TRUNCATING表的数据并从原始文件插入数据。
有些表通常会导入较大的数据,例如范围行中的数据200,000,但有些表会导入范围行中的较少5,000数据30,000。
对于大型表导入,插入过程中会花费大量时间,最后有时会因性能问题而结束。
我正在使用 Java 来处理 Oracle 表中的导入。所以这个表不是硬编码的,而是根据他们的工作导入的。
jdbcTemplate.execute("TRUNCATE TABLE " + tableName); --for truncating table
return "INSERT INTO " + tableName + " (" +
columnData.stream().filter(Objects::nonNull).map(ColumnData::getName).collect(joining(", ")) +
", SYSTEM_INSERTED_AT) VALUES (" +
values.stream().collect(joining(", ")) +
", CURRENT_TIMESTAMP)"; --for insertion into table
我想知道在插入期间使用/*+ APPEND */提示是个好主意吗?它是否可以提高插入期间的性能?正如在 oracle 文章中所读到的那样,使用较少的插入并不是一个好主意,/*+ APPEND */因为它最终会影响性能问题。
qq_笑_17
相关分类