Skip to content

Commit e036289

Browse files
committed
Fixing a typo reported + added additional recommendations/best practices
1 parent 2863be0 commit e036289

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

articles/virtual-machines/workloads/oracle/oracle-design.md

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ ms.author: rclaus
2323
## Assumptions
2424

2525
- 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
2627
- You have an understanding of the various metrics in Oracle AWR reports.
2728
- You have a baseline understanding of application performance and platform utilization.
2829

@@ -68,11 +69,11 @@ There are four potential areas that you can tune to improve performance in an Az
6869

6970
### Generate an AWR report
7071

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.
7273

7374
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.
7475

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):
7677

7778
```bash
7879
$ sqlplus / as sysdba
@@ -139,6 +140,10 @@ Based on your network bandwidth requirements, there are various gateway types fo
139140

140141
- Network latency is higher compared to an on-premises deployment. Reducing network round trips can greatly improve performance.
141142
- 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).
142147

143148
### Disk types and configurations
144149

@@ -182,20 +187,21 @@ After you have a clear picture of the I/O requirements, you can choose a combina
182187
- Use data compression to reduce I/O (for both data and indexes).
183188
- Separate redo logs, system, and temps, and undo TS on separate data disks.
184189
- 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.
185191

186192
### Disk cache settings
187193

188194
There are three options for host caching:
189195

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.
191197

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.
193199

194200
- *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.
195201

196202
**Recommendations**
197203

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.
199205

200206
For more information, see [Premium Storage for Linux VMs](https://docs.microsoft.com/azure/storage/storage-premium-storage#premium-storage-for-linux-vms).
201207

@@ -207,12 +213,11 @@ For more information, see [Premium Storage for Linux VMs](https://docs.microsoft
207213

208214
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.
209215

210-
211216
## Security
212217

213218
After you have set up and configured your Azure environment, the next step is to secure your network. Here are some recommendations:
214219

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.
216221

217222
- *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.
218223
![Screenshot of the Jumpbox topology page](./media/oracle-design/jumpbox.png)

0 commit comments

Comments
 (0)