Rodzaje indeksów w bazie danych Oracle

  Рет қаралды 3,349

nieinformatyk

nieinformatyk

Күн бұрын

✅Jakie są rodzaje indeksów w bazie danych? Czym te indeksy się od siebie różnią? Skąd wiedzieć jaki indeks mam stworzyć i którą kolumnę tabeli indeksować? Na te wszystkie pytania poznasz odpowiedź w tym nagraniu. Poznasz różne rodzaje indeksów(m.in. index b-tree, index bitmap) oraz ścieżki dostępu do danych(sql access path).
🎁 ODBIERZ PREZENTY
1) Książka o tym, jak się przebranżowić na bazodanowca: promo.podstawybazdanych.pl/
2) Lista najczęstszych błędach programistów PL/SQL: promo.plsql.pl/
== 🔗 Przydatne linki z nagrania:==
📥kod z lekcji do pobrania: drive.google.com/file/d/1rMc1...
🏷️Skrypt z poprzedniej lekcji: drive.google.com/file/d/1KzG_...
🏷️Struktura indeksu B-tree: docs.oracle.com/en/database/o...
🏷️Co to jest indeks? • Indeks w bazie danych ...
🏷️Dlaczego indeks przyśpiesza zapytania SQL? • Dlaczego indeks przyśp...
🏷️Czym różni się hurtownia danych od bazy danych: • Hurtownia danych - co ...
📚Książka Oracle Expert Indexing: www.oreilly.com/library/view/...
== 👌 Polecam obejrzeć:==
• Jak sprytnie wykorzyst...
• Co to jest ETL, czyli ...
== ⏱️ Plan odcinka:==
00:00 start
01:39 rodzaje indeksów(B-tree, bitmap)
03:31 czym jest struktura B-tree indeksu?
05:36 co to jest ścieżka dostępu?(oracle access path)
10:01 praktyczne przykłady indeksowania bazy danych
18:01 co jest najważniejsze w nauce optymalizacji zapytań SQL?
#bazodanowiec
== 👨‍💻 Poznaj mniej lepiej:==
* Moja strona: www.nieinformatyk.pl/
* Kod z odcinka: www.nieinformatyk.pl/pliki
* Facebook: / nieinformatyk
* Linkedin: / darekbutkiewicz
* Instagram: / nieinformatyk
* Twitter: / nieinformatyk
Zasubskrybuj mój kanał: kzfaq.info...
🏁 Witaj na moim kanale :)
Jestem programistą baz danych Oracle oraz developerem hurtownii danych (ETL). W tym miejscu dzielę się z oglądającymi wiedzą dotyczącą relacyjnych baz danych, praktycznych technik pisania SQL oraz optymalizacji kodu PL/SQL. Jeśli chcesz zdobyć praktyczną i rzetelną więdzę o bazach danych to trafiłeś na właściwe miejsce.
🚨 Więcej informacji o bazach danych znajdziesz na www.nieinformatyk.pl
📧 Masz pytanie, prośbę, sugestię? Pisz śmiało na kontakt@nieinformatyk.pl

Пікірлер: 32
@agniesia634
@agniesia634 Жыл бұрын
Mało jest informacji na ten temat, a ty jak zrobisz materiał to człowiek obejrzy rozumie świetna robota dziękuję 👍😃
@nieinformatyk
@nieinformatyk Жыл бұрын
cieszę się, że nagranie przypadło do gustu :)
@krzysztofkramarz5514
@krzysztofkramarz5514 4 ай бұрын
Bardzo fajny film. Polubione
@nieinformatyk
@nieinformatyk 4 ай бұрын
dziękuję :)
@marcinn7518
@marcinn7518 6 ай бұрын
Dzięki za ten film
@nieinformatyk
@nieinformatyk 6 ай бұрын
Proszę bardzo :)
@sebon11
@sebon11 Жыл бұрын
Ooo jest cz 2 odcinka sprzed 2 lat, super, zara będzie oglądane, cz1 była super
@ArkadiuszManko
@ArkadiuszManko Жыл бұрын
Jak zawsze pełen profesjonalizm :)
@nieinformatyk
@nieinformatyk Жыл бұрын
Dzięki Arek :)
@jakubnurzynski2966
@jakubnurzynski2966 Жыл бұрын
Super materiał 🏆
@nieinformatyk
@nieinformatyk Жыл бұрын
dzięki :)
@carlm8148
@carlm8148 Жыл бұрын
Świetny materiał.
@nieinformatyk
@nieinformatyk Жыл бұрын
dzięki :)
@vorbizasca3739
@vorbizasca3739 Жыл бұрын
Super!
@nieinformatyk
@nieinformatyk Жыл бұрын
dzięki :)
@MeggaFelipe
@MeggaFelipe Жыл бұрын
#zasieg
@nieinformatyk
@nieinformatyk Жыл бұрын
Dzięki :)
@TomaszTomzik
@TomaszTomzik Жыл бұрын
Fajnie obejrzę, super że są indeksy... ale kiedy ORACLE ogarnie się jeśli chodzi o prawidłowe plany przy niektórych zapytaniach gdzie używamy klauzuli OR :D... bo wstyd jakby jakaś podścianowa baza danych ;)
@nieinformatyk
@nieinformatyk Жыл бұрын
jakiś przykład możesz podesłać? bo nie bardzo mam jak się do tego odnieść :)
@TomaszTomzik
@TomaszTomzik Жыл бұрын
@@nieinformatyk Myślałem, że jest Ci temat znany!. (ProductNr='1111') vs (1=2 OR ProductNr='1111'), ten drugi czasami zepsuje wszystko i liczy się 30 razy dłużej. Przykład jest na oracle community temat: Slow query when using OR operater in WHERE clause (bo linka przecież nie wstawie)
@nieinformatyk
@nieinformatyk Жыл бұрын
@@TomaszTomzik a udało Ci się wygenerować taki problem? Bo mi wygląda podejrzanie. Sporo postów ludzi w internecie jest niezgodnych z prawdą, bo coś przeoczą. Poproszę o DDL-kę tabeli, insert ładujący dane i te 2 SELECT-y. Zerknę w plan i powiem o co chodzi :)
@TomaszTomzik
@TomaszTomzik Жыл бұрын
@@nieinformatyk spotkałem się z tym kilkakrotnie, problem ujawnia się co jakiś czas (zapytanie chodzi dobrze przez pół roku a tu nagle klops), dodatkowo na bardzo dużych zapytaniach często z widokami ale nie koniecznie jeśli chodzi o to drugie. Wiesz co jak natrafię znowu na taki przypadek (raz na miesiąc dwa trafiam) podeślę selekt i plany zapytań ;) Ale generalnie info potwierdzone na 100%, i to od wersji 11g do 19c, do bardzo skomplikowanego zapytania dodany zwykły OR 1=1 i całe zapytanie szlak trafia.
@nieinformatyk
@nieinformatyk Жыл бұрын
@@TomaszTomzik a może zmienia się rozkład danych, np. po jakimś procesie ETL a w zapytaniu zapisane są hinty? Maciej wykupiony support by zgłosić problem? :)
@kozlo1
@kozlo1 Жыл бұрын
12:13 która kolumna ma mieć null? W podanym przykładzie nie ma żadnej kolumny mającej null. Employee_id zawsze ma wartość. Po co piszemy WHERE employee_id IS NOT NULL, gdy Employee_id nigdy nie jest null (ma wartości od 100 do 119)
@nieinformatyk
@nieinformatyk Жыл бұрын
pracownicy.employee_id. Zauważ, że ta kolumna nie ma constrainta NOT NULL. CREATE TABLE pracownicy ( employee_id NUMBER(6) , first_name VARCHAR2(20) , last_name VARCHAR2(25) , email VARCHAR2(25) NOT NULL , phone_number VARCHAR2(20) , hire_date DATE NOT NULL , job_id VARCHAR2(10) NOT NULL , salary NUMBER(8,2) , commission_pct NUMBER(2,2) , manager_id NUMBER(6) , department_id NUMBER(4) ); A skoro nie ma constrainta NOT NULL to skąd baza danych ma wiedzieć, że w tym polu nie ma nulli? Statystyki nie przechowują takich informacji, więc baza nie wie czy tam NULL jest czy nie. Wie tyle, że NULL jest możliwy. W związku z czym skoro nie ma ograniczenia pilnującego by nikt tam NULL-a nie wpisał to baza przeczyta tabelę, w obawie przed pominięciem nullowych rekordów, których w indeksie nie będzie. To, że w praktyce wszystkie rekordy w tabeli mają wartość w kolumnie employee_id nie ma znaczenia.
@Wilq09
@Wilq09 Жыл бұрын
Świetny materiał i fajnie, że wchodzisz na wyższy level, ale ten explain plan boli. W praktyce tylko execution ma sens
@nieinformatyk
@nieinformatyk Жыл бұрын
Dzięki. Masz na myśli, że nie ma sensu czytać planu, bo przy wykonaniu baza danych może użyć inny? Owszem, jest to możliwe, ale to raczej rzadkość.
Jak przyśpieszyć zapytanie SQL, czyli ścieżki dostępu do danych
22:59
Praca z tabelą i constraintami w SQL
20:06
nieinformatyk
Рет қаралды 1,6 М.
Became invisible for one day!  #funny #wednesday #memes
00:25
Watch Me
Рет қаралды 60 МЛН
DAD LEFT HIS OLD SOCKS ON THE COUCH…😱😂
00:24
JULI_PROETO
Рет қаралды 15 МЛН
Indeks w bazie danych   co to jest i jak działa #62
16:35
nieinformatyk
Рет қаралды 26 М.
Kariera w świecie danych - rozmowa z Piotrem Rosiakiem
55:58
Wiktor Feduń Tech
Рет қаралды 143
LEARN BITMAP INDEXES
13:20
Tech Dummies Narendra L
Рет қаралды 70 М.
Transakcja sql - to co jest i jak działa w bazie danych?
18:47
nieinformatyk
Рет қаралды 10 М.
Poziomy izolacji sql - wyjaśnienie dla laika + przykłady
27:36
nieinformatyk
Рет қаралды 3,7 М.
Projektowanie Indeksów w SQL Server
1:34:48
Cezary Walenciuk
Рет қаралды 5 М.
Indexing in Oracle :B-Tree,Bitmap Indexing
25:47
Tech Coach
Рет қаралды 88 М.
Опасность фирменной зарядки Apple
0:57
SuperCrastan
Рет қаралды 2,9 МЛН
ВАЖНО! Не проверяйте на своем iPhone после установки на экран!
0:19
ГЛАЗУРЬ СТЕКЛО для iPhone и аксессуары OTU
Рет қаралды 6 МЛН