回答
我相信交易不需要。
但是,如果多想 - 你可以做一個臨時表,有幾個程序填充它,然後在交易通過使用這樣的傳輸大量數據「從選擇插入」
謝謝。我也想過了。但爲什麼你認爲這個交易不需要? 按要求如果進程在某一點失敗,我們應該得到數據庫在以前的條件。 – MasterJ
我假定您對下載的數據執行必要的檢查不在業務邏輯層或階段表中,然後在事務之外加載它們。 在任何情況下,大量數據的長時間運行事務都會導致性能DBMS的降級。 –
你可以嘗試玩水平的絕緣。 1.選擇所需的連接數(線程數)。將它們設置爲隔離級別「閱讀未提交」[link](https://www.postgresql.org/docs/9.6/static/transaction-iso.html)以查看其他主題中所做的更改 2.在每個他們開始一個事務 3.當線程完成加載數據時,它必須等待其他事務並且沒有提交事務 4.當所有線程完成時 - 在所有線程上執行提交。 在所有線程的線程回滾更改之一出現SQL錯誤的情況下。 –
- 1. 每個連接Postgres併發事務
- 2. 每個事務的單個連接與所有事務的單個連接?
- 3. 每個連接有多個事務的MySQLdb
- 4. 事務範圍中有多個連接?
- 5. Postgres多個連接
- 6. golang postgres太多的連接錯誤
- 7. Lumen使用.env中的DB_連接連接到多個數據庫 - 可能嗎?
- 8. 在Postgres中連接多個數組
- 9. ActiveMQ - 每個會話有多個連接?
- 10. 你可以連接到Springboot中的兩個postgres數據庫嗎?
- 11. Oracle在每個事務的連接/斷開連接上的性能
- 12. Postgres,table1左連接table2,表1中每個ID只有1行
- 13. 循環中可能有多個鍵嗎?
- 14. 可以連接多個Buddypress網站嗎?
- 15. Golang與TCP服務器的多個連接
- 16. MySQL連接器/ NET連接每個連接多個DataReader?
- 17. ADO.NET連接池中有多少個連接可用
- 18. 是否有可能有每Heroku的Postgres的計劃,多個數據庫?
- 19. 在Golang服務器中接受一個持久的tcp連接
- 20. Oracle OCI,基於會話的連接可能而不是每個事務的連接
- 21. 在單個連接池中擁有多個連接池會有好處嗎?
- 22. 每個多個數據庫連接都有一個事務是何時有意義的?
- 23. GoLang:不能在多個任務
- 24. Postgres多個聯接
- 25. 每個服務器2個連接?
- 26. 具有多個連接的事務處理範圍
- 27. 我可以打開多個連接到HTTP服務器嗎?
- 28. openshift中的每個裝備可以有多個數據庫嗎?
- 29. 你可以有多個domready事件嗎?
- 30. 連接每個和with_index是可以接受的嗎?
我不認爲是可能通過不同的連接共享交易。請更好地解釋你想做什麼,也許增加一個例子,以便於理解。 –
我有一個golang命令,用於分析一組csv文件並在數據庫中填充相應的表。這些文件非常大。解析器逐行讀取文件並將它們放入通道。四個goroutines從一個通道獲取這些結果並生成Exec()。如果我做db.Exec()整個過程需要25分鐘,如果tx.Exec()超過4小時。 – MasterJ
此外,我無法在不同的事務中執行不同的文件,因爲處理當前文件必須看到以前文件所做的更改。 (Postgres不支持READ UNCOMMITED)作爲整個過程的結果,我只能使用一個連接。 – MasterJ