Table of Contents
Dune Analytics to skoncentrowana na Ethereum platforma analityczna, która dostarcza dane sieciowe w bardziej użytecznym formacie.
Na szczęście Dune jest kompatybilny ze standardowym językiem zapytań PostgreSQL. Nawet jeśli nigdy wcześniej nie pisałeś SQL, jest on wystarczająco prosty w użyciu. Najbardziej użytecznym miejscem do rozpoczęcia pracy są dashboardy i zapytania stworzone przez innych, ponieważ często zawierają więcej informacji niż Twój własny kod.
Jaka jest różnica między tokenem a wydmuszką? Nie ma takiej.
Pojęcie anonimowości i prywatności od dawna związane jest z bitcoinem i innymi kryptowalutami. Oryginalna biała księga z 2008 roku, która wprowadziła technologię blockchain poprzez bitcoina, promowała koncepcję technologicznej niewidzialności.
Dune Analytics to potężne narzędzie badawcze dla technologii blockchain. Umożliwia wyszukiwanie, wyodrębnianie i wizualizację ogromnych ilości danych z Ethereum blockchain. Ten artykuł demonstruje, jak wykonywać podstawowe wyszukiwania i pisać proste zapytania w celu tworzenia wykresów. Istnieją nieograniczone możliwości odkrywania.

Wszystkie informacje można znaleźć w publicznych blockchainach, takich jak Ethereum. Jedyne co trzeba zrobić to poszukać. Póki co, odpowiadanie na pytania takie jak liczba użytkowników projektu czy dzienny wolumen DEX poprzez specjalistyczny program byłoby najprawdopodobniej wymagane. Uruchomienie skryptu będzie wiązało się z przejściem przez bloki, oceną danych, prawidłowym posortowaniem ich i wyciągnięciem odpowiedzi na pytanie.
Dune Analytics usprawnia ten proces, umożliwiając pisanie zapytań SQL, które są automatycznie wykonywane na serwerach. Dane są następnie łatwo wizualizowane w postaci wykresów, co znacznie ułatwia znalezienie interesujących spostrzeżeń.

Wyodrębnienie 100 projektów z ogromnego zbioru danych jest trudne i czasochłonne. Takie skrypty prawdopodobnie będą w stanie wyodrębnić informacje o jednym konkretnym projekcie, ale mogą wymagać znacznych modyfikacji, jeśli mają być używane globalnie.
Ponadto, uruchomienie wszystkich etapów razem zajmuje czas, ponieważ wymaga albo kompletnego węzła, albo wielu pojedynczych zapytań do węzłów publicznych. Dune Analytics rozwiązuje ten problem, umożliwiając użycie pojedynczego zapytania, które jest automatycznie uruchamiane na ich serwerach.
Na ratunek przychodzi Dune Analytics
Dune Analytics to narzędzie, które ułatwia wydobywanie danych z Ethereum. Jest to platforma internetowa, która umożliwia odpytywanie danych Ethereum za pomocą gotowych baz danych, dzięki czemu znacznie łatwiej jest wydobyć informacje z blockchaina.

Ten tutorial nauczy Cię jak wyszukiwać, pisać i wizualizować podstawowe zapytania w Dune, dzięki czemu możesz przejść od zera do eksperta blockchain w ciągu kilku minut. Nawet jeśli nigdy wcześniej nie pisałeś SQL, wystarczy kilka prostych przykładów.
Jak działa analityka Dune?
Dune analytics unifikuje surowe dane z blockchaina w bazy danych SQL, które mogą być łatwo zbadane. Na przykład istnieje tabela do badania wszystkich transakcji Ethereum, które są zgrabnie podzielone na kolumny. Nadawca, odbiorca i kwota to przykładowe kolumny.

Dane z bloków są przetwarzane i wprowadzane do bazy danych Dune po kilku minutach. Dune oprócz surowych bloków i transakcji zawiera również informacje o cenach aktywów i specjalistyczne tabele, takie jak wszystkie pasujące adresy dla tokena UNI.
Pójdźmy o krok dalej i dowiedzmy się, jak używać Dune bez pisania jakiegokolwiek kodu, a także poznajmy niektóre podstawy SQL.
Podejmij inicjatywę, aby rozpocząć pracę z Dune Analytics.
Po założeniu konta, strona główna będzie wyglądać coś takiego:

Pierwszą rzeczą, którą zobaczysz, jest lista wszystkich dostępnych baz danych. Obecnie Dune obsługuje cztery:
- Bloki Ethereum
- Transakcje Ethereum
- Uniswap V21 Wydarzenia
- Kyber Network Proxy Trade Events
Możesz myśleć o każdej bazie danych jako o tabeli SQL. Aby rozpocząć pisanie zapytań, musisz najpierw wybrać bazę danych. Na potrzeby tego samouczka będziemy używać bazy danych Ethereum Transactions.

Po wybraniu bazy danych, zostaniesz przeniesiony do kreatora zapytań. Kreator zapytań jest miejscem, w którym piszesz swoje zapytania SQL. Możesz również użyć kreatora zapytań do wizualizacji danych bez pisania kodu SQL.
Po lewej stronie kreatora zapytań znajduje się lista wszystkich dostępnych kolumn w bazie danych. Możesz użyć tych kolumn do filtrowania danych, jak również do grupowania i sortowania danych.
Po prawej stronie kreatora zapytań zobaczysz wyniki swojego zapytania. Domyślnie Dune pokaże Ci pierwsze 100 wyników Twojego zapytania.
Jeśli chcesz zobaczyć więcej wyników, możesz kliknąć na przycisk “Pobierz”. Spowoduje to pobranie wszystkich wyników Twojego zapytania w postaci pliku CSV.

Możesz również kliknąć przycisk “Wizualizacja”, aby zwizualizować swoje dane. Dune obsługuje dwa rodzaje wizualizacji: wykresy liniowe i słupkowe.
Wykresy liniowe są najlepsze dla danych ciągłych, takich jak ceny lub ilość. Wykresy słupkowe są najlepsze dla danych dyskretnych, takich jak liczby lub kategorie.
Po wybraniu wizualizacji możesz użyć opcji po prawej stronie, aby dostosować swój wykres. Możesz na przykład zmienić oś x i oś y, jak również kolor i tytuł wykresu.

Kiedy jesteś zadowolony ze swojej wizualizacji, możesz kliknąć przycisk “Zapisz”, aby ją zapisać.
Teraz, gdy znasz już podstawy działania Dune, nauczmy się pisać zapytania SQL.
Pisanie zapytań SQL
SQL jest językiem programowania

Zapytania
Dashboardy Dune i zapytania innych użytkowników Dune są dobrym miejscem do rozpoczęcia poszukiwań danych specyficznych dla projektu, ale istniejące wyszukiwania mogą nie wystarczyć, aby odpowiedzieć na każde Twoje pytanie. Jeśli nie możesz znaleźć tego, czego szukasz, nadszedł czas, aby napisać własne zapytania SQL.
Zanim zaczniemy pisać zapytania, warto zrozumieć strukturę bazy danych. W Dune każda baza danych jest podzielona na tabele. Każda tabela ma nazwę i zestaw kolumn.
Na przykład baza danych Ethereum Transactions ma tabelę o nazwie “transakcje”. Ta tabela ma kolumny dla nadawcy, odbiorcy i kwoty każdej transakcji.

Aby wybrać dane z tabeli, używamy instrukcji SELECT. Na przykład, aby wybrać wszystkie transakcje w bazie Ethereum Transactions, napisalibyśmy następujące zapytanie:
SELECT * FROM transakcje
Gwiazdka (*) to symbol wieloznaczny, który oznacza “wszystkie”. Więc to zapytanie mówi “SELECT all of the columns FROM the transactions table”.
Jeśli chcemy wybrać tylko niektóre kolumny, możemy wymienić nazwy kolumn zamiast używać gwiazdki. Na przykład, aby wybrać tylko nadawcę, odbiorcę i kwotę każdej transakcji, napisalibyśmy następujące zapytanie:

SELECT sender, recipient, amount FROM transactions
Możemy również użyć instrukcji WHERE do filtrowania naszych danych. Na przykład, jeśli chcemy zobaczyć tylko transakcje o wartości większej niż 100 ETH, napisalibyśmy następujące zapytanie:
SELECT * FROM transakcje WHERE wartość > 100000000000000
Znak większy niż (>) oznacza “większy niż”. Więc to zapytanie mówi “SELECT all of the columns FROM the transactions table WHERE the value is greater than 100 ETH.”
Możemy również użyć instrukcji ORDER BY, aby posortować nasze dane. Na przykład, jeśli chcemy zobaczyć najpierw transakcje z najwyższymi wartościami, napiszemy następujące zapytanie:

SELECT * FROM transactions ORDER BY value DESC
Instrukcja ORDER BY sortuje dane w kolejności rosnącej lub malejącej. Domyślnie jest to porządek rosnący, ale możemy użyć słowa kluczowego DESC, aby posortować w porządku malejącym. Tak więc to zapytanie mówi “SELECT all of the columns FROM the transactions table ORDER BY value in descending order.”

Na koniec możemy użyć instrukcji LIMIT, aby ograniczyć liczbę wyników. Na przykład, jeśli chcemy zobaczyć tylko pierwsze 100 wyników, napisalibyśmy następujące zapytanie:
SELECT * FROM transactions LIMIT 100
To zapytanie mówi “SELECT wszystkie kolumny FROM tabela transakcji LIMIT 100”.
Teraz, gdy wiesz już jak pisać zapytania SQL, nauczmy się jak używać ich w Dune.
Używanie zapytań SQL w Dune
Aby użyć zapytania SQL w Dune, najpierw otwórz Kreator zapytań. Następnie wprowadź zapytanie w pole tekstowe i kliknij “Uruchom zapytanie”.
Jeśli Twoje zapytanie jest poprawne, zobaczysz wyniki w tabeli poniżej. Możesz wtedy kliknąć na “Visual

ize”, aby zwizualizować swoje dane.
Jeśli chcesz zapisać swoje zapytanie, możesz kliknąć na przycisk “Zapisz”. W ten sposób zapiszesz swoje zapytanie, abyś miał do niego dostęp później.
Teraz, gdy znasz podstawy działania Dune, jesteś gotowy, aby zacząć używać go do badania danych Ethereum!
Zapytania, które są nieco trudniejsze
Dune Analytics oferuje również usługę płatną.
Teraz, gdy znasz już podstawy pisania zapytań SQL, nauczmy się pisać nieco bardziej złożone zapytania.
SELECT * FROM transakcje
GDY wartość > 100000000000000
AND to_address = “0x315e27aA99F682924Ae21CfD2281c682bC16E790
To zapytanie mówi “SELECT all of the columns FROM the transactions table WHERE the value is greater than 100 ETH AND the to_address is 0x315e27aA99F682924Ae21CfD2281c682bC16E790.”

Aby dowiedzieć się więcej o konkretnym adresie, można skorzystać z tabeli “Adres”.
SELECT * FROM adresy
WHERE adres = “0x315e27aA99F682924Ae21CfD2281c682bC16E790
To zapytanie mówi “SELECT all of the columns FROM the addresses table WHERE the address is 0x315e27aA99F682924Ae21CfD2281c682bC16E790.”
Możesz również skorzystać z tabeli “Bloki”, aby dowiedzieć się więcej o konkretnym bloku.
SELECT * FROM blocks

WHERE number = “8943592
To zapytanie mówi “SELECT all of the columns FROM the blocks table WHERE the number is ‘8943592’”.
Wizualizacja danych
Gdy masz już swoje dane, możesz je zwizualizować na wiele sposobów. Dune oferuje kilka różnych typów wizualizacji: wykresy liniowe, słupkowe i kołowe.

Aby utworzyć wizualizację, najpierw wybierz typ wizualizacji, który chcesz utworzyć. Następnie wybierz dane, które chcesz zwizualizować.
Przykładowo, gdybyśmy chcieli stworzyć wykres liniowy wartości wszystkich transakcji, wybralibyśmy typ wizualizacji “Line Chart” oraz dane “Value”.
Po wybraniu danych możesz kliknąć przycisk “Visualize”, aby stworzyć swoją wizualizację.

Możesz również użyć przycisku “Zapytanie”, aby edytować swoje zapytanie, lub przycisku “Zapisz”, aby zapisać zapytanie.
Nieco bardziej zaawansowane zapytania
Ograniczenia
- Dune to potężne narzędzie, ale ma swoje ograniczenia. Po pierwsze, Dune obsługuje tylko bazy danych SQLite. Oznacza to, że możesz używać Dune tylko z danymi Ethereum, które zostały wyeksportowane do bazy danych SQLite.
- Po drugie, Dune obsługuje tylko ograniczony zestaw poleceń SQL. Oznacza to, że w Dune nie można zrobić wszystkiego, co można zrobić w SQL. Dune obsługuje jednak najczęściej używane polecenia SQL.
- Dune nie jest w stanie wizualizować wszystkich typów danych. Oznacza to, że możesz nie być w stanie zwizualizować wszystkich danych, o które pytasz.
Co dalej?
Teraz, gdy znasz już podstawy działania Dune, jesteś gotowy, by zacząć używać go do badania danych Ethereum! W następnej sekcji dowiemy się, jak eksportować dane Ethereum do bazy danych SQLite, abyś mógł używać Dune z własnymi danymi. Bądźcie czujni!
Eksportowanie danych Ethereum do bazy danych SQLite
Pierwszym krokiem w użyciu Dune jest wyeksportowanie danych Ethereum do bazy danych SQLite. Aby to zrobić, będziesz potrzebował narzędzia, które może eksportować dane Ethereum do SQLite.
Istnieje kilka różnych narzędzi, których możesz użyć do tego, ale zalecamy użycie eksportera SQLite firmy Parity. Eksporter SQLite firmy Parity to narzędzie, które może eksportować dane Ethereum do bazy danych SQLite.

Aby korzystać z eksportera SQLite Parity, musisz go najpierw pobrać i zainstalować. Instrukcje, jak to zrobić, można znaleźć w sekcji “Eksportowanie danych Ethereum” w dokumentacji Parity.
Po zainstalowaniu eksportera SQLite Parity, możesz go użyć do wyeksportowania swoich danych Ethereum. Aby to zrobić, będziesz musiał określić lokalizację swoich danych Ethereum i lokalizację swojej bazy danych SQLite.
Instrukcje, jak to zrobić, można znaleźć w sekcji “Eksportowanie danych” w dokumentacji Parity.
Gdy masz już swoje dane Ethereum wyeksportowane do bazy danych SQLite, jesteś gotowy, aby zacząć używać Dune! W następnej części dowiemy się, jak pisać zapytania w Dune. Bądźcie czujni!
Pisanie zapytań w Diunie
Teraz, gdy masz już swoje dane Ethereum wyeksportowane do bazy danych SQLite, jesteś gotowy, aby zacząć używać Dune! W tej części nauczymy się, jak pisać zapytania w Dune.

Dune używa specjalnego języka o nazwie SQLite Query Language (SQLiteQL) do zadawania pytań o dane. SQLiteQL jest podobny do SQL, który może być Ci znany, ale ma kilka istotnych różnic.

- Pierwszą różnicą jest to, że SQLiteQL jest wrażliwy na wielkość liter. Oznacza to, że musisz uważać, aby użyć właściwego przypadku podczas pisania zapytań.
- Druga różnica polega na tym, że SQLiteQL używa innej składni dla komentarzy. W SQL, komentarze są oznaczane przez znak – na początku linii. W SQLiteQL komentarze oznaczane są przez /* na początku linii i */ na końcu linii.
- Trzecią różnicą jest to, że SQLiteQL używa innej składni dla ciągów znaków. W SQL, łańcuchy są oznaczane przez pojedyncze cudzysłowy. W SQLiteQL łańcuchy są oznaczane przez podwójne cudzysłowy.
Teraz, gdy znasz już podstawy pisania zapytań w SQLiteQL, spróbujmy napisać kilka zapytań!