Oracle

多個表並行插入和刪除?

  • June 28, 2021

我在一個事務中刷新了 25 個表。他們中很少有人比其他人刷新更長的時間。我想知道是否有可能在同一筆交易中同時刷新“短時”和“長時”。一個事務只是為了方便在發生故障時回滾所有表上的更改。

尚不確定我是否想實現與“交易”概念相矛盾的東西。

尚不確定我是否想實現與“交易”概念相矛盾的東西。

是的你是。

事務是“原子的”——不可分割。你得到它的全部或沒有。

如果您在其他“位”之前洩漏一些“位”,則它不是原子的,也不是事務。

是否必須同時傳遞所有 25 個?

如果沒有,那麼您可能會完全失去事務並讓表在載入時變得可用(大概,刷新過程會以一種或另一種方式鎖定表)。

奇怪的是,我實際上是在 SSIS 中這樣做的。

是的,它是 Microsoft 產品,但天哪,它幫助我按順序和並行執行 ORACLE 任務。

ETL 工具(如 SSIS、Datastage、Talend 等)將允許您容納並行、順序和同步/非同步執行的項目。您可以使用“工作流程”佈局來添加排序、條件和警報。事務控制也變得更易於管理。

絕對建議您試一試 ETL 工具。那裡有很多好東西,我只使用 SSIS,因為它在 Standard 中是免費的,而且我很容易使用、增強和維護。

引用自:https://dba.stackexchange.com/questions/294925