數據運營篇 | 面向探索分析的數據查詢
文章指出,盡管BI報表類產品不斷擴展能力邊界,即席查詢類產品因其專注于數據查詢分析而具有獨特價值。正如彼得·德魯克所說:“知識的關鍵在于應用?!北疚膶⒅笇闳绾斡行У貞眉聪樵児ぞ?,以提高數據探索的效率和準確性。
2024年12月16日 22:32 北京
在找到數據之后,確定了哪些表是需要的,是符合預期的,就需要進行數據查詢探索。
即席查詢的定位
如果說報表或者數據服務API是固定需求的數據展示和數據獲取。那么即席查詢即是靈活的數據探索。一個是固定場景,一個是靈活數據探索。探索過程中用戶能夠獲取什么都是未知的,而且大部分都是臨時性的。
這就涉及到另一個問題,數據消費者是不是有能力、有意愿進行數據查詢,因為畢竟數據查詢的過程是需要寫SQL的。不可否認的是,寫SQL對于一部分數據消費者是有一定門檻的,但是也需要確定的是,一部分數據消費者是有查詢需求的。針對高門檻的可以使用拖拽式、使用NLP2SQL來降低一下門檻。針對于有述求的用戶這個產品就很是和他們需求契合了。
即席查詢的基本界面
另外此類產品開源的界面也很多。一類是上面是編輯框,下面展示結果,開源的類似hue、Superset、Redash等。一類一行編輯框, 一行執行結果,如Zeppelin。(此類型接觸的較少),主要介紹第一類。
即席查詢在界面上,和離線開發中的SQL類任務開發是類似甚至可以完全一樣的。
左邊內容
在左邊的內容中,主要保存查詢任務、和有權限查詢的表以及表的字段信息。
中間內容
中間內容中主要的就是一個編輯框了,在編輯框中能夠進行SQL編輯,這個編輯框里面編輯的內容需要能夠有關鍵字提示、高亮、局部代碼執行、規范化顯示等等。
中間內容的下半部分的話就是執行的代碼的顯示了。直接顯示出來執行結果。
執行結果這里有一個問題,就是針對異步執行的查詢,當關閉顯示框的時候,如何能夠將之前執行的查詢的狀態、結果顯示出來那??梢詥为氂幸粋€歷史查詢界面,如果能夠拿到查詢任務和底層執行的對應關系的話,直接在每個查詢結果顯示界面顯示歷史也是可以的。
即席查詢的低門檻
操作上的低門檻
在操作門檻上可以把表進行拖拽,之后將拖拽的內容生成對應的SQL,進行數據查詢。
當然,也可以將SQL關鍵字都進行抽象,從而實現拖拽式的低門檻。
結合大模型的低門檻
2023年大模型的火熱感覺燒到了各個角落里。其中如果和即席查詢結合的話,大模型能提供什么能力?上面也說到過數據消費者可能存在一部分人不悔寫SQL的問題,那么是不是可以讓這部分人僅僅寫自然語言,然后通過大模型將自然語言轉換為SQL那。答案是肯定的。在輸入特定prompt之后,大模型就能很方便的轉化為SQL語句。
table_info = “””
CREATE TABLE ods_dev.tb_scrm_customer_d (
[[‘zip_code’ ‘string’ ‘郵編’]
[‘wechat_uuid’ ‘string’ ‘微信uuid’]
[‘wechat_name’ ‘string’ ‘微信號名稱’]
[‘wechat_head_portrait’ ‘string’ ‘微信頭像’]
[‘uuid’ ‘string’ ‘微信的uuid’]
[‘update_time’ ‘datetime’ ‘更新時間’]
[‘update_by’ ‘string’ ‘更新人’]
[‘telephone’ ‘string’ ‘固化電話’]
[‘short_name’ ‘string’ ‘公司簡稱’]
[‘shop_name’ ‘string’ ‘虛擬店名稱’]
[‘shop_id’ ‘string’ ‘虛擬店id’]
[‘sex’ ‘bigint’ ‘性別’]
[‘retained_capital_city’ ‘string’ ‘用戶留資城市’]
[‘residential_address’ ‘string’ ‘用戶居住地址’]
[‘resident_province’ ‘string’ ‘常駐省份’]
)
“””
I would like you to be my data anlysts and generate accurate hive sql query for the question
– Make sure the query is postgres compitiable
– Ensure case sensistivity
– Do not add any special information or comment, just return the query
The expected output is code only. Always use table name in column reference to avoid ambiguity
但是大模型不能保證百分之百的準確,而且準確率依賴輸入的字段備注等信息。所以個人對于這類chat2SQL的產品是否能夠真正落地是存在疑問的。
和可視化類產品間的關系
隨著BI報表類產品能力邊界的不斷擴展,在BI類產品中也都會出現數據探索的即席查詢的能力,也會有已經有了BI產品為什么還要有單獨的即席查詢類的數據探索產品。但個人認為,因為最終的目標不同,在能力發展上也會有區別,可視化類的更加偏重界面的展示,即席查詢類的主要就是數據查詢分析。
而且對接的數據源上,BI類產品一般因為效率的原因都是對接MySQL或者HOLO此類的數據庫,不會對接Hive等真正存儲大量數據的系統。
當然,這兩個產品如果能更好的聯動起來的話,比如使用即席查詢分析完數據之后,能夠很方便的使用BI產品進行可視化的展示,算是更好的聯動了。
說到聯動,這里也提一下可以和數據服務API的聯動。在2、基于SQL創建 中提到,如果創建API的過程是使用SQL來創建一個數據服務API。那么是不是也可以使用即席查詢和數據服務API的創建過程聯動起來。當然,如果這樣的話就需要再劃分下數據服務誰開發的問題,在數據服務開發篇中,這些數據服務是有數據加工者開發完成的。而這里使用即席查詢的過程是數據消費者。但是,工具流程上可以這么打通。
異構融合查詢
跨源異構,通俗來說就是能把兩種不同類型的表間關聯起來進行查詢。不過,是這樣的話就又涉及到,這個功能是放在離線開發部分讓數據加工者來進行異構融合查詢合適,還是放在數據運營部分,讓數據消費者合適。
很顯然,數據消費者之需要消費已經加工好的數據,而已經加工好的數據,存儲在單一的類型上是更合理的。所以個人認為如果有數據的異構融合查詢,那么放在離線開發部分可能更合適。也就是說在數據消費者領域,異構融合查詢的需求是不是真實存在,是可以探討一下的問題。
本文由人人都是產品經理作者【數據小吏】,微信公眾號:【數據小吏】,原創/授權 發布于人人都是產品經理,未經許可,禁止轉載。
題圖來自Unsplash,基于 CC0 協議。
這些領域的發展需要不斷地探索和創新,以滿足不斷變化的市場需求和技術進步。