Overview: SELECT SAMPLE

One feature that many developers and data analysts are not aware of is the SAMPLE function in Oracle. It is quite an old feature (not sure exactly when it was added). Below is a simple example of how it works. We use a table with 9 000 000 rows and seelct from it with a sample percentage of 0.0001 We […]

Read More →

Estimate Defragmentaton Benefits for a Bigfile Tablespace

Database: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production Version 19.3.0.0.0 I write this post in order to follow step by step how a bigfile tablespace is created and managed in 19c. The main purpose is to find a way to estimate the space benefits of defragmenting the tablespace. I will use two methods: Method 1. By calculating the theoretical size of the tables. It is outlined below in steps 19-20. The limitation of this calculation is that right now it works for tables only Method 2. By using the Segment Advisor. Outlined below in steps 21-22 1. Check the datafile does not exist at OS level: 2. Create the tablespace as user SYSTEM: 3. Check DB file getting created: 4. Login as ‘radu’ user. Create test tables in the test_tbs tablespace: 5. Check size of the DB file. Should not be changed: 11M 6. Run test SQL: Output: 7. Populate first test table with 9 million rows. Example of block used to populate the table: 8. Check size of the DB file –> 291M 9. Run the control SQL from step 6. Used –> 284M 10. Populate second test table with 9 million rows. 11. Check size of the DB file –> 526M 12. Run the control SQL from step 6. Used –> 500M 13. Delete all the rows from the first test table and commit. 14. Check size of the DB file –> 526M. Unchanged 15. Run […]

Read More →