Article View: pl.comp.bazy-danych
Article #194733Re: Relacje w praktyce
From: M.M.
Date: Wed, 16 Dec 2015 13:36
Date: Wed, 16 Dec 2015 13:36
40 lines
3492 bytes
3492 bytes
On Wednesday, December 16, 2015 at 1:34:49 PM UTC+1, szemrany wrote: > Chodziło mi o to, że każdy kolejny JOIN eliminuje przetwarzane rekordy i > zawęża zbiór przetwarzanych danych, tym samym ogranicza liczbę odczytów z > pliku. Ok, a jakie z kolei jest tego uzasadnienie? Moim zdaniem operacje wykonywane w joinie wymagają takiego samego przetworzenia jak w podzapytaniu. > Złączenie dwóch tabel po kluczu obcym da w wyniku zbiór o > liczebności nie większej niż większa z tabel, w praktyce zazwyczaj > mniejszy. > Z kolei zapytanie typu scalar subquery, czyli: > > select > Pole1, > (select PoleTB from TabelaB) as Pole2, > (select PoleTC from TabelaC) as Pole3 > from TabelaA > > powoduje, że dla każdego rekordu TabeliA przeczesujemy wielokrotnie całą > TabelęB, TabelęC etc. tym samym nie redukując liczby odczytów danych. Moim zdaniem dla każdego rekordu z TabelaA przeszukamy tylko jeden raz TableaB i TabelaC, a jeśli TabelaB i TabelaC mają założone jakieś indeksy, to nie będą przeszukane całe. > Wszystko oczywiście w jakiejś mierze redukują optymalizatory, cache, > indeksy, szybkie dyski itd., ale jak pisałem, nie skupiałem się na sprzęcie > i implementacji algorytmów tylko teorii złączeń. Właśnie bym chciał się dowiedzieć o co chodzi w tej teorii. > Żeby to zweryfikować mależałoby stworzyć jakąś bazę i nasycić ją > odpowiednią dużą ilością danych, tak, żeby dało się dostrzec rosnące > różnice w czasie. W moich doświadczeniach bywało rożnie, nie zawsze zapytanie z join działało szybciej. Pozdrawiam
Technical Details
Message-ID:
<0036ff34-efd0-44a5-a3e8-41f86342b9fc@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!mv3no12779125igc.0!news-out.google.com!f6ni24646igq.0!nntp.google.com!mv3no12779122igc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<1wybpc8c36lsd$.1fen7ule9h1jh$.dlg@40tude.net> <6afe3f6d-b8e9-46af-a682-e1f741c1de22@googlegroups.com> <n4e4mk$sr7$1@usenet.news.interia.pl> <df04af2d-5b69-4906-a05e-ce9bf9af9b07@googlegroups.com> <1tjc7yjmiqguh.11krnzpakf6ri$.dlg@40tude.net> <b79ad5ec-846e-43f5-accf-6eb2f699101d@googlegroups.com> <nk4lort1sib1.kctbavh9wc3g.dlg@40tude.net> <03a7d4b6-93fc-4411-a16b-d09b01180800@googlegroups.com> <6l5i9ybjsi0b$.1dg8u6yw4z4jz$.dlg@40tude.net> <0a73ecf6-e077-41a9-8b13-8334ef196d00@googlegroups.com> <l5s51r5k1n8r$.1c55652qehijb$.dlg@40tude.net> <deab76ac-dc90-41a5-b160-4ab93cbef450@googlegroups.com> <izzsm6fj3oc5$.1huqgrqsag8ft$.dlg@40tude.net> <1ddns001oye6c.1esk5mwsirwbh$.dlg@40tude.net>Show Full Headers
Complete Article Headers
X-Received: by 10.50.114.4 with SMTP id jc4mr8329734igb.5.1450273004533; Wed, 16 Dec 2015 05:36:44 -0800 (PST) X-Received: by 10.182.241.195 with SMTP id wk3mr549688obc.8.1450273004514; Wed, 16 Dec 2015 05:36:44 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!mv3no12779125igc.0!news-out.google.com!f6ni24646igq.0!nntp.google.com!mv3no12779122igc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.bazy-danych Date: Wed, 16 Dec 2015 05:36:44 -0800 (PST) In-Reply-To: <1ddns001oye6c.1esk5mwsirwbh$.dlg@40tude.net> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=77.254.47.3; posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj NNTP-Posting-Host: 77.254.47.3 References: <1wybpc8c36lsd$.1fen7ule9h1jh$.dlg@40tude.net> <6afe3f6d-b8e9-46af-a682-e1f741c1de22@googlegroups.com> <n4e4mk$sr7$1@usenet.news.interia.pl> <df04af2d-5b69-4906-a05e-ce9bf9af9b07@googlegroups.com> <1tjc7yjmiqguh.11krnzpakf6ri$.dlg@40tude.net> <b79ad5ec-846e-43f5-accf-6eb2f699101d@googlegroups.com> <nk4lort1sib1.kctbavh9wc3g.dlg@40tude.net> <03a7d4b6-93fc-4411-a16b-d09b01180800@googlegroups.com> <6l5i9ybjsi0b$.1dg8u6yw4z4jz$.dlg@40tude.net> <0a73ecf6-e077-41a9-8b13-8334ef196d00@googlegroups.com> <l5s51r5k1n8r$.1c55652qehijb$.dlg@40tude.net> <deab76ac-dc90-41a5-b160-4ab93cbef450@googlegroups.com> <izzsm6fj3oc5$.1huqgrqsag8ft$.dlg@40tude.net> <1ddns001oye6c.1esk5mwsirwbh$.dlg@40tude.net> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <0036ff34-efd0-44a5-a3e8-41f86342b9fc@googlegroups.com> Subject: Re: Relacje w praktyce From: "M.M." <mmarszik@gmail.com> Injection-Date: Wed, 16 Dec 2015 13:36:44 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit