為了方便投資者及時了解熱門項目的相關信息和使用流程,金色財經推出了“金色說明書”系列教程。本期由金色財經和登鏈社區聯合推出。
風險提示:“金色說明書”系列教程,根據項目公開消息,為各位提供使用流程和相關資訊,不作為投資建議。投資風險高,參與需謹慎!
DuneAnalytics是進行區塊鏈研究的強大工具。它可用于查詢,提取和可視化以太坊區塊鏈上的大量數據。這篇文章介紹了一些基本示例,這些示例說明了如何搜索和編寫基本查詢以及如何使用圖表將其可視化。探索的機會是無限的。
Dex交易量百分比在以太坊等公共區塊鏈中,所有信息本來就是公共的。你所需要的只是尋找它。到目前為止,回答諸如一個項目有多少用戶或DEX的每日交易量之類的問題很可能需要編寫專門的腳本。運行腳本將涉及遍歷塊,解析信息,對其進行正確排序以及提取?數據。這既耗時又非常專業。像這樣的腳本可能能夠提取有關一個特定項目的信息,但需要進行大量修改才能將其幻化。此外,在所有區塊上運行本身就是一個漫長的過程,需要一個完整的節點或對外部服務的許多單獨查詢。
用DuneAnalytics來救你
DuneAnalytics可以大大簡化此過程的工具。這是一個基于Web的平臺,可使用簡單的SQL查詢從預先填充的數據庫中查詢以太坊數據。無需編寫專門的腳本,只需查詢數據庫即可提取幾乎所有駐留在區塊鏈上的信息。本指南涵蓋了如何在Dune上搜索,編寫和可視化基本查詢的基礎知識,因此你可以立即從零開始成為區塊鏈分析師。即使你以前從未使用過SQL,幾個基本示例就可以幫你走很長一段路。
DuneAnalytics如何運作的
DuneAnalytics的核心是將來自區塊鏈的原始數據聚合到可以輕松查詢的SQL數據庫中。例如,有一個表查詢所有以太坊交易,并很好地分為幾列。列涵蓋了發送者,接收者,金額等。
查詢5個以太坊交易的示例所有這些信息都是免費提供的。免費套餐(需要開設帳戶)包括:
搜索查詢
編寫新查詢
創建可視化和儀表盤
所有免費查詢均可供所有人查看和搜索。將私有的查詢需要一個高級帳戶。Pro賬號還提供了一些其他好處,例如導出數據和去除圖表中水印。
金色午報 | 11月3日午間重要動態一覽:7:00-12:00關鍵詞:香港證監會、人民網、灰度、美國大選、PayPal
1. 香港證監會行政總裁:特區政府將推出有關加密資產的牌照;
2. 人民網:境內人民幣買入虛擬貨幣、外幣提現或涉嫌違法;
3. 香港證監會CEO:此前的加密監管框架使得某些交易平臺可脫離監管運作;
4. 灰度BTC信托增持1938 BTC 連續第13個工作日有所增持;
5. 分析:第二季度Cash App購買了40%新發行的比特幣;
6. 21財經:數字人民幣暫未向公眾開放下載 需提高警惕性;
7. 美國大選結果將于明天下午出爐;
8. PayPal將于2021年上半年向國際用戶開放加密貨幣服務;
9. 萬事達卡總裁:正在與各國政府商談CBDC計劃。[2020/11/3 11:31:43]
來自區塊的信息經過幾分鐘的延遲后便被解析并填充到Dune的數據庫中。除了原始數據塊和交易,Dune還具有資產價格信息和專用表,例如UNI通證的所有持有地址。
現在,讓我們熟悉如何使用Dune,現在無需編寫任何代碼,之后再看一些SQL基礎知識。
開始使用DuneAnalytics
打開帳戶后,主頁將如下所示:
登錄DuneAnalytics應用你看到的第一個屏幕是常用儀表盤的列表。儀表盤是其他用戶通常圍繞特定主題創建的查詢和圖表的集合。
以太坊gas價格儀表板有大量的儀表盤可供查詢,涵蓋了主流的DeFi項目,DEX交易量,以太坊交易的gas使用等等。
你可以在右側的搜索欄中搜索特定項目上的儀表盤。如果你在熱門儀表盤部分找不到相關的儀表盤,請確保選擇“所有儀表盤”。
每個儀表盤均包含一個查詢。每個圖表都可以選擇,查看和編輯。
從儀表盤視圖的圖表本身可以輕松操作。如:放大、選擇圖表的一部分等。雙擊圖表標題,選擇創建圖表的特定查詢。
從儀表盤中選擇圖形的示例在這里,你可以選擇EditQeuery來查看查詢或就地進行較小的操作,也可以選擇fork來將查詢復制到你自己的工作區中,之后進行自己的操作,保存更改并創建新圖表。我們將在下一部分中介紹如何編輯和創建查詢。
金色熱搜榜:REN居于榜首:根據金色財經排行榜數據顯示,過去24小時內,REN搜索量高居榜首。具體前五名單如下:REN、XTZ、DOGE、LXT、ONT。[2020/8/5]
搜索查詢
就像搜索儀表盤一樣,你可以從頂部欄中選擇查詢列表以搜索查詢。
并非所有查詢都添加到儀表盤,因此還有更多查詢可供篩選。成功找到感興趣的查詢當然取決于作者標記并正確編寫它。找到感興趣的查詢后,就可以選擇,編輯或fork它,就像儀表盤中的任何查詢一樣。
儀表盤通常是查詢的一部分,作者選擇高亮顯示。在查找有關特定項目的信息時,最好先從儀表盤開始,如果找不到所需的內容,在繼續在查詢列表里搜索。
如果你找不到想要的東西怎么辦?是時候開始嘗試使用SQL了。
編寫查詢
查找特定項目的信息時,其他Dune用戶的儀表盤和查詢是一個不錯的起點,但是有時存在的查詢不足以回答你正在研究的問題。
幸運的是,Dune使用標準的PostgreSQL查詢語言。即使你以前從未編寫過SQL,也可以使用它輕松進行一些基本查詢。
首先,最有用的入門是儀表盤和其他人編寫的查詢。如前所述,所有公共查詢都可以Fork,或者你可以簡單地從其他人復制代碼。這對于對滿足你大部分需求的查詢進行細微改動,或者只是從他人那里學習新功能和竅門,都非常有用。在這個簡短的教程中,將頭開始編寫一些基本的查詢,但是從中尋找相關的靈感總是很有用的。
創建一個空白查詢要創建新查詢,請從左上角選擇選項。你會看到以下屏幕
新查詢視圖的部分左側的表列表包含可用于創建查詢的所有現有SQL表。許多受歡迎的項目都有專門的表格,其中包含專門為其解析的信息。在查看特定項目時這些表可能非常有幫助。盡管它總是可能通過直接解析所有交易的數據字段來獲得,但是這可能很麻煩并且并不總是準確的。
一些非常有用的表舉例:
ethereum.transactions:以太坊上的所有交易
ethereum.logs:合約觸發的以太坊事件的日志(例如:Transfer)
金色晚報 | 5月10日晚間重要動態一覽:12:00-21:00關鍵詞:區塊鏈產業園區、SEC、USDT增發、減半
1.山東濟南市中區將建設省級區塊鏈產業園區。
2.菲律賓SEC發布針對疑似欺詐性加密貨幣項目的警告。
3.V神:現階段與其提出新的創新 不如實現現有創意。
4.Tether在波場網絡增發8,000萬枚USDT。
5.Bitisis交易所BTC溢價達430美金。
6.摩根溪聯合創始人:美國需要明確加密法規。
7.分析:數字穩定幣構成對現有貨幣體系的挑戰。
8.BIS專家:減半之后比特幣可能成為51%攻擊受害者。
9.比特幣大幅下跌,日內最低跌至8150美元。[2020/5/10]
erc20.ERC20_evt_Transfer:發送通證時觸發的所有轉賬事件
prices.layer1_usd:以分鐘為單位的ETH和許多其他流行代幣的價格表
第一個查詢
每個查詢都是以研究問題開始。第一步是明確定義我們想知道的內容。舉一個簡單的例子,讓我們看一下最近的5筆交易。
很自然,我們會在包含所有以太坊交易的表中找到答案,因此我們首先在搜索字段中搜索該表。在此案例中,搜索transaction將顯示相關表的列表,我們可以從中選擇ethereum.transactions。
單擊表列表中的表將顯示該表中所有可用的列。在此案例中,我們使用ethereum.transactions表,其列為hash,index,gas_price等。
單擊雙箭頭將名稱復制到查詢字段中單擊表或列名稱旁邊的雙箭頭將名稱粘貼在查詢部分中。這有助于避免手動復制粘貼和輸入錯誤。
在這個簡單的示例中,我們選擇*,這意味著從表ethereum.transactions中選擇所有列。
在運行此查詢之前,必須注意一些查詢可能需要很長時間才能完成,并且返回太多數據。尤其是在開始處理查詢時,限制返回條目的數量以加快處理速度非常有用。這可以通過添加limit子句來完成,這會將返回的行數限制為指定的數。
編寫查詢后,按execute以運行它。
分析 | 金色盤面:BTC/USDT 15分鐘量價區間:金色盤面綜合分析:BTC/USDT15分鐘K線圖,從籌碼分布情況看,目前處在一個密集成交區,對價格形成一定支撐,壓力在6500附近,短線多空持平,趨向性不明,建議觀望。[2018/8/9]
運行簡單查詢的結果顯示在結果部分太好了,我們在結果部分中有一些結果,但這是以太坊有史以來的前5個交易。要獲取最后一個,我們可以首先在其中一列中按降序對查詢進行排序。在此案例中,塊時間或塊號可能是一個不錯的選擇
以太坊交易的排序結果現在,我們有5個來自最新區塊的交易。表沒有顯示實時數據,創建塊并將其添加到表之間存在一定的延遲。
與每項工作一樣,強烈建議偶爾保存查詢,尤其是在進行復雜的查詢時(快捷鍵CtrlS/CmdS亦可以工作)。
簡單查詢可以在這里找到。
可視化數據
除了簡單地存儲數據之外,DuneAnalytics還提供了一種強大的可視化方法。在此示例中,我們來看一個稍微復雜的查詢。我們想知道過去10天每天發送的ETH的總價值。這也將有助于演示過濾和按時間分組數據。
獲取此數據的查詢如下:
讓我們分解一下
date_trunc(‘day’,block_time):我們不需要選擇表中的所有列,而只需選擇我們需要的列。在此案例中,需要區塊時間和ETH的值。block_time是Unix時間戳格式,但是我們只對獲取它的day部分感興趣,因此我們截斷了其余數據。
asas”Date“:為列指定別名。這不是必需的,但是可以使結果更易于閱讀,并且圖表自動具有更好的標簽。
sum(value/1e18):由于我們匯總了所有已發送的ETH,因此我們使用SUM函數匯總數據。由于ETH的精度為18位小數,因此我們將數字除以1e18,得到的值以ETH為單位,而不是以Wei為單位
whereblock_time>now()—interval’10days’:僅查看過去10天的區塊時間。這也將使查詢運行更快
分析 | 金色盤面:BTC季度合約持倉迅速增加:金色盤面綜合分析:BTC季度合約13時開始持倉量迅速增加,到17時增加了627個比特幣(約40511張)的期貨合約。說明比特幣市場情緒企穩,或進入調整振蕩運行行情。[2018/8/8]
groupby1orderby1:1這是我們選擇的第一列(date_trunc)。我們將結果按日期分組并按日期排序。由于我們按天對數據進行分組,因此需要對選擇的所有其他列進行匯總。這里使用SUM,但也可以根據需要使用MAX,MIN,AVG或任何其他匯總函數。
執行查詢將生成類似的結果。日期列表以及這些天轉移的以太幣總和。
現在我們要繪制此數據。選擇NewVisualization以轉到可視化菜單。
新建可視化按鈕這將打開以下菜單
DuneAnalytics可視化菜單
有幾種可視化類型可供選擇。最有用的可能用*Chart(圖表)*來繪制簡單的圖表,但是還有*Counter(計數器)*可以顯示單個數據,(pivottable)數據透視表等等。
在此案例中,我們需要一個圖表。我們要繪制發送的ETH的總和作為日期的函數。相應選擇X和Y軸
就是這樣,我們有一個基本圖表。還有更多的可能性可以玩。圖表樣式,顏色,標簽等。
最后,保存圖表以添加到查詢結果中。可以為每個查詢創建多個可視化。
這里有示例可以參考。
稍微高級的查詢
到目前為止,我們僅查看單個表中的查詢。單個表可能沒有我們需要的所有信息。為了說明這一點,讓我們以前面的示例為例,但是我們不顯示已發送的ETH數量,而是繪制以ETH表示的美元價值金額。
ethereum.transactions表沒有任何價格數據。幸運的是,Dune為大量資產提供了每分鐘的價格數據。
因此我們需要連接交易表和價格表:
讓我們逐行將其分解:
首先,我們創建一個新的輔助表,其中包含我們需要的所有數據。以便以后在這個新表可以更輕松地匯總數據。
withtxsas:根據以下數據創建一個名為txs的新表
fromethereum.”transactions”e:從表ethereum.transactions中獲取數據,并將表別名為e
joinprices.”layer1_usd”p:將表與價格表相連,并將其別名為p。聯接操作將合并兩個表的列
onp.minute=date_trunc(‘minute’,e.block_time):聯接操作要求你通過on指定聯接的列。這里,價格只會每分鐘記錄一次,因此我們希望將數據與創建區塊的時間結合起來。這將為每個交易生成一個條目,但是現在帶有來自價格表中的其他數據。
whereblock_time>now()—interval’10days’:和以前一樣,僅獲取過去10天的數據
andsymbol='ETH':價格表中有很多代幣的價格,我們只對ETH的價格感興趣
selectdate_trunc(‘day’,block_time)as“Date”,sum(value*price/1e18)as“Value”fromtxs:最后,我們運行與之前相同的查詢,但是將ETH中的值乘以價錢。我們也從txs表中獲取數據。
最后,繪制數據將得到下圖
查詢代碼在這里
創建儀表盤
現在我們已經有了圖表,我們可以將它們聚合到儀表盤中。點擊“Create(創建)”->“NewDashboard(新儀表盤)”,為你的儀表盤起一個信息豐富的名稱
可以使用儀表盤面板中的“AddWidget(添加窗口小部件)”按鈕或每個查詢中每個可視化中的“AddtoDashboard(添加到儀表盤)”按鈕來添加窗口小部件。
簡單儀表盤的示例
這個儀表盤在這里查看特定地址
最后,為了演示如何查找與特定地址相關的事件,我們將對查詢進行一些修改,以查看與以太坊共同創建者VitalikButerin相關的地址所轉移的ETH數量。
該查詢與以前幾乎相同,只是現在我們在from列上添加了一個過濾器。注意地址的格式。在Dune中使用地址時,它必須以\x而不是0x開頭,因為你很可能會在塊瀏覽器中找到它,這是一個非常常見的錯誤,因此必須指出這一點。查詢及其結果在這里可以找到。
Dune的局限性
盡管Dune是一種超級強大的工具,但仍有一些錯誤和局限性值得一提。首先,當前僅可以查詢事件,例如交易和轉賬。不能在某個特定區塊查詢區塊鏈的狀態。例如,要知道特定地址在某個區塊的余額是多少,你將需要創建一個查詢,以對該地址的所有轉入和轉出交易進行匯總。回答“以太坊的總供應量是多少”這個問題目前有點棘手。
盡管平臺大多數時候都可以幫助你調試錯誤的查詢,但有時查詢會一直掛起直到超時。如果查詢花費的時間不合理,則可能得試試保存它再重新加載網頁。這些錯誤可能會在將來被消除。
查詢有40分鐘的限制,直到超時為止。查詢大量數據和多個聯接,可以會達到限制。盡可能考慮過濾查詢(例如,區塊時間或區塊編號)。
最后,一個免費用戶一次只能限制3個查詢,如果要更新具有多個圖表的儀表盤,這可能會受到限制。
接下來
本教程的目的是熟悉Dune的基本功能并嘗試一些基本示例。這不是有關PostgreSQL的詳盡教程,而PostgreSQL的資源非常豐富,但是希望可以引入一些基本命令來幫助你入門。
當然,還有很多要探索和發現的東西,包括用于各種DeFi項目的大量預制表,通過拉取請求添加自己的表等。
DuneAnalytics是區塊鏈研究庫中的超級強大工具。能夠快速,簡單,快速地查詢大量數據真是一種超級大殺器。
本翻譯由CellNetwork贊助支持。
來源:
https://medium.com/zengo/dune-analytics-introduction-tutorial-with-examples-d2c764600d6
譯文出自:登鏈翻譯計劃
譯者:翻譯小組
參考資料
登鏈翻譯計劃:?
https://github.com/lbc-team/Pioneer
翻譯小組:?
https://learnblockchain.cn/people/412
DuneAnalytics:?
https://www.duneanalytics.com/
主頁:?
https://explore.duneanalytics.com/dashboards
這里:?
https://explore.duneanalytics.com/queries/10099/source
這里:?
https://explore.duneanalytics.com/queries/10100/source#20113
這里:?
https://explore.duneanalytics.com/queries/10129/source#20115
這里:?
https://explore.duneanalytics.com/dashboard/eth-value-transferred
這里:?
https://explore.duneanalytics.com/queries/10568
CellNetwork:?
https://www.cellnetwork.io/?utm_souce=learnblockchain
鏈聞消息,去中心化自治組織DXdao宣布在以太坊主網上推出Swapr的alpha內測版,Swapr是一個去中心化交易所,也是一個通過治理為流動性資金池收取可調整兌換費用的自動做市商.
1900/1/1 0:00:00尊敬的WBF用戶: 為感謝用戶對WBF的支持,WBF將開展感恩節大回饋”主流幣交易打卡第三期,瓜分5000DUSD“活動.
1900/1/1 0:00:00鏈聞消息,高性能公鏈Solana的基金會公布資助計劃的首批12家受助項目,包括正在集成Chainlink預言機的預言機解決方案C.Dot、正在搭建Tendermint、Solana和以太坊轉接橋.
1900/1/1 0:00:00資訊簡評 在新冠疫情肆虐所導致的全球金融市場不確定性加劇的環境下,比特幣搶眼表現吸引主流媒體關注.
1900/1/1 0:00:0011月18日,火幣全球站實時數據顯示,比特幣一舉沖破18000美元大關,截至發稿時,比特幣的價格已穩定在18100美元左右,再次創下了年內新高.
1900/1/1 0:00:00美國大選幾經反轉,終于塵埃落定,拜登目前以290票擊敗232票的特朗普,將成為下一任美國總統。然而拜登選舉欺詐的傳聞也甚囂塵上,最初拜登選票造假的質疑基于本福特定律,后來陸續有重復計票等消息傳出.
1900/1/1 0:00:00