精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何將Pandas數據幀加載到QuestDB

譯文
數據庫
本文將介紹如何通過使用QuestDB Python包獲取Pandas DataFrames來提高時間序列分析能力。

譯者 | 李睿

審校 | 重樓

簡介

Pandas是一個開源的Python數據分析和數據操作庫,如今已經成為數據科學家和分析師的必備工具。它提供了一種簡單直觀的數據操作方式,使其成為完成數據分析任務的熱門選擇。

盡管Pandas在中小型數據集方面表現出色,但它可能難以處理超過其所運行機器可用內存的大型數據集。這正是QuestDB的優勢所在,它專門為此類場景中的高性能操作而設計,使其成為高要求數據分析任務的首選解決方案。

通過將Pandas DataFrames加載到QuestDB中,可以利用數據庫強大的數據處理功能,使用戶能夠將分析和數據操作擴展到大型數據集。以下將學習如何將大型Pandas數據幀加載到QuestDB中,并使用紐約市出租車和豪華轎車委員會發布的黃色和綠色出租車行程記錄作為數據來源。

先決條件

對于本文中的教程,建議用戶對Python和SQL有基本的了解。此外,還需要在其機器上安裝以下軟件:

  • Docker

獲取數據

在開始將數據加載到QuestDB之前,需要獲取將要使用的數據。如上所述,將使用紐約市出租車和豪華轎車委員會的黃色和綠色出租車行程記錄,并下載數據:

  • 首先創建一個名為pandas-to-questdb的新目錄,并在其中創建一個data目錄。
  • 在終端中編輯并執行以下命令下載Parquet文件:
Shell 
 curl -L -o ./data/yellow_tripdata_2022-<MONTH>.parquet https://d37ci6vzurychx.cloudfront.net/trip-data/yellow_tr

需要確保將<MONTH>替換成為要下載的月份的零前綴數字(在01和11之間,在撰寫本文時第12個月是不可用的)。

有了要獲取的數據,那么現在是嘗試使用Pandas加載它的時候了。

將記錄加載到內存中

人們可能已經注意到下載的文件是Parquet格式的,Parquet是一種用于大數據處理的柱狀存儲格式。與CSV和JSON等傳統的基于行的存儲格式相比,它們經過優化,可與現代大數據處理引擎一起使用,并提供高效的數據存儲和檢索。

在能夠加載任何數據之前,將設置一個模擬生產環境,在那里可以輕松地測試如果Pandas不能將Parquet文件加載到內存中會發生什么情況。在生產過程中,用戶經常遇到必須處理內存約束的情況,這個環境可以反映這一點。

運行以下命令創建一個新的Docker容器,其內存限制為1GB。如果容器達到了這個限制,Docker會終止它,或者操作系統會內存溢出(OOM)終止正在運行的進程:

Shell 
 docker run -it -m 1g -v "$(pwd)":/tutorial -w /tutorial --net host python:3.11.1-slim-bullseye /bin/bash

現在,有了一個基于Ubuntu的Python 3.11 Docker容器。用戶可以根據自己的需求安裝,創建一個包含以下內容的requirements.txt文件:

Plain Text 
 pandas>=1.5.3
 psycopg[binary]>=3.1.8
 pyarrow>=11.0.0
 questdb>=1.1.0

現在,在容器內執行pip install -r requirements.txt。Pip將安裝Python需求。

至此,有了一個可以加載數據的測試環境。創建一個名為data_loader.py的新文件,其中包含以下內容:

Python 
 # data_loader.py
 import pandas as pd

 df = pd.read_parquet("./data/yellow_tripdata_2022-01.parquet")
 print(df.head())

現在,在Docker容器中運行python data_loader.py來執行它。程序成功運行,可以看到以下內容:

在這里載入了2022年1月的出租車行程記錄可以嘗試加載更多的數據。將data_loader.py的內容替換為以下代碼,從data目錄加載所有文件,并再次執行該程序:

Python 
 # data_loader.py

 import os
 import glob
 import pandas as pd
 
 records = glob.glob(os.path.join("data", "*.parquet"))
 
 df = pd.concat((pd.read_parquet(r) for r in records), ignore_index=True)

 print(df.head())

在執行data_loader.py時,應該得到一條錯誤消息“已經終止”。正如人們可能認為的那樣,內存溢出(OOM)殺手終止了該過程。并且無法加載數據集,因此不能這樣做,而是需要一種不同的方法。

將數據攝取到QuestDB

在一個新的終端窗口中,通過執行以下操作啟動QuestDB容器:

Shell 
 docker run --rm -it -p 8812:8812 -p 9009:9009 --net host --name questdb questdb/questdb

數據庫現在可以接收數據了。更新data_loader.py以使用QuestDB包將數據攝取到QuestDB中,該包使用TCP上的InfluxDB Line Protocol (ILP)以獲得最大吞吐量。

為了處理大型數據集,將逐個讀取文件并將其內容傳輸到QuestDB。然后,將使用QuestDB來查詢數據,并將結果加載回Pandas DataFrames中。基于以上重構數據加載器:

Python 
# data_loader.py

 import os
 import glob
 import pandas as pd
 from questdb.ingress import Sender

 def main():
 files = glob.glob(os.path.join("data", "*.parquet"))

 with Sender("127.0.0.1", 9009) as sender:
 for file in files:
 df = pd.read_parquet(file)
 print(f"ingesting {len(df.index)} rows from {file}")
 sender.dataframe(df, table_name="trips", at="tpep_pickup_datetime")

 if __name__ == "__main__":
 main()

讓我們從頭開始。注意到的第一個主要變化是,需要在腳本中指定主機名和端口號才能運行它。

然后遍歷Parquet文件,并使用Pandas將它們加載到內存中。之后,利用QuestDB的Python客戶端,將直接從Pandas DataFrames攝取到QuestDB。

在Python容器中,運行Python data_loader.py。腳本每次攝取一個Parquet文件。

使用行程數據

到目前為止,已經準備好了數據集并將其加載到QuestDB中。現在是執行一些查詢并將結果加載到DataFrames中的時候了。使用整個數據集,希望知道按乘客分組的乘客的平均總支付金額是多少。

創建一個名為query_amount.py的新文件,包含以下內容:

Python 
 # query_amount.py

 import pandas as pd
 import psycopg

 QUERY = """
 SELECT passenger_count, avg(total_amount)
 FROM 'trips'
 WHERE passenger_count > 0
 GROUP BY passenger_count
 """

 if __name__ == "__main__":
 conn = psycopg.connect(
 dbname="questdb",
 host="127.0.0.1",
 user="admin",
  password="quest",
 port=8812,
 )

df = pd.read_sql_query(QUERY, conn)

 print(df.head(10))

與數據加載器腳本類似,該腳本需要主機和端口。在上面的腳本中,使用了PostgreSQL Python客戶端并使用它連接到QuestDB。在Python容器中,執行Python query_amount.py:

在完成腳本之后,應該看到乘客支付的平均總金額。有趣的是,6名乘客和7名乘客的平均金額相差很大,7名乘客的平均金額幾乎是6名乘客的2.5倍。

通過進一步分析數據,可能會發現這一根本原因,這可能與人類的本性有關:這是因為對于路程更長的旅行,人們通常會分擔乘車費用。

結語

在本文中,學習了如何使用Pandas DataFrames將大型數據集加載到QuestDB中。通過將數據從Pandas傳輸到QuestDB,利用了數據庫強大的數據處理能力,使用戶能夠擴展分析和數據操作,以處理大型數據集。

本文的教程中概述的方法只是使用Pandas和QuestDB處理大數據的一種方法。用戶可以自定義這一方法以滿足其特定需求,并繼續探索這些強大工具的可能性。最終目標是使數據分析和操作更容易和更有效,而不管數據集的大小。

原文標題:Loading Pandas DataFrames Into QuestDB作者:Gabor Boros

責任編輯:華軒 來源: 51CTO
相關推薦

2021-08-12 08:00:00

Pandas數據分析SQL

2021-04-19 12:31:04

太坊數據QuestDB

2020-02-28 09:26:54

PythonGo語言C語言

2023-02-17 12:07:45

ChatGPTPython

2011-06-13 15:09:36

插件 Qt Designer

2017-11-21 08:36:00

MongoDB關系型數據庫數據導入

2022-10-10 11:00:29

數據分析云戰略

2018-10-09 14:16:21

Hadoop數據移入數據傳輸

2009-08-26 18:05:25

ViewState持久

2021-01-28 09:00:00

SQL數據庫NoSQL

2018-10-22 14:48:39

KafkaHadoop代碼

2012-06-20 11:17:02

MemSQL

2018-06-12 15:07:57

IT

2011-05-18 14:51:43

2009-06-11 10:50:27

netbeans配置

2011-11-08 15:15:40

路由器復位

2012-11-07 15:57:34

OSSECMYSQL

2015-10-28 14:59:26

JAVA插件Chrome

2011-04-11 15:55:03

商業智能數據

2016-09-06 10:58:31

大數據信息
點贊
收藏

51CTO技術棧公眾號

在线观看精品自拍私拍| 色哦色哦哦色天天综合| 99r国产精品视频| 精品无码一区二区三区电影桃花| 久久影院资源站| 色婷婷激情一区二区三区| 亚洲国内在线| 亚洲美女综合网| 亚洲欧美高清| 久久精品国产91精品亚洲| 在线观看你懂的视频| 在线中文字幕播放| 中文字幕视频一区| 国内精品久久国产| 在线观看国产精品入口男同| 在线日本高清免费不卡| 在线观看91久久久久久| 一级全黄裸体片| 国产一区二区三区朝在线观看| 综合婷婷亚洲小说| 免费国产一区二区| 国产视频第二页| 欧美亚洲一级| 欧美成人激情视频免费观看| 在线观看国产网站| 电影一区中文字幕| 在线观看日韩毛片| 成人免费观看在线| 国产午夜精品久久久久免费视| 成人黄页毛片网站| 国产在线一区二区三区| 日本三级中文字幕| 综合av在线| 怡红院精品视频| av2014天堂网| 香港久久久电影| 91成人免费电影| 内射国产内射夫妻免费频道| 国产最新在线| 国产精品三级久久久久三级| 久久精品国产第一区二区三区最新章节 | 亚洲精华液一区二区三区| 中文字幕一区二区三区视频| 日韩国产高清一区| 日韩欧美亚洲系列| 不卡一区二区三区四区| 亚洲xxx大片| 一卡二卡在线视频| 日韩国产精品91| 欧洲中文字幕国产精品| 国产精品7777| 激情视频一区二区三区| 蜜臀久久99精品久久久久久宅男| 天堂网av2018| 成人av国产| 亚洲欧洲日产国产网站| 国产美女视频免费观看下载软件| 97se亚洲| 日韩亚洲电影在线| 色呦色呦色精品| 伊人久久大香线蕉综合影院首页| 欧美日韩亚州综合| 中文字幕第21页| 3d性欧美动漫精品xxxx软件| 色婷婷综合久久| av无码精品一区二区三区| 成人美女视频| 在线观看视频91| 久久婷五月综合| 欧美大片网站| 欧美一区二区日韩| 天堂网成人在线| 亚洲国产一区二区三区网站| 精品少妇一区二区三区视频免付费| 欧美视频亚洲图片| 一区二区三区国产好| 日韩免费电影一区| 超碰caoprom| 日韩动漫一区| 有码中文亚洲精品| 欧美激情精品久久久久久免费| 99热国内精品| 九九热这里只有精品免费看| 久久精品视频日本| 亚洲深夜激情| 国产精品高潮呻吟久久av无限 | 国产精品夜色7777狼人| 91黄色在线视频| 国产精品羞羞答答xxdd| 国产伦精品一区二区三区免 | 亚洲成年网站在线观看| 亚洲观看黄色网| 视频一区中文| 欧美成年人视频网站| 日本少妇xxxx动漫| 日韩电影在线观看电影| 亚洲一区二区三区毛片| 午夜视频福利在线观看| 国产精品视频观看| 亚洲激情免费视频| av综合电影网站| 欧美美女bb生活片| 国产精品一级黄片| 97精品在线| 91成人在线视频| 中文字幕免费播放| 99麻豆久久久国产精品免费优播| 欧洲精品码一区二区三区免费看| 日本在线播放| 午夜精品成人在线| 日日躁夜夜躁aaaabbbb| 国产96在线亚洲| 色香阁99久久精品久久久| 久久久久久国产精品免费播放| 亚洲欧美久久久| 91久久精品美女高潮| 日韩国产福利| 亚洲精品成人少妇| 五月婷婷深爱五月| 欧美顶级毛片在线播放| 久久精品中文字幕电影| 亚洲欧美一区二区三区在线观看| 国产一区在线看| 欧洲一区二区在线观看| 欧美高清另类hdvideosexjaⅴ| 色偷偷久久一区二区三区| 日批免费观看视频| 亚洲国产精品久久久久蝴蝶传媒| 日韩**中文字幕毛片| 蜜臀久久99精品久久久| 中文字幕一区免费在线观看 | 97人澡人人添人人爽欧美| 欧美三级电影网站| 国产ts在线播放| 精品福利电影| 99视频在线播放| 麻豆视频网站在线观看| 在线观看亚洲专区| 欧美偷拍一区二区三区| 中文一区二区| 精品久久久久久乱码天堂| 超碰免费在线播放| 欧美另类一区二区三区| 美国黄色特级片| 美女网站久久| 鲁丝片一区二区三区| av在线资源| 日韩欧美一级二级三级| h色网站在线观看| 久久丁香综合五月国产三级网站| 日韩精品欧美专区| 日韩在线观看不卡| 一道本无吗dⅴd在线播放一区| 天天操夜夜操视频| 久久亚洲捆绑美女| 逼特逼视频在线| 天堂成人娱乐在线视频免费播放网站| 国内精品400部情侣激情| 亚洲国产精品欧美久久| 亚洲综合区在线| 蜜桃色一区二区三区| 欧美黄色一级视频| 国产91免费视频| free性m.freesex欧美| 亚洲国产日韩欧美在线动漫| 精品成人免费视频| 久久久精品tv| 日韩av手机版| 91精品婷婷色在线观看| 99久热re在线精品视频| rebdb初裸写真在线观看| 亚洲国产欧美久久| 国产www在线| 国产女人18水真多18精品一级做| 成人性做爰aaa片免费看不忠| 国产成人久久| 国产日韩精品在线| 亚洲男同gay网站| 亚洲国产精品电影在线观看| 黄色片免费观看视频| 国产喂奶挤奶一区二区三区| 国产精品区在线| 午夜久久影院| 久草精品电影| 成人在线视频观看| 欧美美女15p| 亚洲欧美综合一区二区| 欧美视频在线观看一区二区| xxxx日本少妇| 91毛片在线观看| 在线观看免费的av| 亚洲天堂偷拍| 任我爽在线视频精品一| 国模大尺度视频一区二区| 久久久久五月天| 成人在线免费观看| 日韩免费一区二区| 免费一级a毛片| 一区二区三区国产精品| 中文字幕高清视频| 国产乱淫av一区二区三区| 男人和女人啪啪网站| 久久久久av| 久久av一区二区三区漫画| 亚洲香蕉久久| 人体精品一二三区| 色噜噜狠狠狠综合欧洲色8| 亚洲色图35p| 亚洲精品免费在线观看视频| 在线免费亚洲电影| 国产无遮挡又黄又爽又色| 国产精品污网站| 六十路息与子猛烈交尾| 国产剧情一区二区三区| 黑人粗进入欧美aaaaa| 国精品一区二区三区| 一本一生久久a久久精品综合蜜| 国产福利一区二区精品秒拍| 成人黄色午夜影院| 中文在线中文资源| 欧美成人免费全部| 2019中文字幕在线视频| 日韩精品在线免费播放| 成人黄色免费视频| 777欧美精品| 中国a一片一级一片| 精品久久久视频| 国产无精乱码一区二区三区| 成人免费在线视频观看| 日本一区二区视频在线播放| 91首页免费视频| 国产视频精品视频| 国产在线日韩欧美| 天天干天天操天天做| 肉色丝袜一区二区| 两根大肉大捧一进一出好爽视频| 欧美在线精品一区| 天天干天天操天天干天天操| re久久精品视频| 欧美性天天影院| 亚洲欧美日本伦理| 久久久精品国产一区二区三区| av成人综合| 91网免费观看| 欧美影院精品| 91综合免费在线| 57pao成人永久免费| 成人日韩在线电影| 综合久草视频| 亚洲一区中文字幕在线观看| 图片一区二区| 成人淫片在线看| 色诱色偷偷久久综合| 国产主播精品在线| 国产精品久久久久久av公交车| 成人中文字幕在线观看| 国产精品白丝久久av网站| 亚洲自拍高清视频网站| 欧美片网站免费| 粉嫩av四季av绯色av第一区| av不卡一区二区| 激情五月综合色婷婷一区二区 | 午夜亚洲伦理| 蜜臀av午夜一区二区三区| 老牛国产精品一区的观看方式| 亚洲人成无码www久久久| 日韩国产欧美三级| 手机av在线免费| 国产精品亚洲一区二区三区在线 | 91小视频在线观看| b站大片免费直播| 欧美国产精品一区二区| 午夜精品福利在线视频| 亚洲风情在线资源站| 亚洲精品男人天堂| 欧美综合久久久| 国产乱码精品一区二三区蜜臂 | 老司机精品视频在线播放| 久久久久久久有限公司| 精品一区二区三区的国产在线观看| 天堂av一区二区| 91精品综合| 国产美女在线一区| 老色鬼久久亚洲一区二区| 在线观看日本一区二区| 国产成人综合精品三级| 精品无码在线视频| 国产精品乱码久久久久久| 草视频在线观看| 狠狠爱在线视频一区| 在线免费观看一级片| 亚洲第一精品自拍| 成人高清免费观看mv| 欧美另类第一页| 欧美一区久久久| 成人黄色片网站| 一本色道久久综合亚洲精品酒店| 在线观看日韩羞羞视频| 一区二区三区国产盗摄| 在线观看亚洲色图| heyzo一本久久综合| 久久免费手机视频| 午夜av一区二区三区| 夜夜嗨aⅴ一区二区三区| 精品成人a区在线观看| 北岛玲日韩精品一区二区三区| 欧美激情xxxxx| 久久99国产精品二区高清软件| 成人欧美一区二区三区视频| 欧美日韩精品在线一区| 人妻夜夜添夜夜无码av| 九九国产精品视频| 强伦人妻一区二区三区| 一区二区三区日韩欧美精品| 中文字幕 日韩有码| 亚洲国产成人av在线| 麻豆传媒在线观看| 国产精品电影在线观看| 国产另类在线| 国内外成人激情免费视频| 久久美女性网| 亚洲国产精品无码久久久久高潮| 日韩理论片中文av| 中文字幕一区二区人妻| 国产午夜精品理论片a级探花| 久草在线资源站资源站| 91午夜在线播放| 99久精品视频在线观看视频| 日日碰狠狠丁香久燥| 26uuu国产在线精品一区二区| 久久久久成人网站| 4438x亚洲最大成人网| 91社区在线观看| 国产精品av网站| 丝袜久久网站| 国产免费黄色小视频| 国产sm精品调教视频网站| 男女性高潮免费网站| 欧美美女bb生活片| 中文日本在线观看| 国产精品成人va在线观看| 久久99精品国产自在现线| 97碰在线视频| 国产99久久久国产精品免费看| 永久av免费网站| 91.com视频| a级毛片免费观看在线| 91久久久国产精品| 91精品婷婷色在线观看| 初高中福利视频网站| 亚洲精品成人精品456| 精品人妻少妇AV无码专区| 欧美片一区二区三区| 亚洲三级av| 国产中文字幕乱人伦在线观看| 高清成人免费视频| 久久久久成人网站| 日韩大陆毛片av| 在线观看欧美日韩电影| 秋霞久久久久久一区二区| 久久婷婷麻豆| 超碰人人人人人人人| 欧美日韩国产一区| 成人av福利| 国产精品免费在线播放| 亚洲美女啪啪| 久久久久久国产精品无码| 欧洲视频一区二区| 女女色综合影院| 3d动漫啪啪精品一区二区免费| 在线观看的日韩av| 波多野结衣一本| 欧美日韩国产一级二级| 午夜成年人在线免费视频| 国产精品xxxx| 久久久精品五月天| 神马久久精品综合| 欧美精品一区男女天堂| 久久91导航| 国产日产欧美一区二区| 成人av午夜电影| 999视频在线| 久久深夜福利免费观看| 精品淫伦v久久水蜜桃| 久久精品99国产| 亚洲欧洲无码一区二区三区| 成人午夜免费在线观看| 日本久久久久久| 重囗味另类老妇506070| 野花社区视频在线观看| 欧美喷潮久久久xxxxx| 国产精品蜜臀| 亚洲国产精品久久久久久女王| 国产精品一区二区免费不卡| 日韩色图在线观看| 久久久精品免费视频| 色老板在线视频一区二区| www.桃色.com| 欧美性猛交xxxx偷拍洗澡 | 欧美福利视频在线|