我們有2臺服務器,其中之一是客戶的。我們的客戶向我們提供了從他的CMS的XML/JSON導出其客戶信息的URL,我們的任務是編寫一些導入腳本來將數據導入到我們正在開發的webapp。遠程永久同步
我一直在做的是這樣的:
INSERT INTO customers (name,address) VALUES ('John Doe', 'NY') ON DUPLICATE KEY UPDATE name='John Doe', address='NY'
這個解決方案是最好的permormace的方式,因爲據我所知......
但這個解決方案不是解決刪除記錄的問題。如果某些客戶端從數據庫中刪除,而現在不在導出中,該怎麼辦?
首先我把整個表格填滿,然後再填充一遍? 或者我應該用PHP中的所有記錄填充一些數組,然後再次遍歷它並刪除不在XML/JSON中的記錄?
我認爲必須有更好的解決方案。
我很感興趣,在服務表現的方式最好的解決辦法,因爲我們要進口成千上萬的記錄和全進口的過程可能需要大量的時間。
但是我們的webapp會有幾分鐘不完整的數據在TRUNCATE之後...... :( 而且我不相信,替換導入SQL查詢的正常SQL查詢可以節省那麼多時間......或者也許這個過程本身可以,但是我們必須調用更多的URL並從中獲取XML/JSON,這確實需要很多時間,我的優先級也是數據的完整性和完整性 – 2010-06-23 10:56:33
每次截斷表意味着您可能會丟失數據 - 而不是爲了備份目的而想要做什麼 – symcbean 2010-06-23 11:37:44
只要問,不要爭論:每當風險數據丟失時,如何/在哪裏截斷表格?我必須相信客戶信息的「當前」狀態總是在某處,完整和完整,在Radek的客戶端;因此可以隨時重新構建'客戶'表。我錯過了什麼?謝謝! – 2010-06-23 13:09:47