You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/virtual-machines/workloads/oracle/oracle-design.md
+12-7Lines changed: 12 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,6 +23,7 @@ ms.author: rclaus
23
23
## Assumptions
24
24
25
25
- You're planning to migrate an Oracle database from on-premises to Azure.
26
+
- You have the [Diagnostics Pack](https://docs.oracle.com/cd/E11857_01/license.111/e11987/database_management.htm) for the Oracle Database you're looking to migrate
26
27
- You have an understanding of the various metrics in Oracle AWR reports.
27
28
- You have a baseline understanding of application performance and platform utilization.
28
29
@@ -68,11 +69,11 @@ There are four potential areas that you can tune to improve performance in an Az
68
69
69
70
### Generate an AWR report
70
71
71
-
If you have an existing an Oracle database and are planning to migrate to Azure, you have several options. You can run the Oracle AWR report to get the metrics (IOPS, Mbps, GiBs, and so on). Then choose the VM based on the metrics that you collected. Or you can contact your infrastructure team to get similar information.
72
+
If you have an existing an Oracle database and are planning to migrate to Azure, you have several options. If you have the [Diagnostics Pack](https://www.oracle.com/technetwork/oem/pdf/511880.pdf) for your Oracle instances, you can run the Oracle AWR report to get the metrics (IOPS, Mbps, GiBs, and so on). Then choose the VM based on the metrics that you collected. Or you can contact your infrastructure team to get similar information.
72
73
73
74
You might consider running your AWR report during both regular and peak workloads, so you can compare. Based on these reports, you can size the VMs based on either the average workload or the maximum workload.
74
75
75
-
Following is an example of how to generate an AWR report:
76
+
Following is an example of how to generate an AWR report (Generate your AWR reports using your Oracle Enterprise Manager, if your current install has one):
76
77
77
78
```bash
78
79
$ sqlplus / as sysdba
@@ -139,6 +140,10 @@ Based on your network bandwidth requirements, there are various gateway types fo
139
140
140
141
- Network latency is higher compared to an on-premises deployment. Reducing network round trips can greatly improve performance.
141
142
- To reduce round-trips, consolidate applications that have high transactions or “chatty” apps on the same virtual machine.
143
+
- Use Virtual Machines with [Accelerated Networking](https://docs.microsoft.com/en-us/azure/virtual-network/create-vm-accelerated-networking-cli) for better network performance.
144
+
- For certain Linux distrubutions, consider enabling [TRIM/UNMAP support](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/configure-lvm#trimunmap-support).
145
+
- Install [Oracle Enterprise Manager](https://www.oracle.com/technetwork/oem/enterprise-manager/overview/index.html) on a separate Virtual Machine.
146
+
- Huge pages are not enabled on linux by default. Consider enabling huge pages and set `use_large_pages = ONLY ` on the Oracle DB. This may help increase performance. More information can be found [here](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/refrn/USE_LARGE_PAGES.html#GUID-1B0F4D27-8222-439E-A01D-E50758C88390).
142
147
143
148
### Disk types and configurations
144
149
@@ -182,20 +187,21 @@ After you have a clear picture of the I/O requirements, you can choose a combina
182
187
- Use data compression to reduce I/O (for both data and indexes).
183
188
- Separate redo logs, system, and temps, and undo TS on separate data disks.
184
189
- Don't put any application files on default OS disks (/dev/sda). These disks aren't optimized for fast VM boot times, and they might not provide good performance for your application.
190
+
- When using M-Series VMs on Premium storage, enable [Write Accelerator](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/how-to-enable-write-accelerator) on redo logs disk.
185
191
186
192
### Disk cache settings
187
193
188
194
There are three options for host caching:
189
195
190
-
-*Read-only*: All requests are cached for future reads. All writes are persisted directly to Azure Blob storage.
196
+
-*ReadOnly*: All requests are cached for future reads. All writes are persisted directly to Azure Blob storage.
191
197
192
-
-*Read-write*: This is a “read-ahead” algorithm. The reads and writes are cached for future reads. Non-write-through writes are persisted to the local cache first. For SQL Server, writes are persisted to Azure Storage because it uses write-through. It also provides the lowest disk latency for light workloads.
198
+
-*ReadWrite*: This is a “read-ahead” algorithm. The reads and writes are cached for future reads. Non-write-through writes are persisted to the local cache first. It also provides the lowest disk latency for light workloads. Using ReadWrite cache with an application that does not handle persisting the required data can lead to data loss, if the VM crashes.
193
199
194
200
-*None* (disabled): By using this option, you can bypass the cache. All the data is transferred to disk and persisted to Azure Storage. This method gives you the highest I/O rate for I/O intensive workloads. You also need to take “transaction cost” into consideration.
195
201
196
202
**Recommendations**
197
203
198
-
To maximize the throughput, we recommend that you start with **None** for host caching. For Premium Storage, keep in mind that you must disable the "barriers" when you mount the file system with the **ReadOnly** or **None** options. Update the /etc/fstab file with the UUID to the disks.
204
+
To maximize the throughput, we recommend that you start with **None** for host caching. For Premium Storage, keep in mind that you must disable the "barriers" when you mount the file system with the **ReadOnly** or **None** options. Update the /etc/fstab file with the UUID to the disks.
199
205
200
206
For more information, see [Premium Storage for Linux VMs](https://docs.microsoft.com/azure/storage/storage-premium-storage#premium-storage-for-linux-vms).
201
207
@@ -207,12 +213,11 @@ For more information, see [Premium Storage for Linux VMs](https://docs.microsoft
207
213
208
214
After your data disk setting is saved, you can't change the host cache setting unless you unmount the drive at the OS level and then remount it after you've made the change.
209
215
210
-
211
216
## Security
212
217
213
218
After you have set up and configured your Azure environment, the next step is to secure your network. Here are some recommendations:
214
219
215
-
-*NSG policy*: NSG can be defined by a subnet or NIC. It's simpler to control access at the subnet level both for security and force routing for things like application firewalls.
220
+
-*NSG policy*: NSG can be defined by a subnet or NIC. It's simpler to control access at the subnet level, both for security and force routing for things like application firewalls.
216
221
217
222
-*Jumpbox*: For more secure access, administrators should not directly connect to the application service or database. A jumpbox is used as a media between the administrator machine and Azure resources.
218
223

0 commit comments