Sql-Server
第三方軟體數據庫的數據庫調整
我最初是一名 SQL Server 顧問,試圖專注於維護和性能改進。我正在使用 Brent Ozar 的急救人員工具包和工具。我與一位使用內部開發的應用程序的客戶取得了很好的成功。
我有一個新客戶要求對僅用於第 3 方應用程序的數據庫進行維護性能調整。我認為我所做的更改(例如將 tempdb 從 c 驅動器移動到另一個驅動器)不會破壞任何東西。我只是擔心在不諮詢第 3 方的情況下這樣做。再說一次,他們可能只會說不。
問題是,對第三方軟體創建和使用的數據庫進行性能調整是否是一種好習慣?
更具體地說,我應該避免一些事情嗎?(如索引更改)
您有一個(大概)付費客戶,要求您提高他們的數據庫性能。您意識到數據庫是 3d 方軟體包的一部分/設置。我將假設確實存在明顯的性能問題,並且您對如何解決它有一些想法。
你有其他選擇。
- 您的客戶也是該 3d 方供應商的客戶,並與他們簽訂了支持契約。在您的客戶的幫助下,您聯繫供應商,詳細解釋性能問題是什麼,並徵求他們的意見。經過幾次1次迭代後,您共同達到了您的客戶可以接受的狀態。您收款並去慶祝聖誕節/新年/Nawruz/Масленица/普珥節/獨立日,視情況而定。
- 以上方法不起作用,因為客戶的支持契約已過期/供應商沒有響應/您喜歡冒險。然後,您一次一個地嘗試您的想法,看看它們的任何組合是否可以解決問題。你很幸運,問題就解決了(暫時)。然後,您收取您的付款,準備在下一次 3d 派對軟體升級後重複所有工作(自動化和IaC是您的朋友),並酌情去慶祝。
- 以上都不起作用。您回到這裡,詳細解釋您的問題,並希望蜂巢思維找到解決方案。如果有效,您將收取您的付款等。
- 以上都不起作用。你掛上帽子去翻漢堡/送快餐/清潔排水溝/享受你的愛好。
解決評論指出:
客戶沒有特定的性能問題,但通常認為事情可以更快
這是一件壞事™。永遠不要試圖讓“事物”“通常更快”:客戶和您對“事物”、“一般”和“更快”的含義肯定會有不同的理解,因此您永遠無法達成協議工作是否完成。
您需要盤問您的客戶,直到他們告訴您他們最嚴重的痛點或他們想要更快的確切速度和速度。如果您無法讓他們坦白,您將需要找到一件您認為可以有意義地改進的事情,並讓客戶同意這是他們希望您做的事情。
如果你不這樣做,你的工作永遠不會完成,客戶也永遠不會高興。你們誰都不想這樣。
1——很多。