W życiu mamy często do czynienia z hierarchią. Problem pojawia się jak mamy ją odpowiednio zapisać w bazie danych, żeby później z niej efektywnie korzystać. W ramach sesji będą przedstawione zagadnienia związane zarówno z reprezentacją hierarchii przy użyciu złączenia self-join, jak i przy użyciu nowego typu hirarchyid. W ramach sesji przedstawione będą metody korzystania z obu reprezentacji i porównanie ich wydajności.
Prezentacja z konferencji 2nd Sielesian CodeCamp która odbyła się 9 kwietnia 2011 roku.
Łukasz Grala - WSKIZ 2009-04-07 It Academic - SQL Server 2008 - Nowości Adm...
Reprezentacja hierarchii w SQL Server 2008/2008R2 - 2nd Silesian CodeCamp
1.
2. Reprezentacja i obsługa hierarchii w SQL Server 2008/2008R2 Łukasz Grala MVP SQL Server | MCT
3. Łukasz Grala – MVP SQL Server | MCT Niezależny konsultant (bazy i hurtownie danych, data mining, analiza danych, audyty baz danych – SQL Server, BI, SQL Azure, konsolidacja BI w SharePoint 2010) Trener technologii Microsoft, wykładowca na wyższych uczelniach Lider Polish SQL Server User Group (PLSSUG) Poznań Prelegent na wielu konferencjach informatycznych Prowadzi blogi: http://powerpivot.info.pl http://sqlresearch.com Kontakt: lukasz@grala.biz
4. Agenda Co to jest hierarchia? Hierarchie w SQL Server 2008/2008R2 Self-Join i rekurencja Typ hierarchyid Metody hierarchyid Porównanie metod reprezentacji lukasz@grala.biz
6. Hierarchie Słownik Pracownicy Organizacja BoM (Bill of Material) Zadania w projekcie System plików Wizualizacja stron web (mapa serwisów) Klas / Obiektów lukasz@grala.biz
18. Self-Join i rekurencja AnchorMember – początek drzewa rekurencji Operator UNION ALL RecursiveMember – połączenie self-join z CTE SELECT ManagerID, EmployeeID FROM Employee WHERE ManagerID = NULL UNION ALL SELECT c.ManagerID, e.EmployeeID FROM Employee e JOIN CTE c ON c.EmoloyeID = e.ManagerID lukasz@grala.biz
24. Indeksy CREATE CLUSTERED INDEX Org_Breadth_First ON Organization(OrgLevel, BusinessEtityID); CREATE UNIQUE INDEX Org_Depth_First ON Organization(BusienssEntityID); lukasz@grala.biz
34. Pytania? Prowadzi blogi: http://powerpivot.info.pl http://sqlresearch.com Kontakt: lukasz@grala.biz
35. Dziękuję za uwagę Prowadzi blogi: http://powerpivot.info.pl http://sqlresearch.com Kontakt: lukasz@grala.biz
Notas del editor
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica
Grafy – cykliczne, acykliczne, Drzewo – acykliczny graf, gdzie między dodolnymi dwoma węzłami istnieje tylko jedna ścieżkaHierarchia – drzewo z jednym korzeniem, gdzie każdy następny węzeł ma jednego rodzica