每個月我都會對客戶數據庫進行一些分析。我的前任將爲每個國家在Eloqua(我們的客戶關係管理)中創建一個細分市場,然後花費大約10(繁瑣,緩慢)的時間提醒他們。當我接手時,我知道我無法在Excel中完成(我們擁有超過1000萬的客戶),因此我使用了Access。加載數據時,Access接近2GB限制
這個過程工作得很好。我們現在達到了1200萬條記錄,並且它仍然很強勁。但是,在進行任何工作之前導入客戶主列表時,數據庫正在膨脹。本月它達到1.3 GB。
現在,我不會導入所有列 - 只有3.如果我嘗試對鏈接表執行操作,Access會凍結。如何在導入過程中減少數據庫的大小?我的源文件僅與最少的列相關聯,我導入數據後,我的下一個步驟必須是:
- 操縱數據以獲得計數,而不是各行
- 商店被操縱的數據(只有幾百KB)
- 清空我導入的表
- 壓縮並修復
這不會是一個問題,但我必須做的所有的這8倍(8個段,每一個示出了數據庫的不同部分),和2GB的限制是迫在眉睫在接下來的地平線上。
另一個問題可能是:我如何模擬/重新創建MySQL/MariaDB /其他東西免費的「鏈接表」功能?
壓縮後數據庫有多大? – dbmitch
您可以將數據拆分到不同的訪問數據庫中,然後在任何需要一次從多個數據中獲取數據的位置組合工會。當然這有缺點,任何使用Access作爲後端可能最終導致這種類型的事情。那裏有很多更好的後端選擇。 –
我可以建議2種解決方法 - 一種是在進行新導入之前刪除先前導入的表格和壓縮文件。這可能會給你足夠的空間。其次是使用vba腳本一次處理輸入的一行,只需導入所需的列。我有一個這樣的應用程序,我可以分享,如果你想要更多的信息。 (我必須這樣做,因爲我的輸入文件超過2G,我無法導入或以任何其他方式附加它。) –