"Why isn't Oracle using my index?!" is a common question people have when tuning SQL queries. In this episode Chris compares two methods for finding all the red candies from party bags he's prepared. He shows how these are like a full table scan and an index range scan. He goes on to compare the performance of these two approaches. He shows when a full table scan becomes more efficient than an index range scan and vice versa. ============================ The Magic of SQL with Chris Saxon Copyright © 2015 Oracle and/or its affiliates. Oracle is a registered trademark of Oracle and/or its affiliates. All rights reserved. Other names may be registered trademarks of their respective owners. Oracle disclaims any warranties or representations as to the accuracy or completeness of this recording, demonstration, and/or written materials (the “Materials”). The Materials are provided “as is” without any warranty of any kind, either express or implied, including without limitation warranties or merchantability, fitness for a particular purpose, and non-infringement.
Views: 8466 The Magic of SQL
what is "full table scan in oracle" and "oracle index scan" Small Excerpt from "Oracle performance Tuning Session". http://www.dbvidya.com/oracle-performance-tuning-videos/ [email protected] +91 991 2323 000 Oracle Performance Tuning Online Training : http://www.dbvidya.com/course/performance-tuning-for-dba/ Oracle SQL Performance Tuning Training Online : http://www.dbvidya.com/course/sql-tuning-advanced/ Oracle Performance Tuning Videos Tutorial for DBA and Developers : http://www.dbvidya.com/oracle-performance-tuning-videos/ Oracle AWR Tutorial: http://www.dbvidya.com/course/oracle-awr/ Erwin Tool Online Training : http://www.dbvidya.com/course/erwin-tool/ ER Data Modeling Course : http://www.dbvidya.com/course/er-modeling/ Dimensional Modeling Training Online : http://www.dbvidya.com/course/dimensional-modeling/ Oracle Database Blogs : http://www.dbvidya.com/blog/
Views: 268 DbVidya
As the name says, in this hacking session I'll demo how full table scans (and full segment scans) work and related stuff too, like direct path read checkpoints and ORA-8103 errors. It's an old video from 2011 so not with the best recording resolution, but should still be fun. As direct path reads go, some things have changed and should be clarified, perhaps the best explanation is here: https://blogs.oracle.com/smartscan-deep-dive/when-bloggers-get-it-wrong-part-1 https://blogs.oracle.com/smartscan-deep-dive/when-bloggers-get-it-wrong-part-2
Views: 719 Tanel Poder
The Video Explains when should you create indexes. The difference between Simple and composite Index, Relevance of order in composite indexes and Index Scan Methods in detail. 1.Index Unique scan 2.Index Range Scan 3. Index Skip Scan 4. Fast full Index Scan 5. Full Index Scan If you have any questions just drop in a comment
Views: 8600 Tech Coach
Discusses "When Full table scan is recommended and when index scan is suggested" -small excerpt from "Oracle Performance tuning" http://www.dbvidya.com/blended-training/ [email protected] +91 991 2323 000 Oracle Performance Tuning Online Training : http://www.dbvidya.com/course/performance-tuning-for-dba/ Oracle SQL Performance Tuning Training Online : http://www.dbvidya.com/course/sql-tuning-advanced/ Oracle Performance Tuning Videos Tutorial for DBA and Developers : http://www.dbvidya.com/oracle-performance-tuning-videos/ Oracle AWR Tutorial: http://www.dbvidya.com/course/oracle-awr/ Erwin Tool Online Training : http://www.dbvidya.com/course/erwin-tool/ ER Data Modeling Course : http://www.dbvidya.com/course/er-modeling/ Dimensional Modeling Training Online : http://www.dbvidya.com/course/dimensional-modeling/ Oracle Database Blogs : http://www.dbvidya.com/blog/
Views: 189 DbVidya
This is the 2nd video from " Partitioning in Oracle " series, It explains how oracle stores and manages data. What is single Block IO and Multi Block IO ? Why full table scan is better than index access in few cases. The video is very elaborate, I have tried my level best to keep it as simple as possible
Views: 11392 Tech Coach
See all 5 tutorials, free, at SkillBuilders.com/OracleTuningFullTableScans. In summary, serial full table scans were always indirect before 11.2, parallel scans always direct before 11.2. These are the two critical parameters. That hidden parameter _serial_direct_read, remember, defaults to auto so your application may start behaving very differently as you upgrade from 11.2.01 or 11.2.02. Parallel_degree_policy, that defaults to manual. But again, it becomes an option when you go to 11.2 to enable the automatic facility which allows not only automatic tuning to the degree of parallelism but also enables the ability to make indirect reads when doing a full table scan.
Views: 1615 SkillBuilders
In this video I have explained who you can use the Oracle metadata tables to your advantage with real project scenarios and situations. The video is a little descriptive it gives you much more than just the syntax and the tables. All database offer a bunch of tables using which you can make smart inferences about your data,process and health of the database. I have explained the below tables in this video and how to use them smartly 1.All_Source 2.all_objects 3.All_tables 4.all_tab_cons 5.all_constraints I will be sharing more such places where we can use these metadata queries so don't forget to subscribe to my channel. If you can questions/clarifications just drop a comment and I will be more than happy to solve your queries.
Views: 4596 Tech Coach
Unusable indexes in Oracle, DML statements are not use the index to its maintenance, at the same time the optimizer will not use the index. Unusable indexes no segment exists. Unavailable index index becomes available methods are: 1. Place the index can not be truncate operation corresponding table; 2.rebuild index; In addition, the query optimizer can use conversion method expand table so that the SQL statement has encountered unusable index partition table to generate better execution plans.
Views: 65 崔旭
Creating Managing Droping Oracle Database Tablespaces select tablespace_name,block_size,status,contents,logging from dba_tablespaces; create tablespace mytbs datafile 'd:\oradata\dbrdbms\mytbs01.dbf' size 10m; alter tablespace mytbs add datafile 'd:\oradata\dbrdbms\mytbs02.dbf' size 10m; alter tablespace mytbs drop datafile 'd:\oradata\dbrdbms\mytbs02.dbf'; desc v$datafile; desc ts#,name from v$datafile; select ts#,name from v$tablespace; select v$datafile.ts#,v$datafile.name,v$tablespace.name from v$datafile,v$tablespace where v$datafile.ts#=v$tablespace.ts# and v$tablespace.name='MYTBS'; alter database datafile 'd:\oradata\dbrdbms\mytbs01.dbf' resize 20m; ALTER DATABASE DEFAULT TABLESPACE mytbs; select ts#,name from v$tablespace; select ts#,name from v$datafile; select ts#,name from v$tablespace; drop tablespace mytbs; drop tablespace mytbs ialtncluding contents and datafiles; drop tablespace mytbs including contents and datafiles cascade; alter tablespace mytbs read only; alter tablespace mytbs read write; alter tablespace mytbs force logging; alter tablespace mytbs nologging; alter tablespace mytbs flashback on; alter tablespace mytbs flashback off; purge tablespace mytbs user myuser;
Views: 21915 Abbasi Asif
Oracle Hints Tutorial for improving performance APPEND PARALLEL JOIN INDEX NO_INDEX SELECT /*+ FIRST_ROWS(10) */ * FROM emp WHERE deptno = 10; SELECT /*+ ALL_ROWS */ * FROM emp WHERE deptno = 10; SELECT /*+ NO_INDEX(emp emp_dept_idx) */ * FROM emp, dept WHERE emp.deptno = dept.deptno; SELECT /*+ INDEX(e,emp_dept_idx) */ * FROM emp e WHERE e.deptno = 10; -- SELECT /*+ INDEX(scott.emp,emp_dept_idx) */ * FROM scott.emp; SELECT /*+ AND_EQUAL(e,emp_dept_idx) */ * FROM emp e; SELECT /*+ INDEX_JOIN(e,emp_dept_idx) */ * FROM emp e; SELECT /*+ PARALLEL_INDEX(e,emp_dept_idx , 8) */ * FROM emp e; SELECT /*+ LEADING (dept) */ * FROM emp, dept WHERE emp.deptno = dept.deptno; SELECT /*+ PARALLEL(8) CACHE (e) FULL (e) */ * FROM emp e ; SELECT /*+ PARALLEL FULL (e) */ * FROM emp e ; SELECT /*+ PARALLEL USE_MERGE (emp dept) */ * FROM emp, dept WHERE emp.deptno = dept.deptno; -- SORT Merge Join SELECT /*+ PARALLEL USE_HASH (emp dept) */ * FROM emp, dept WHERE emp.deptno = dept.deptno; -- Hash Join SELECT /*+ PARALLEL */ * FROM emp e ; INSERT /*+ APPEND */ INTO mytmp select /*+ CACHE (e) */ *from emp e; commit;
Views: 8572 TechLake
In part one of the red candy series, Chris compared the efficiency of using a index range scan and full table scan to access data. He found that a full table scan was more efficient when fetching more rows than there are table blocks. This analysis made a big assumption however. It worked on the presumption that there was no correlation between the order of candies in the document and which the bags they were in. In this episode tests this assumption. Chris looks at how the physical order of rows in a table can affect the efficiency of indexes on it. He discusses how Oracle tracks this via the clustering factor. ============================ The Magic of SQL with Chris Saxon Copyright © 2015 Oracle and/or its affiliates. Oracle is a registered trademark of Oracle and/or its affiliates. All rights reserved. Other names may be registered trademarks of their respective owners. Oracle disclaims any warranties or representations as to the accuracy or completeness of this recording, demonstration, and/or written materials (the “Materials”). The Materials are provided “as is” without any warranty of any kind, either express or implied, including without limitation warranties or merchantability, fitness for a particular purpose, and non-infringement.
Views: 3378 The Magic of SQL
בסשן הזה אני מציג כיצד ניתן לשפר ביצועים של סריקת טבלה (Full Table Scan) באורקל ומדגים כיצד זה בפועל מתבטא ומתבצע בסביבת ייצור אמיתית. נתוודע למושג ה-High Water Mark, החשיבות שלו בעת Full Table Scan והעובדה ש-DELETE לא משפיע עליו. נראה כיצד נוכל לזהות אם יש בלוקים ריקים ומיותרים שאנו קוראים בעת סריקת הטבלה וכיצד ניתן לפתור את הבעיה.
Views: 325 Eran Koren
A quick intro to the new Advanced Index Compression in Oracle Database 12c release 1 (220.127.116.11). This functionality is part of the Advanced Compression Option
Views: 2293 Dominic Giles
How To Flashback a Table to particular SCN in Oracle
Views: 5955 Abbasi Asif
This Video is the 1st tutorial in the video series Indexing in Oracle , The video series explains in detail, What are indexes?It's types, what index should be used in which scenario and other important thing in basic terminology. Note :You may want to watch the video with a higher playback speed(1.25 if it suits you more)
Views: 18204 Tech Coach
Smart Scan is a wonderful capability, but you don't always get it. It's impossible for many execution plans, and this is a major restriction. If you think about what a Smart Scan actually does, it delivers individual columns, individual rows back to the instance. Now, a buffer cache can accept only blocks. Therefore, Smart Scan cannot possibly put those columns of rows into the buffer cache. It's simply not formatted appropriately. So, a Smart Scan has to return values directly into the session's PGA or, to put it another way, the only access method that can use Smart Scan is direct read. Well, what access methods can use direct read? There are only two, which are table full scan and index fast full scan. Any other access method, typically index range scan, table access by row ID, cannot use a Smart Scan. The second major issue, there are strict limitations of the type of objects that can be accessed through Smart Scan. It really is only heap tables. You can't use indexes. You can't use clusters. You can't use IOTs. Heap tables only. Perhaps hardest to track down and giving sometimes very erratic results is that Smart Scan can be interrupted by various conditions. You've met all the requirements for Smart Scan, directory and so on, got the right execution plan. The Smart Scan starts and then hits something that causes a problem. Issues that we know cause problems are, for instance, read consistency, also delayed block cleanout, change rows. Any of those issues and a few others mean that the storage tier will have to interrupt its Smart Scan, deliver complete blocks into that buffer cache, let your session then do what is necessary to the block, and only then can the Smart Scan proceed. Now, in order to maximize the use of Smart Scan, there may be quite a lot of work. Very often, you'll have to adjust your index structures. Making them invisible is a nice technique there. There are many, many, many parameters that can influence the likelihood of achieving a Smart Scan, and almost inevitably you're going to be rewriting a lot of hint SQL and putting hints in it to get the correct execution plans that can enable a Smart Scan to occur. This is all because of one fundamental problem; the optimizer is not in any way aware of the Exadata. The optimizer develops an execution plan in exactly the way it would without the Exadata storage. The use of Smart Scan, the awareness of Exadata comes at the next level down. The optimizer develops the plan through a normal pass and then passes it through to the SQL execution engine, and it's the SQL execution engine that determines, on a case-by-case basis, whether to use the Smart Scan. This means that you might develop a plan and execute the statement 50 times. Forty-nine times, you get a Smart Scan. The 50th time, for whatever reason, the SQL execution engine decides not to. This can result in somewhat erratic performance.
Views: 1695 SkillBuilders
When is a Full Table Scan faster than an Index Scan? Watch Ross and Jordan act out an Oracle database reading and caching data via both methods, explaining the costs and benefits in simple and easy to understand terms. The demonstration is part of a talk by Ross Leishman of DWS Ltd on the principles of Understanding Indexes for SQL Tuning. The full lecture is at this link: https://www.youtube.com/watch?v=Z4hKomnGHFA DWS Ltd is a leading publicly listed Australian IT Services company, providing services to blue chip organisations since 1991. With a business philosophy based upon integrity, reliability and professional service delivery, DWS provides end to end IT solutions. www.dws.com.au
Views: 2706 DWS Ltd
The video demonstrates what are the different types of joins and who they work in SQL. The tutorial is a little elaborate to make sure that you understand different kind of joins and where you should use which kind of join. The 5 Kind of joins explained are. 1. Inner join (Join or simple join) :- Rows that are common to both tables are returned as the output. 2. Left Outer join (Left join):- Returns all rows from the left table along with matching rows from the right table 3.Right Outer join (Right join):- Returns all rows from the right table along with matching rows from the left table 4.Full outer join (Full join) :- Returns all the records when there is a match in either left or right table. 5. Cartesian Join : (Join with no where condition)also known as a Cartesian product, is a join of every row of one table to every row of another table.
Views: 8724 Tech Coach
This session will help you understand following : 1. Table Scan vs Index Scan vs Index Seek 2. How these concepts affects the sql query performance. 3. Explain Actual Execution Plan 4. How to include actual execution plan in sql query 5. How to analyse sql query Thanks for watching! By sql Training Sessions By SQL Enjoy learning :)
Views: 115 Sql Training Sessions
Making Smart Scan Work - Demo I'll go through a simple example of the kind of thing we need to think about when trying to achieve Smart Scan. Let me just enable tracing, run a simple query, select and * from *. Now, there's my query. The result set comes back, and how is it executed? An index full scan with the PK* index. The optimizer is intelligent enough to know that my query can be satisfied purely by reading the index and therefore it didn't have to go to the table at all. It looks very good. Well, it wasn't. Index full scans are an operation that cannot be offloaded. So, to execute that statement, every block of that index was delivered into the buffer cache of my own database instance, and the compute node then has to do the work of extracting those values. What can we do about it? One solution would be to hint the code. I select and demand an index fast full scan, and now we see the magic word "storage." An index fast full scan is offloadable, because an index fast full scan can do direct reads. An alternative approach? Well, you might not want to hint many, many thousands of lines of code. An alternative approach would be to do it through DDL. For example, take that index, make it invisible. Now run my statements without any hint at all, table access storage full, and that was offloaded. Having made the index invisible, Oracle has no option but a full-table scan, and a full-table scan is offloadable. Now, this means I have three options of this very simple example. I can let the optimizer get on with what it wants to do, and then I use an index that I'm doing block serving into the buffer cache. I can hint the code, index fast full scan. That's probably the best option for performance, but it's also the most work. In this intervening case, I make the index invisible so that it will still be used of course for enforcing the primary key constraints, but it will not be visible to the optimizer and therefore influence the optimizer towards using plans that can be offloaded the Smart Scan. Making the choice between this and influencing the optimizer in the correct direction is an extremely difficult job, and it is not always easy to determine what is going to be the best solution.
Views: 3447 SkillBuilders
Partitioning enhances the performance, manageability, and availability of a wide variety of applications and helps reduce the total cost of ownership for storing large amounts of data. Partitioning allows tables, indexes, and index-organized tables to be subdivided into smaller pieces, enabling these database objects to be managed and accessed at a finer level of granularity. Oracle provides a rich variety of partitioning strategies and extensions to address every business requirement. Moreover, since it is entirely transparent, partitioning can be applied to almost any application without the need for potentially expensive and time consuming application changes. Partitioning allows a table, index, or index-organized table to be subdivided into smaller pieces, where each piece of such a database object is called a partition. Each partition has its own name, and may optionally have its own storage characteristics. From the perspective of a database administrator, a partitioned object has multiple pieces that can be managed either collectively or individually. This gives the administrator considerable flexibility in managing partitioned objects. However, from the perspective of the application, a partitioned table is identical to a non-partitioned table; no modifications are necessary when accessing a partitioned table using SQL queries and DML statements. Partitioning Key ======================== Each row in a partitioned table is unambiguously assigned to a single partition. The partitioning key is comprised of one or more columns that determine the partition where each row will be stored. Oracle automatically directs insert, update, and delete operations to the appropriate partition through the use of the partitioning key. When to Partition a Table ========================== Here are some suggestions for when to partition a table: Tables greater than 2 GB should always be considered as candidates for partitioning. Tables containing historical data, in which new data is added into the newest partition. A typical example is a historical table where only the current month's data is updatable and the other 11 months are read only. When the contents of a table need to be distributed across different types of storage devices. When to Partition an Index ============================= Here are some suggestions for when to consider partitioning an index: Avoid rebuilding the entire index when data is removed. Perform maintenance on parts of the data without invalidating the entire index. Reduce the impact of index skew caused by an index on a column with a monotonically increasing value. Partitioned Index-Organized Tables =================================== Partitioned index-organized tables are very useful for providing improved performance, manageability, and availability for index-organized tables. For partitioning an index-organized table: ============================================ Partition columns must be a subset of the primary key columns Secondary indexes can be partitioned (both locally and globally) OVERFLOW data segments are always equi-partitioned with the table partitions See Also: Oracle Database Concepts for more information about index-organized tables System Partitioning System partitioning enables application-controlled partitioning without having the database controlling the data placement. The database simply provides the ability to break down a table into partitions without knowing what the individual partitions are going to be used for. All aspects of partitioning have to be controlled by the application. For example, an insertion into a system partitioned table without the explicit specification of a partition will fail. System partitioning provides the well-known benefits of partitioning (scalability, availability, and manageability), but the partitioning and actual data placement are controlled by the application. See Also: Oracle Database Data Cartridge Developer's Guide for more information about system partitioning Partitioning for Information Lifecycle Management Information Lifecycle Management (ILM) is concerned with managing data during its lifetime. Partitioning plays a key role in ILM because it enables groups of data (that is, partitions) to be distributed across different types of storage devices and managed individually.
Views: 7317 Md Arshad
http://sqlserver2008tutorial.com/ In this video training, we compare SQL indexes -- clustered index vs. non clustered index. In SQL server you can have one clustered index whereas you can have many non clustered index is. Using SQL Server Profiler and MS SQL Execution plans, we compare the clustered index and the nonclustered index. In this demo we show you how to create a clustered and non-clustered index using SSMS. Using different parameters like CPU, Number of Page Reads and Duration in msec, we come to a conclusion that the best option is to use a clustered index. Finally we go over index management and index fragmentation. We illustrate ALTER TABLE commands with Index Rebuild or Index Reorg. Other topics that we cover include a table scan; clustered index scan and an index seek.
Views: 50948 baghul
How does Oracle Exadata Smart Scan work? What is Smart Scan. How to insure Oracle is offloading work to the Storage Tier? Learn this and more in this demonstration by OC Master John Watson of SkillBuilders. See all 11 lessons in this tutorial at http://skillbuilders.com/exadata-tutorials. John Watson: I want to show you very briefly how offload Smart Scan or flow processing can actually function. I'm working here just in the little demonstration Scott schema. I'll enable auto tracing so that we can see the effect on execution plans, which will also show me whether offload processing is indeed possible. So it's a simple query. I'll use a function here to check that to get offloaded as well as the column selection and the row selection and column projection. We'll have a predicate. Right. So there is the statement. It returned these three scalar values, as you would expect. How was this actually executed? There was a select statement, then it was executed, table access full. That's the only way to run that statement given the index on that table because in the middle of this, we see the key word, "storage." That key word tells me that this statement could indeed be offloaded to the storage tier. Furthermore, we see down here in the predicate information, "storage." That key word again tells me that the row filtering could have been done by the storage tier. So what happened is that the storage tier did not return every block of the empty* table to the database buffer cache, where my session would then have had to extract these values. All it returned to the instance was these three scalar values directly into the PGA of my server process. Now, there's also the initcap function there. Was that offloadable or not? There is a view "Read our SQL fm letter data," and that will tell us for each function whether or not it can be offloaded. So, just select its name, whether it's offloadable. Declare offloadable as yes and put in a sort order as well, and we see that in the current release, there are 393 functions that can be offloaded. Which ones? All the typecasting functions, truncations, trims. These are functions that get executed millions of times an hour in many, many environments. Note here two particularly important ones, balloon filters. The offload capability for balloon filters allows us to offload joins or facts to dimension tables. Those two in star schemas can be offloaded. The function I used was, in fact, initcap. Just for completeness, we'll scroll through all of these and we'll see that initcap itself is an offloadable function, and there it is along with many others. There are two classes of function that cannot be offloaded, and those are the aggregation functions and the analytic functions. I mention them just for completeness. There's an architectural issue there because aggregations and analytics potentially require access to all rows in the table. The row might be distributed across a cell. So it's a technical issue why they can't be offloaded, but virtually, all other functions can be offloaded with terrific drops in CPU usage, and combining that with the reduction of data traffic into the instances will give us vast performance improvements.
Views: 3942 SkillBuilders
So far in the red candy series, Chris has compared using an index to a full table scan to access sweets from his table. In this video he asks a different question: What if you just want to count how many sweets are red? In this case the index holds all the information Oracle needs to answer the query. He shows how the optimizer is able to process this via an index only scan. Chris goes on to investigate index only scans further. He discusses how theses can provide better performance than queries accessing the table itself. He finishes by looking at the conditions necessary to enable these. ============================ The Magic of SQL with Chris Saxon Copyright © 2015 Oracle and/or its affiliates. Oracle is a registered trademark of Oracle and/or its affiliates. All rights reserved. Other names may be registered trademarks of their respective owners. Oracle disclaims any warranties or representations as to the accuracy or completeness of this recording, demonstration, and/or written materials (the “Materials”). The Materials are provided “as is” without any warranty of any kind, either express or implied, including without limitation warranties or merchantability, fitness for a particular purpose, and non-infringement.
Views: 1788 The Magic of SQL
The Video Explains the difference between Local Partitioned Indexes(Prefixed vs Non Prefixed Indexes). and Global Partitioned Index along with the challenges in maintaining Global partitioned Indexes when the underlying tables partitioned is dropped/truncated/Merged/Moved. Local Partitioned Index Shares the same boundaries as the table and are in the same number as table partitions they are widely used in DSS and DWH systems. While Global Partitioned Index are predominantly used in OLTP systems
Views: 7543 Tech Coach
In this video you will understand the concept of Server pools, how you configure them... and how nodes automatically move between sever pool based on your configuration parameters for the server pools. Our Upcoming Online Course Schedule is available in the url below https://docs.google.com/spreadsheets/d/1qKpKf32Zn_SSvbeDblv2UCjvtHIS1ad2_VXHh2m08yY/edit#gid=0 Reach us at [email protected]
Views: 12010 Ramkumar Swaminathan
** For Online Training Registration: https://goo.gl/r6kJbB ► Call: +91-8179191999 💡 Visit Our Website for Classroom Training: https://nareshit.in/oracle-training/ 💡 For Online Training: https://nareshit.com/oracle-online-training/ #Oracle #Training #CourseVideos -------------------------- 💡 About NareshIT: "Naresh IT is having 14+ years of experience in software training industry and the best Software Training Institute for online training, classroom training, weekend training, corporate training of Hadoop, Salesforce, AWS, DevOps, Spark, Data Science, Python, Tableau, RPA , Java, C#.NET, ASP.NET, Oracle, Testing Tools, Silver light, Linq, SQL Server, Selenium, Android, iPhone, C Language, C++, PHP and Digital Marketing in USA, Hyderabad, Chennai and Vijayawada, Bangalore India which provides online training across all the locations -------------------------- 💡 Our Online Training Features: 🎈 Training with Real-Time Experts 🎈 Industry Specific Scenario’s 🎈 Flexible Timings 🎈 Soft Copy of Material 🎈 Share Videos of each and every session. -------------------------- 💡 Please write back to us at 📧 [email protected]/ 📧 [email protected] or Call us at the USA: ☎+1404-232-9879 or India: ☎ +918179191999 -------------------------- 💡 Check The Below Links ► For Course Reg: https://goo.gl/r6kJbB ► Subscribe to Our Channel: https://goo.gl/q9ozyG ► Circle us on G+: https://plus.google.com/+NareshIT ► Like us on Facebook: https://www.facebook.com/NareshIT ► Follow us on Twitter: https://twitter.com/nareshitek ► Follow us on Linkedin: https://goo.gl/CRBZ5F ► Follow us on Instagram: https://goo.gl/3UXYK3
Views: 41143 Naresh i Technologies
In this video I have explained what is range partitioning along with it's 2 real project use cases. I have also explained interval Partitioning as an extension of Range partitioning If you have not watched my Initial Videos on partitioning I will recommended watching them before watching this video Apologies for the 10 second video glitch between 6 and 7 minutes :(
Views: 5381 Tech Coach
This video covers the basics of indexes. Indexing is an extremely important step of database design. Without Indexes database queries can take a substantial amount of time and hog system resources. The main two classifications of indexes are clustered and non-clustered indexes. Clustered indexes are usually the primary key and determine how the data is actually stored in the table. These are the fastest and most effective. Non-clustered indexes sort a reference to data that is still fast but doesn't actually determine how the data is structured. The best tip I can give you is to use indexes but don't over use them. Having loads of indexes on columns that are barely ever in a where clause or join can bog down the database. This is because every time the table is updated the index must also be updated! When a database looks through a table for certain where conditions on a column that does not have an index, it does an entire table scan. This is not a good practice for large databases (or even small databases but not as bad). With an index the database will do an index seek and quickly find the data you are looking for. Composite indexes consist of two or more columns within one index. Use these when you plan on using the two columns together for a database query WHERE clause. Learn more about indexes here: https://www.calebcurry.com/blogs/database-design/introduction-to-indexes Donate!: http://bit.ly/DonateCTVM2. Courses for Download: http://www.udemy.com/u/calebcurry/ (Use the coupon code "YouTubeDiscount" without the quotes) Facebook: http://www.facebook.com/CalebTheVideoMaker Google+: https://plus.google.com/+CalebTheVideoMaker2 Twitter: http://Twitter.com/calebCurry Subscribe (it's free!): https://www.youtube.com/channel/UCZUyPT9DkJWmS_DzdOi7RIA?sub_confirmation=1 Amazing Web Hosting - http://bit.ly/ccbluehost (The best web hosting for a cheap price!)
Views: 98692 Caleb Curry
In this tutorial, OCM John Watson will - via demonstrations - debunk these myths: Myth #1: Oracle Database does not index NULL Myth #2: A search that includes wildcards can't use an index if the wildcard precedes the string. Myth #3: Oracle will not use a function-based index unless the FBI is coded in the predicate. Myth #4: Indexes always help. The more indexes the better. See http://skillbuilders.com/free-oracle-tutorials for gigabytes of free Oracle video tutorials.
Views: 16327 SkillBuilders
Load Balancing Advisory is a feature that helps SCAN LISTENER to balance load across the instances in Oracle RAC 11gR2. This video will help you deep dive into concepts and facts on the same. Look at the blog of this video at: www.orskl.com In need of Oracle DBA training: www.orskl.com/training WhatsApp for traning at : +919951696808
Views: 4296 OrSkl Academy
When you create an index on multiple columns there's an important question you need to answer: In which order should you list the columns? This video looks at some of the factors you should consider to help answer this question. ============================ The Magic of SQL with Chris Saxon Copyright © 2015 Oracle and/or its affiliates. Oracle is a registered trademark of Oracle and/or its affiliates. All rights reserved. Other names may be registered trademarks of their respective owners. Oracle disclaims any warranties or representations as to the accuracy or completeness of this recording, demonstration, and/or written materials (the “Materials”). The Materials are provided “as is” without any warranty of any kind, either express or implied, including without limitation warranties or merchantability, fitness for a particular purpose, and non-infringement.
Views: 4383 The Magic of SQL
http://kscope16.com http://kscope17.com To view Chris 's presentations go to http://odtug.com Finding All the Red M&Ms: A Story of Indexes and Full Table Scans Topic: Database - Subtopic: SQL “Why isn’t my query using an index?” is a common question people have when tuning SQL. This talk explores the factors that influence the optimizer’s decision behind this question. It does so by comparing fetching rows from a database table to finding all the red M&Ms from their bags. It contrasts using an index range scan and a full table scan to do this. It introduces the concepts of blocks and the clustering factor. It discusses how these affect the optimizer's calculations. It goes on to demonstrate how these concepts work in practice using real SQL queries. This session is intended for developers and DBAs who want to learn the basics of how the optimizer chooses between an index range or full table scan. SQL for Date Ranges and History Using Temporal Validity and Flashback Data Archive Topic: Database - Subtopic: SQL Keeping a full history of changes to a table is a common business requirement. Auditors and analysts often need to view data as it existed at some point in the past. This is to ensure regulation compliance or understand how the business is performing. This session discusses the challenges with writing the SQL to implement these requirements. It then introduces temporal validity and flashback data archive. It shows how you can use these features to simplify working with date ranges and history tables. This talk is for developers and/or DBAs who write SQL or build applications that use date ranges and/or capture past data.
Views: 23 ODTUG
Learn about Global Temporary Tables in Oracle Database. You will learn the internals of Global Temporary tables in Oracle database, and also a demo for the same. Our Upcoming Online Course Schedule is available in the url below https://docs.google.com/spreadsheets/d/1qKpKf32Zn_SSvbeDblv2UCjvtHIS1ad2_VXHh2m08yY/edit#gid=0 Reach us at [email protected]
Views: 6687 Ramkumar Swaminathan
Chris Saxon, a database evangelist, developer advocate, and SQL specialist with Oracle, uses up his two minutes with a tip on using heap tables and index organized tables in Oracle Database.
Views: 2816 ArchBeat Archive
In this video, you will learn how Checkpoints are used in Oracle GoldenGate. It helps you to understand the purpose of Checkpoints including, Transaction Integrity, Ordering transaction and recovery of processes after a stop or crash. Our Upcoming Online Course Schedule is available in the url below https://docs.google.com/spreadsheets/d/1qKpKf32Zn_SSvbeDblv2UCjvtHIS1ad2_VXHh2m08yY/edit#gid=0 Reach us at [email protected]com
Views: 4977 Ramkumar Swaminathan
Below is link for Useful Pl/SQL Books http://goo.gl/XMy0tt ---------------------------------------------------------- Difference Between Delete and Truncate in Detail On bigger picture they serve the same purpose but there are many Differences listed with examples Point Delete Truncate 1. Data Recovery Delete: Come under the DML Category, we need to commit or Rollback explicitly to make the changes permanent, so we can recover the data by Rollback command fully with in a session or up to a point if Save Points are used Fall In DDL Category (DDL Command issue the Auto commit implicitly) so no chances of Recovery even not using the Flashback table method. But Truncate operations are also logged , they didn’t generate redo SQL but they are logged , view for truncated data info V$LOGMNR_CONTENTS 2. Data Removal Delete Can remove all or selected data using the Where Clause predicates. Or we can say delete any subset of rows We can Truncate complete table or a partition or sub partition of a table. 3. Speed Delete is Slower because oracle maintain the redo logs for Read Consistency (so that every session connected can see a consistent data at a given point of time ) Delete is very time consuming activity especially when table have numerous indexes and Triggers associated with table Faster as no data logs are maintained no associated trigger firing. 4. DML Triggers Firing DML (Delete) triggers associated with table will fire. DML Trigger will not fire in case of truncate method. 5. Flashback Technology Data can be recovered even after commit operation using Flashback Table options Flashback_transaction_query table will give what to recover and up to which point. Data cannot be recovered in truncate method by Flashback table option. 6. Referential Integrity Constraint Behavior if we don’t have related data in child table then we can delete the data from the parent table or we have variants like On Delete Cascade & on Delete set Null. We can’t truncate a table with enable Referential Integrity Constraint, even there is no data in the child table, we have to disable or drop the constraint if we want to truncate the table. Exception: Truncate is possible if the FK is self-referential means primary key and foreign key are on the same table. 7. Space De allocation or Space Utilization No extent reset with delete when deleting rows from a table, extents are not de allocated, So if there were 50 extents in the table before the deletion, there will still be 50 after the deletion. Truncate: When a table is truncated it will free the space allocated except in case of reuse storage clause. This space can subsequently be used only by new data in the table or cluster resulting from insert or update operations .All extents are de allocated leaving only the extents specified when the table was originally created .Example So if the table was originally created with min extents 3, there will be 3 extents remaining when the tables is truncated. When you truncate a table, NEXT is automatically reset to the last extent deleted. 8. High Water Mark Delete will not reset the high water mark Truncate will reset the High Water mark which is very important for performance point of view as in case of full table scan and full index scan oracle will read all the block under high water mark this makes a lot of difference in terms of performance. 9. Cluster No as such restriction with delete. You cannot individually truncate a table that is part of a cluster. You must truncate the cluster, Delete all rows from the table, or drop and re-create the table. 10. Information Capturing Delete : we can capture the row information what we have deleted using Delete Method, f you are deleting multiple records then use composite data types (collections & records) Truncate Don’t have this feature of capturing the deleted records. 11. Function Based Index Impact DELETE You cannot delete rows from a table if a function-based index on the table has become invalid. You must first validate the function-based index. Truncate: No as such restriction 12. UNUSABLE Indexes Delete no as such feature. Truncate if table is not empty then truncate make all unusable indexes to useable. 13. Complex views You cannot delete data from a Complex view except through INSTEAD OF triggers. But we can delete data from simple Views and MV. We cannot truncate a view simple or complex but you can truncate MV with special Features like Preserve MV Logs and Purge MV Logs. 14. Privileges Delete You need to provide delete table privilege on object. Truncate you must have drop table privilege there is no truncate table privilege exists. 15. Domain Index No as such restriction You cannot truncate the object having domain index in invalid or In progress state
Views: 13570 Ram Gupta