SQL Flashcards

1
Q

Co to jest baza danych?

A

Oprogramowanie majace na celu pomoc w zarzarzadzaniu danymi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Co to jest relacyjna bazy danych?

A

Relacyjna baza danych, zaproponowana przez Edgara Codda, to struktura przechowująca dane zorganizowane w tabelach, gdzie relacje między nimi są określone poprzez klucze, umożliwiając efektywne zarządzanie i analizę danych w sposób spójny i zgodny z zasadami teorii relacyjnych baz danych.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Co to jest Tabela?

A

Tabela (inaczej encja, klasa obiektów, relacja) – to podstawowa struktura modelowania niezależnych, odrębnych obiektów, o których informacje chcemy przechowywać w bazie.
Każda tabela powinna przechowywać informacje jedynie o ściśle określonych obiektach konkretnego typu. Na przykład informacje dotyczące pracowników (tabela Pracownicy), albo tylko samochodów, zamówień, produktów itp. – każda typ = nowa tabela . Informacje w ramach tabeli, powinny być więc jednorodne ze względu na typ obiektu którego dotyczą.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Co to jest kolumna?

A

ATRYBUT w praktyce, to nic innego jako KOLUMNA. Zatem tłumacząc na model relacyjny, każda TABELA opisana jest za pomocą zbioru KOLUMN. Każda KOLUMNA jest ściśle określona TYPEM DANYCH, czyli przechowuje wartości jednorodne, z określonej DZIEDZINY (tego samego typu np. liczby, znaki, daty etc). Nazwa kolumny w ramach tabeli musi być unikalna, bo silnik musi jednoznacznie wiedzieć do którego atrybutu będziemy się odnosić.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wiersz + Duplikaty

A

To pojedynczy egzemplarz, czyli obiekt opisany wszystkimi ATRYBUTAMI danej RELACJI. KROTKA to nic innego jak WIERSZ czy REKORD. W języku programistów możemy mówić o EGZEMPLARZU danej KLASY.

Każda tabela to zbiór wierszy. Zgodnie z matematyczną teorią zbiorów, każdy z definicji jest nieuporządkowany. Stąd każda tabela to zbiór elementów (wierszy) w którym zakładamy, że kol
ejność nie jest ustalona.

Teoria zbiorów, mówi o jeszcze jednej bardzo ważnej zasadzie. Braku duplikatów w zbiorze.
Wartość informacyjna każdego duplikatu w zbiorze jest równa zero. Co więcej wprowadza dużo zamieszania. Jak obsłużyć sytuację, kiedy chcielibyśmy zmodyfikować tylko jeden z nich? Jak mielibyśmy wskazać ten o który nam chodzi skoro są identyczne?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

KLUCZ PODSTAWOWY/GLOWNY (PRIMARY KEY)

A

Klucz podstawowy/glowny służy do zapewnienia, że dane w określonej kolumnie są unikatowe. Kolumna nie może mieć wartości NULL i musi być najkrotsza. Jest to albo istniejąca kolumna tabeli, albo kolumna, która jest generowana przez bazę danych zgodnie ze zdefiniowaną sekwencją.

Klucz główny (Primary Key) jest unikalnym identyfikatorem dla każdego rekordu w tabeli, a klucz obcy (Foreign Key) to kolumna, która odnosi się do klucza głównego w innej tabeli. Klucze obce umożliwiają nawiązywanie relacji między różnymi tabelami w bazie danych.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

KLUCZ OBCY (Foreign Key)

A

Klucz obcy to kolumna lub grupa kolumn w tabeli relacyjnej bazy danych, która zapewnia łącze między danymi w dwóch tabelach. Jest to kolumna (lub kolumny), która odwołuje się do kolumny (najczęściej klucza podstawowego) innej tabeli.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Nierelacyjna baza danych (NoSQL):

A

Nierelacyjne bazy danych, często nazywane bazami danych NoSQL, są przeznaczone do obsługi danych nieustrukturyzowanych i nie są powiązane z tradycyjnym modelem relacyjnej bazy danych.

Nierelacyjna baza danych to struktura przechowująca dane, która nie korzysta z tradycyjnych tabel i relacji, a zamiast tego wykorzystuje różne modele przechowywania, takie jak dokumenty, grafy czy kolumny, co umożliwia elastyczne zarządzanie różnorodnymi typami danych. MONGODB

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

OLAP

A

Online Analytical Processing to technologia umożliwiająca dynamiczną analizę dużych zbiorów danych, pozwalając użytkownikom na przeglądanie, manipulowanie i analizowanie informacji w wielowymiarowy sposób w celu efektywnego podejmowania decyzji biznesowych.

Innymi słowy, jest używane do efektywnego kosztowo i czasowo analizowania ogromnych danych z różnych źródeł, przeprowadzania złożonych analiz i generowania raportów.

Przykłady hurtowni danych OLAP to:
Amazon Redshift, Snowflake, Microsoft Azure Synapse Analytics i Google BigQuery.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

ROZNICE SQL vs NOSQL

A

Struktura danych:
Relacyjne bazy danych używają tabel z predefiniowanym schematem (strukturą), w których dane są zorganizowane w wierszach i kolumnach.
Bazy danych NoSQL są bez schematu lub mają schemat dynamiczny, co pozwala na większą elastyczność w przechowywaniu danych.

Skalowalność:
Relacyjne bazy danych zwykle skalują się w pionie przez zwiększenie mocy (procesora CPU, pamięci RAM) pojedynczego serwera.
Bazy danych NoSQL są przeznaczone do skalowania w poziomie przez dodanie większej liczby serwerów do bazy danych.

Język zapytań:
Relacyjne bazy danych używają języka SQL (Structured Query Language) do definiowania danych i manipulowania nimi.
Bazy danych NoSQL używają różnych języków zapytań lub interfejsów API w zależności od typu bazy danych.

Możliwości zastosowania:
Relacyjne bazy danych są odpowiednie dla aplikacji ze złożonymi zapytaniami i transakcjami, w których integralność danych ma kluczowe znaczenie. Bazy danych NoSQL są często używane w scenariuszach wymagających wysokiej skalowalności, elastyczności i obsługi dużych ilości danych bez struktury.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

OLTP

A

Online Transaction Processing to technologia przetwarzania transakcyjnego online, która obsługuje bieżące, operacyjne operacje biznesowe, zapewniając szybkie i niezawodne wprowadzanie danych oraz aktualizacje w czasie rzeczywistym.OLTP oznacza Online Transaction Processing. OLTP jest używane do przetwarzania transakcji w czasie rzeczywistym. W prostych słowach, OLTP to baza danych produkcyjna, która zarządza takimi rzeczami jak zamówienia użytkowników, subskrypcje, zapasy itp.

OLTP scales vertically odnosi się do strategii zwiększania wydajności poprzez dodawanie zasobów do jednego, silnego serwera w systemie OLTP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

NULL

A

Specjalna wartość, która wskazuje na to, ze w danym polu lub kolumnie jest brak wartosci, jest puste lub nieznane

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Constraints

A

Constrain to ograniczenie lub reguła narzucona na dane w kolumnie do utrzymania integralności danych, kontrolując dopuszczalne wartości lub relacje między nimi; przykłady obejmują klucze główne, klucze obce, unikalność oraz reguły sprawdzania.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Rodzaje Constrainow

A

Primary Key Constraint:
Określa unikalny identyfikator dla każdego rekordu w tabeli. Zapewnia jednoznaczną identyfikację rekordów.

Unique Constraint:
Zapewnia, że wartości w danej kolumnie (lub grupie kolumn) są unikalne, ale pozwala na wartość NULL.

Foreign Key Constraint:
Ustanawia relację między tabelami, gdzie klucz w jednej tabeli odnosi się do klucza w innej tabeli. Zapewnia integralność referencyjną.

Check Constraint:
Określa warunek, który wartości w danej kolumnie muszą spełnić, aby były zapisywane w bazie danych.

NOT NULL Constraint:
Wymusza, że każda wartość w danej kolumnie musi być różna od NULL.

Default Constraint:
Określa wartość domyślną dla danej kolumny, która będzie używana, jeśli nie zostanie dostarczona żadna inna wartość.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

JOINY

A
  • (INNER) JOIN: Returns records that have matching values in both tables
  • LEFT (OUTER) JOIN: Returns all records from the left table, and the matched records from the right table
  • RIGHT (OUTER) JOIN: Returns all records from the right table, and the matched records from the left table
  • FULL (OUTER) JOIN: Returns all records when there is a match in either left or right table

CROSS JOIN to rodzaj złączenia (join), które łączy każdy wiersz z jednej tabeli z każdym wierszem z drugiej tabeli. Nie ma żadnych warunków dotyczących dopasowania wierszy między tabelami, co oznacza, że każdy wiersz z jednej tabeli jest łączony z każdym wierszem z drugiej tabeli.

W kontekście dwóch zbiorów, iloczyn kartezjański to zbiór wszystkich możliwych uporządkowanych par elementów, gdzie pierwszy element pochodzi z pierwszego zbioru, a drugi z drugiego zbioru.

SELF JOIN aliasujemy tabele ta1, ta2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

SQL injection

A

Atak polegający na wprowadzeniu złośliwego kodu SQL do zapytania SQL, które jest dynamicznie tworzone przez aplikację. Atakujący wykorzystuje braki w zabezpieczeniach wejściowych, takich jak formularze na stronie internetowej, aby wstrzyknąć złośliwy kod SQL do zapytania, które jest później przetwarzane przez bazę danych. Atak ten ma na celu manipulowanie zapytaniami SQL w celu uzyskania dostępu do poufnych informacji, modyfikowania danych w bazie danych lub wykonywania innych niepożądanych operacji.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Trigger (wyzwalacz)

A

Trigger (wyzwalacz) - operacja w skutek wystąpienia określonego zdarzenia. Zdarzenia,ktore moga wywowalywac trigger to DML(inster,update, delete) i DDL(create, alter) Mozemy np. w momencie insertowanie danych sprawdzic jakis warunek tych danych

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Normalizacja

A

To technika projektowania bazy danych używana do organizowania danych w relacyjnej bazie danych w celu zmniejszenia nadmiarowości i poprawy integralności danych.

Celem normalizacji jest ustrukturyzowanie schematu bazy danych w sposób, który minimalizuje duplikowanie danych i zależność, co prowadzi do bardziej wydajnej i łatwiejszej w utrzymaniu bazy danych.

Istnieje kilka normalnych form (1NF, 2NF, 3NF, BCNF itp.), z których każda odnosi się do różnych aspektów redundancji i zależności. Najczęstsze z nich to:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

OFFSET 5 ROWS i FETCH NEXT 10 ROWS ONLY

A

OFFSET 5 ROWS
Oznacza, że pominięte zostaną pierwsze 5 wierszy wyników posortowanych według kolumny.

FETCH NEXT 10 ROWS ONLY
Oznacza, że następnie zostaną pobrane 10 wierszy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Pierwsza postać normalna (1NF):

A

Zapewnia, że każda kolumna zawiera wartości niepodzielne i że wszystkie wpisy w kolumnie mają ten sam typ danych.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Druga postać normalna (2NF):

A

Opiera sie na 1NF i zapewnia, ze wszystkie kolumny zalezne sa od jednego klucza glownego. W praktyce dzielimy tabele na dwie, zeby zniwelowac redundancje danych i jasno okreslic jakie dane chcemy przechowywac w danej tabeli. Czyli np. nie laczyc marki samochodu z id pracownika(gdzie jest to klucz glowny tabeli pracownicy)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Trzecia postać normalna (3NF):

A

Opiera się na 2NF i eliminuje zależności przechodnie. Gwarantuje, że atrybuty niebędące kluczami nie są zależne od innych atrybutów niebędących kluczami.

Oznacza to, że dane muszą być logicznie uporządkowane i nie może być “pośrednich” zależności między kolumnami niekluczowymi.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

ACID

A

To akronim oznaczający atomowość, spójność, izolację i trwałość. Jest to zestaw właściwości, które gwarantują niezawodność i integralność transakcji w systemie relacyjnej bazy danych. Te właściwości zapewniają, że transakcje bazy danych są przetwarzane niezawodnie nawet w przypadku błędów, awarii systemu lub jednoczesnego dostępu wielu użytkowników.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Atomicity:

A

Atomowość zapewnia, że transakcja jest traktowana jako pojedyncza, niepodzielna jednostka pracy. Albo wszystkie operacje w ramach transakcji zostały zakończone pomyślnie, albo żadna z nich nie jest. Jeśli jakakolwiek część transakcji zakończy się niepowodzeniem, cała transakcja zostanie wycofana do stanu początkowego, zachowując spójność bazy danych.

Właściwości ACID mają kluczowe znaczenie dla utrzymania integralności i niezawodności danych w systemach baz danych, szczególnie w sytuacjach, gdy wiele transakcji może być wykonywanych jednocześnie. Te właściwości pomagają zagwarantować, że baza danych pozostaje w prawidłowym i spójnym stanie, nawet w obliczu nieoczekiwanych zdarzeń lub błędów podczas przetwarzania transakcji. Większość systemów zarządzania relacyjnymi bazami danych (RDBMS), takich jak MySQL, PostgreSQL i Oracle, jest zgodna z zasadami ACID.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Consistency:

A

Spójność zapewnia, że transakcja przenosi bazę danych z jednego prawidłowego stanu do innego. Baza danych musi być zgodna z zestawem reguł i ograniczeń zdefiniowanych przez schemat. Jeśli transakcja narusza którąkolwiek z tych reguł, jest wycofywana, a baza danych pozostaje w spójnym stanie.

23
Q

Isolation:

A

Izolacja zapewnia, że realizacja transakcji jest od siebie niezależna. Każda transakcja wydaje się być wykonywana w izolacji, bez zakłóceń ze strony innych równolegle wykonywanych transakcji. Ta właściwość zapobiega interferencji stanów niekompletnych lub pośrednich jednej transakcji z drugą. Różne poziomy izolacji, takie jak Odczyt niezatwierdzony, Odczyt zatwierdzony, Powtarzalny odczyt i Serializowalny, definiują stopień izolacji w systemie bazy danych.

24
Q

Durability:

A

Trwałość zapewnia, że raz zatwierdzona transakcja jej skutki są trwałe i przetrwają kolejne awarie, takie jak przerwy w dostawie prądu lub awarie. Zatwierdzone zmiany są przechowywane na stałe w bazie danych, a nawet w przypadku awarii systemu baza danych może zostać przywrócona do spójnego stanu

25
Q

CRUD

A

Create (Tworzenie): Dodawanie nowych danych do systemu. Na przykład, dodawanie nowego rekordu do bazy danych.

Read (Odczyt): Pobieranie danych z systemu. To może obejmować odczytanie jednego lub wielu rekordów z bazy danych.

Update (Aktualizacja): Modyfikowanie istniejących danych w systemie. Przykładowo, aktualizacja informacji w rekordzie bazy danych.

Delete (Usuwanie): Usuwanie danych z systemu. To może obejmować usunięcie jednego lub wielu rekordów z bazy danych.

26
Q

MERGE

A

Operacja MERGE jest przydatna w sytuacjach, gdzie chcemy synchronizować dane między dwiema tabelami na podstawie określonych warunków, eliminując konieczność stosowania wielu zapytań INSERT, UPDATE i DELETE.

27
Q

DROP, DELETE, TRUNCATE

A

Polecenie DROP całkowicie usuwa tabelę z bazy danych, w tym strukturę tabeli i wszystkie skojarzone ograniczenia, relacje z innymi tabelami i prawa dostępu. TRUNCATE usuwa wszystkie wiersze z tabeli bez wpływu na strukturę tabeli i ograniczenia. DROP działa wolniej niż TRUNCATE. Oba są nieodwracalnymi poleceniami DDL (Data Definition Language).

DELETE to odwracalne polecenie DML (Data Manipulation Language) służące do usuwania jednego lub większej liczby wierszy z tabeli na podstawie warunków określonych w klauzuli WHERE. Zamiast tego TRUNCATE jest nieodwracalnym poleceniem DDL (Data Definition Language) używanym do usuwania wszystkich wierszy z tabeli. Polecenie DELETE działa wolniej niż TRUNCATE. Nie możemy również użyć instrukcji TRUNCATE dla tabeli zawierającej klucz obcy.

28
Q

DATA TYPES

A

Numeric data types such as: INT, TINYINT, BIGINT, FLOAT, REAL, etc.
Date and Time data types such as: DATE, TIME, DATETIME, etc.
Character and String data types such as: CHAR, VARCHAR, TEXT, etc.
Unicode character string data types such as: NCHAR, NVARCHAR, NTEXT, etc.
Binary data types such as: BINARY, VARBINARY, etc.
Miscellaneous data types: CLOB, BLOB, XML, CURSOR, TABLE, etc

29
Q

KONWERSJE JAWNE I NIEJAWNE

A

Konwersje niejawne wykonywane są przez silnik bazy danych automatycznie, bez udziału i wiedzy użytkownika. Przykładowo gdy wartość typu SMALLINT porównywana jest z wartością typu INT, w celu porównania wartość SMALLINT zostanie uprzednio skonwertowana na typ INT.
Konwersje jawne wykonywane są na wyraźne polecenie użytkownika za pośrednictwem wywołanej przez niego funkcji CAST lub CONVERT, np. CAST ( 120 AS VARCHAR(10) ).

30
Q

Co to jest transakcja?

A

Transakcja jest jednostką pracy lub zestawem instrukcji DML (tj. INSERT, UPDATE i DELETE), które powinny być wykonywane jako jedna jednostka. Transakcja gwarantuje, że wszystkie polecenia zakończą się powodzeniem lub żadne z nich. Jeśli jedno z poleceń w transakcji zakończy się niepowodzeniem, wszystkie polecenia zakończą się niepowodzeniem, a wszystkie dane zmodyfikowane w bazie danych zostaną wycofane

31
Q

COMMIT

A

COMMIT jest poleceniem używanym w transakcyjnych systemach zarządzania bazą danych do potwierdzenia wszystkich operacji dokonanych w trakcie trwania danej transakcji.

32
Q

ROLLBACK

A

ROLLBACK jest poleceniem używanym do cofnięcia wszystkich operacji wykonanych w trakcie trwania danej transakcji.

33
Q

DCL

A

Czyli Data Control Language, to część języka SQL odpowiedzialna za kontrolę dostępu do danych. W ramach DCL występują polecenia służące do zarządzania uprawnieniami (prawami dostępu) do różnych obiektów w bazie danych. GRAN i REVOKE

34
Q

SSIS

A

Jest rozwiązaniem ETL dostępnym w ramach pakietu SQL Server, skoncentrowanym głównie na integracji i przetwarzaniu danych w lokalnym środowisku. ADF natomiast to usługa zarządzania i przetwarzania danych w chmurze, umożliwiająca elastyczne i skalowalne przetwarzanie danych w środowisku chmurowym Azure.

35
Q

Mapping

A

W kontekście transformacji danych (ETL - Extract, Transform, Load):

W procesach ETL, mapping odnosi się do przyporządkowania pól danych z jednego źródła do odpowiednich pól w docelowym systemie lub strukturze danych. Przykładowo, w narzędziach do przetwarzania danych, takich jak SQL Server Integration Services (SSIS) lub Apache NiFi, konfigurujesz mapping, aby określić, które dane z źródła mają zostać przekształcone i gdzie mają zostać załadowane w docelowej bazie danych.

36
Q

View

A

W programie SQL Server jest podobny do tabeli wirtualnej, która zawiera dane z jednej lub wielu tabel. Nie przechowuje żadnych danych i nie istnieje fizycznie w bazie danych. Podobnie jak w przypadku tabeli SQL, nazwa widoku powinna być unikatowa w bazie danych. Zawiera zestaw predefiniowanych zapytań SQL do pobierania danych z bazy danych. Może również zawierać tabele baz danych z jednej lub wielu baz danych.

Widoki są używane w różnych sytuacjach, zwłaszcza w projektowaniu baz danych, aby uprościć dostęp do danych i zwiększyć bezpieczeństwo.

37
Q

Indeksy

A

W bazach danych są strukturami optymalizacyjnymi, które przyspieszają dostęp do danych w tabelach. Działają podobnie do indeksów w książce, umożliwiając szybsze wyszukiwanie i sortowanie danych. W związku z tym, indeksy mogą znacznie poprawić wydajność zapytań, ale jednocześnie wprowadzają pewne koszty w zakresie przechowywania i aktualizacji.

38
Q

Clustered Index vs Non Clustered

A

Tylko jeden indeks klastrowany na tabelę, podczas gdy możemy mieć więcej niż jeden indeks nieklastrowany.
Indeks klastrowany jest nieco szybszy niż indeks nieklastrowany. Dzieje się tak, ponieważ gdy jest używany indeks nieklastrowany, istnieje dodatkowe wyszukiwanie z indeksu nieklastrowanego do tabeli, aby pobrać rzeczywiste wiersze.
Indeks klastrowany określa kolejność przechowywania wierszy w tabeli i dlatego nie wymaga dodatkowego miejsca na dysku, podczas gdy indeks nieklastrowany jest przechowywany oddzielnie od tabeli, wymagane jest dodatkowe miejsce do magazynowania.
Indeks klastrowany jest specjalnym typem indeksu, który zmienia kolejność sposobu fizycznego przechowywania rekordów w tabeli. W związku z tym tabela może mieć tylko jeden indeks klastrowany.
Indeks nieklastrowany jest specjalnym typem indeksu, w którym kolejność logiczna indeksu nie jest zgodna z fizyczną kolejnością przechowywanych wierszy na dysku.

39
Q

Clustered Index/Non Clustered index

A

Indeks klastrowany służy do porządkowania fizycznej kolejności tabeli i wyszukiwania na podstawie wartości klucza. Każda tabela może mieć tylko jeden indeks klastrowany. Indeks ten jest jedynym indeksem, który został utworzony automatycznie po wygenerowaniu klucza głównego. Klucz ten jest preferowany jeżeli niezbednę są umiarkowane modyfikacje w danych tabeli.

Powodem utworzenia tego indeksu jest wyszukiwanie danych. Z poprzedniego pytania wiemy, że indeks klastrowany jest tworzony automatycznie, gdy dodawne są klucze główne. Z kolei indeksy nieklastrowane są tworzone, gdy w zapytaniu używane są warunki wielu połączeń oraz filtry. Indeks bez klastrowania nie zmienia fizycznej kolejności tabel i utrzymuje logiczną kolejność danych. Każda tabela może zawierać 999 nieklastrowych indeksów.

40
Q

Optymalizacja

A

W kontekście SQL, optymalizacja odnosi się do procesu poprawiania wydajności i efektywności zapytań SQL oraz operacji na bazie danych. Celem optymalizacji SQL jest zazwyczaj skrócenie czasu wykonywania zapytań, zminimalizowanie zużycia zasobów, takich jak pamięć czy procesor, oraz ogólnie usprawnienie działania systemu bazodanowego. Optymalizacja SQL może obejmować różne aspekty, w tym:

Indeksowanie:
Dodawanie indeksów do kolumn, które są często używane w warunkach WHERE, JOIN czy ORDER BY w celu przyspieszenia procesu wyszukiwania.

Struktura Tabeli:
Optymalizacja struktury tabeli, takie jak odpowiedni dobór typów danych, unikanie redundancji danych, a także partycjonowanie dużych tabel.
Pisanie Optymalnych Zapytań:

Skonstruowanie zapytań w sposób optymalny, unikanie subzapytań tam, gdzie można użyć JOIN, unikanie funkcji na kolumnach w warunkach WHERE, czy też minimalizacja używania SELECT *.

41
Q

Pandas

A

To biblioteka programistyczna w języku Python, która umożliwia efektywną manipulację i analizę danych.
Główne zastosowania Pandas to przetwarzanie danych, analiza danych, a także czyszczenie i transformacja danych.

42
Q

Series

A

To jednowymiarowy obiekt danych w Pandas, przypominający jednowymiarową tablicę lub listę. Składa się z indeksu i odpowiadających mu wartości.

43
Q

DataFrame

A

To dwuwymiarowa struktura danych w Pandas, przypominająca tabelę lub arkusz kalkulacyjny. Składa się z wierszy i kolumn, gdzie każda kolumna może być różnego typu danych.

44
Q

Index

A

To struktura danych w Pandas, służąca do jednoznacznego identyfikowania i dostępu do elementów w obiektach Series i DataFrame. Może być jednowymiarowy lub wielowymiarowy.

45
Q

Pipelines

A

Pipeliny w Azure Data Factory to logiczne struktury, które definiują sekwencję operacji przetwarzania danych.
Mogą zawierać różne działania, takie jak kopiowanie danych, transformacje, uruchamianie skryptów, itp.
Pipeliny umożliwiają zorganizowanie i zarządzanie przepływem danych od źródła do miejsca docelowego w sposób uporządkowany.

46
Q

Data Flows

A

Data Flowy w Azure Data Factory są częścią pipeline’u, które definiują przetwarzanie danych na poziomie przepływu danych.
Pozwalają na definiowanie transformacji danych, filtrowania, sortowania i innych operacji przetwarzania danych na etapie przepływu.
Umożliwiają bardziej zaawansowane przekształcenia danych niż proste kopiowanie.

47
Q

Data Sets

A

Zbiory Danych w Azure Data Factory to struktury, które reprezentują dane w źródle lub miejscu docelowym.
Mogą być rozumiane jako reprezentacje logiczne lub fizyczne danych, takie jak tabela w bazie danych, plik CSV, itp.
Zbiory danych są używane do zdefiniowania, skąd dane są pobierane lub gdzie są zapisywane w trakcie przetwarzania w pipeline’ach.
W skrócie, Pipeline to sekwencja działań, Data Flow to struktura definiująca przetwarzanie danych, a Data Set to reprezentacja źródła lub miejsca docelowego danych. Te elementy są kluczowe w projektowaniu, implementacji i zarządzaniu przepływem danych w Azure Data Factory.

48
Q

ETL

A

To skrót od trzech terminów: Extract, Transform, Load. Jest to model przetwarzania danych, powszechnie stosowany w dziedzinie magazynów danych (data warehousing) i systemów analitycznych. Proces ETL obejmuje trzy główne etapy:

49
Q

Extract (Ekstrakcja):

A

W fazie ekstrakcji dane są pobierane z różnych źródeł danych. Mogą to być różne systemy bazodanowe, pliki CSV, API, czy inne źródła danych. Dane są wyciągane w surowej postaci z oryginalnych źródeł.

50
Q

Transform (Transformacja):

A

W fazie transformacji dane są przekształcane i modyfikowane zgodnie z wymaganiami biznesowymi. Transformacje obejmują strukturalne zmiany w danych, filtrowanie, normalizację, agregacje, a także czyszczenie danych i usuwanie duplikatów. Celem jest dostosowanie danych do celów analitycznych oraz poprawa ich jakości.

51
Q

Load (Ładowanie):

A

W fazie ładowania przetworzone dane są wprowadzane do docelowego magazynu danych lub bazy danych analitycznej. Mogą to być magazyny danych, hurtownie danych, bazy danych analityczne czy inne systemy, które przechowują dane w gotowej do analizy formie.
Proces ETL umożliwia gromadzenie, przekształcanie i przenoszenie danych z różnych źródeł do jednego centralnego miejsca, które jest zoptymalizowane pod kątem analizy i raportowania. Jest to kluczowe w kontekście biznesowej analizy danych, raportowania oraz podejmowania decyzji strategicznych. Odpowiednie narzędzia ETL pozwalają na efektywne zarządzanie dużymi ilościami danych i ich przekształcanie w użyteczną wiedzę.

52
Q

Omów różnicę między funkcjami RANK() i DENSE_RANK().

A

Obie funkcje służą do porządkowania wartości oraz przypisywania im konkretnych numerów, w zależności od ich wzajemnego położenia. Różnica między nimi sprowadza się do tego, w jaki sposób obie funkcje obsłużą identyczne wartości. W przypadku, w którym wartość x będzie miała pozycję 2, funkcja RANK () przypisze kolejnej najniższej wartości pozycję 4 (pominie następna dostępną wartość w rankingu), podczas gdy funkcja DENSE_RANK() przypisze kolejnej najniższej wartości pozycję 3 (zgodnie z porządkiem chronologicznym).

53
Q

DDL

A

DDL (Data Definition Language):

DDL obejmuje polecenia używane do definiowania struktury bazy danych. Są to operacje, które wpływają na schemat bazy danych, tabele, indeksy i inne obiekty bazodanowe.
Przykłady poleceń DDL to CREATE, ALTER i DROP.

54
Q

NATURAL JOIN

A

Jest typem złączenia, w którym z dwóch zbiorów (tabel czy podzapytań) bierzemy tylko ich część wspólną, ale jedynie w sytuacji gdy w obu zbiorach istnieje tak samo nazwana kolumna (lub więcej tak samo nazwanych kolumn).

55
Q

Tabela

A

Relacja, Encja

56
Q

Kolumna

A

Atrybut

57
Q

Wiersz

A

Krotka, Instancja