Redshift Przybliżona funkcja percentyla_disc

Redshift Przybliżona funkcja percentyla_disc
Szerooskalna funkcja Percentile_DISC jest jedną z funkcji zagregowanej dostarczonej przez Redshift w celu obliczenia percentyla danego wyrażenia na podstawie dyskretnego modelu dystrybucji. Przybliżenie jest znacznie szybszą metodą i ma niski błąd względny około 0.5.

Szerooskalna Funkcja Percentile_DISC wykonuje swoje obliczenia w oparciu o algorytm kwantylowy. Około percentyl danych wyrażeń wejściowych w Zamów przez parametr. Algorytm kwantylowy jest szeroko stosowany do radzenia sobie z dużymi zestawami danych. Zwraca wartość wierszy, które mają małą skumulowaną wartość dystrybucyjną, która jest równa lub większa niż dostarczona wartość percentylowa.

Oszerpita Funkcja Percentile_DISC jest jedną z funkcji węzłów obliczeniowych w czerwono. Dlatego zapytanie dla przybliżonego percentyla zwraca błąd, jeśli zapytanie nie odnosi się do tabeli zdefiniowanej przez użytkownika lub tabele zdefiniowane przez AWS Redshift.

Odrębny parametr nie jest obsługiwany w przybliżonej funkcji percentile_disc, a funkcja zawsze dotyczy wszystkich wartości przekazywanych do funkcji, nawet jeśli są powtarzające się wartości. Również wartości zerowe są ignorowane podczas obliczeń.

Składnia do użycia przybliżonej funkcji percentylowej

Składnia do użycia funkcji o przybliżonej przesunięciu Redshift Funkcja jest następująca:

Przybliżone percentyl_disku ( )
W grupie ()
Z nazwy Table_name

Percentyl

percentyl Parametr w powyższym zapytaniu to wartość percentylowa, którą chcesz znaleźć. Powinien być stała liczbowa i wynosi od 0 do 1. Dlatego jeśli chcesz znaleźć 50. percentyl, umieścisz 0.5.

Zamów według wyrażenia

Zamów według wyrażenia służy do zapewnienia kolejności, w jakiej chcesz zamówić wartości, a następnie obliczyć percentyl.

Przykłady użycia przybliżonej funkcji percentylowej

Teraz w tej sekcji weźmy kilka przykładów, aby w pełni zrozumieć, w jaki sposób działa funkcja przybliżona Percentil_DISC w Redshift.

W pierwszym przykładzie zastosujemy przybliżoną funkcję percentyl_disc w tabeli o nazwie przybliżenie jak pokazano niżej. Poniższa tabela przesunięcia ku czerwieni zawiera identyfikator użytkownika i znaki uzyskane przez użytkownika.

ID Znaki
0 10
1 10
2 90
3 40
4 40
5 10
6 20
7 30
8 20
9 25

Zastosuj 25. percentyl na kolumnie znaki z przybliżenie Tabela, która zostanie zamówiona według identyfikatora.

Wybierz oceny, przybliżone percentyl_disku (0.25)
w grupie (zamówienie według id)
z przybliżenia
grupa według znaków

25. percentyl znaki Kolumna przybliżenie Tabela będzie następująca:

Znaki Percentile_disc
10 0
90 2
40 3
20 6
25 9
30 10

Teraz zastosujmy 50. percentyl do powyższej tabeli. W tym celu użyj następującego zapytania:

Wybierz oceny, przybliżone percentyl_disku (0.5)
w grupie (zamówienie według id)
z przybliżenia
grupa według znaków

50. percentyl znaki Kolumna przybliżenie Tabela będzie następująca:

Znaki Percentile_disc
10 1
90 2
40 3
20 6
25 9
30 10

Teraz spróbujmy złożyć wniosek o 90. percentyl na tym samym zestawie danych. W tym celu użyj następującego zapytania:

Wybierz oceny, przybliżone percentyl_disku (0.9)
w grupie (zamówienie według id)
z przybliżenia
grupa według znaków

90. percentyl znaki Kolumna przybliżenie Tabela będzie następująca:

Znaki Percentile_disc
10 7
90 2
40 4
20 8
25 9
30 10

Stała liczbowa parametru percentyla nie może przekroczyć 1. Teraz spróbujmy przekroczyć jego wartość i ustaw ją na 2, aby zobaczyć, jak przybliżona funkcja percentyla_disc traktuje tę stałą. Użyj następujących zapytania:

Wybierz oceny, przybliżone percentyl_disku (2)
w grupie (zamówienie według id)
z przybliżenia
grupa według znaków

To zapytanie spowoduje następujący błąd, pokazując, że stała liczbowa percentylowa waha się tylko od 0 do 1.

Stosowanie przybliżonej funkcji percentylowej na wartości zerowych

W tym przykładzie zastosujemy przybliżoną funkcję percentyla_disku w tabeli o nazwie przybliżenie który obejmuje wartości zerowe, jak pokazano poniżej:

Alfa beta
0 0
0 10
1 20
1 90
1 40
2 10
2 20
2 75
2 20
3 25
ZERO 40

Teraz złożymy wniosek o 25. percentyl na tym stole. W tym celu użyj następującego zapytania:

Wybierz alfa, przybliżony percentyl_disc (0.25)
w grupie (zamówienie BETA)
z przybliżenia
Grupa autorstwa Alpha
zamówienie przez Alpha;

25. percentyl alfa Kolumna przybliżenie Tabela będzie następująca:

Alfa Percentile_disc
0 0
1 20
2 10
3 25
4

Wniosek

W tym artykule zbadaliśmy, jak korzystać z przybliżonej funkcji percentyl_disc w czerwonocie. Nauczyliśmy się użycia przybliżonej funkcji percentylowej na różnych zestawach danych z różnymi stałymi liczbą percentylową. Nauczyliśmy się, jak używać różnych parametrów podczas korzystania z przybliżonej funkcji percentile_disc i jak ta funkcja traktuje, gdy przechodzi stała percentyla więcej niż 1.