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

Mongodb數據庫轉換為表格文件的庫

數據庫 其他數據庫
Mongo2file庫是一個可以將 Mongodb 數據庫轉換為表格文件的庫,不僅支持導出csv、excel、以及 json 文件格式, 還支持導出 pickle、feather、parquet 的二進制壓縮文件。

前言

大家好,我是吳老板。今天給大家分享一個可將Mongodb數據庫里邊的文件轉換為表格文件的庫,這個庫是我自己開發的。

Mongo2file庫是一個 Mongodb 數據庫轉換為表格文件的庫。

在我的日常工作中經常和 mongodb 打交道,而從 mongodb 數據庫中批量導出數據為其他格式則成為了剛需。

如果您跟我一樣每次導出數據時都需要重新編寫或到處尋找 腳本代碼 的話,這個庫可能會對您產生幫助。

依賴于快速 PyArrow

mongo2file 依賴于 PyArrow 庫。它是 C++ Arrow 的 Python 版本實現。

PyArrow 目前與 Python 3.7、3.8、3.9 和 3.10 兼容。

倉庫地址: https://github.com/apache/arrow。

如果您在 Windows 上遇到任何的導入問題或錯誤,您可能需要安裝 Visual Studio 2015。

警告: PyArrow 目前只支持到 win64 位 ( Python 64bit ) 操作系統。

其次,除了常見的 csv、excel、以及 json 文件格式之外, mongo2file 還支持導出 pickle、feather、parquet 的二進制壓縮文件。

pickle、feather、parquet 是 Python 序列化數據的一種文件格式, 它把數據轉成二進制進行存儲。從而大大減少讀取的時間。

安裝

pip install mongo2file

基本用法

快速開始

當 MongoEngine 控制類指定了 mongodb 表名稱時、將對數據表 (mongodb集合) 進行導出操作。

其類方法參數包括:

  • query: 指定對數據表的查詢參數、只對指定表名時有效。
  • folder_path: 指定導出目錄路徑。
  • filename: 指定導出文件名、默認為 表名稱 + 當前時間。
  • _id: 指定是否導出 _id、布爾型、默認為 False。
  • limit: 指定導出表的限制數據、int類型、默認為 -1、即不限制。
import os
from mongo2file import MongoEngine
"""
作用于 MongoEngine 類未指定表名稱時
"""
M = MongoEngine(
host=os.getenv('MONGO_HOST', '127.0.0.1'),
port=int(os.getenv('MONGO_PORT', 27017)),
username=os.getenv('MONGO_USERNAME', None),
password=os.getenv('MONGO_PASSWORD', None),
database=os.getenv('MONGO_DATABASE', 'test_')
)
def to_csv():
result_ = M.to_csv()
assert "successfully" in result_
def to_excel():
result_ = M.to_excel()
assert "successfully" in result_
def to_json():
result_ = M.to_json()
assert "successfully" in result_
to_csv()

當 MongoEngine 控制類只指定了 mongodb 庫名稱時、將對數據庫下所有集合進行導出操作。

面對 mongo2file 的瓶頸和改進

對于 mongodb 的全表查詢、條件查詢、聚合操作、以及索引操作(當數據達到一定量級時建議) 并不是直接影響 數據導出的最大因素。

因為 mongodb 的查詢一般而言都非常快速,主要的瓶頸在于讀取 數據庫 之后將數據轉換為大列表存入 表格文件時所耗費的時間。

這是一件非常可怕的事情。

當沒有多線程(當然這里的多線程并不是對同一文件進行并行操作,文件寫入往往是線程不安全的)、 數據表查詢語句無優化時,并且當數據達到一定量級時(比如 100w 行),單表單線程表現出來的效果真是讓人窒息。

在 mongo2file 在進行大數據量導出時表現的并沒有多么優秀。導致的主要原因可能是:

  • 采用的 xlsxwriter 庫寫入 excel 時是積極加載(非惰性)的,數據全部加載至內存后插入表格。
  • 大數據量插入表格時、跟宿主機器的性能有關。
  • mongo2file 表現的不如人意時,我做出了一下改進。
  • 當數據量過大時,數據表分塊讀取,導出多表格。
  • 增加線程池的最大并發數、當選取的 block_size 值合適時,將發揮最大性能。

對于數據轉換一些建議

  • 對于 xlsxwriter、openpyxl、xlwings 以及 pandas 引用的任何引擎進行寫入操作時、都會對寫入數據進行非法字符的過濾。這一點從部分源碼中可以看得出來。
  • 由于行數據表中可能存在 excel 無法識別的非法字符 (比如空列表 []) , 當寫至此行時將拋出 非法類型 的錯誤。
  • 而比較恰當合理的做法就是在存儲 mongodb 文檔時不要存入類似于 []、{} 的這種對原始數據無意義的空對象。

Reference API

MongoEngine

MongoEngine(
host='localhost',
port=27017,
username=None,
password=None,
database='測試庫',
collection='測試表_200000'
)

to_csv(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數
:param is_block: 是否分塊導出
:param block_size: 塊大小、is_block True 時生效

to_excel(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數
:param is_block: 是否分塊導出
:param block_size: 塊大小、is_block True 時生效
:param mode: 導出模式, 枚舉類型、sheet xlsx, is_block True 時生效
:param ignore_error: 是否忽略錯誤、數據表中存在非序列化類型時使用、這將一定程度上影響程序的性能

to_json(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數
:param is_block: 是否分塊導出
:param block_size: 塊大小、is_block True 時生效

to_pickle(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數

to_feather(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數

to_parquet(query, folder_path, filename, ...)

:param query: 數據庫查詢條件、字典類型、只作用于單表導出
:param folder_path: 指定導出的目錄
:param filename: 指定導出的文件名
:param _id: 是否導出 _id 默認否
:param limit: 限制數據表查詢的條數

總結

以上就是今天要分享的全部內容了,總的來說,Mongo2file庫是一個可以將 Mongodb 數據庫轉換為表格文件的庫,不僅支持導出csv、excel、以及 json 文件格式, 還支持導出 pickle、feather、parquet 的二進制壓縮文件。歡迎大家積極嘗試。

責任編輯:姜華 來源: Python爬蟲與數據挖掘
相關推薦

2010-06-04 18:32:48

MySQL數據庫

2011-04-08 10:16:13

文本文件ACCESS數據庫

2011-07-11 10:42:23

SQL數據庫橫向數據縱向字段

2021-06-08 11:48:40

SQL數據庫電子表格

2022-06-01 22:11:20

Oracle數據庫

2019-08-20 14:02:07

MongoDB數據庫恢復數據

2022-02-25 17:38:15

Citus

2010-07-01 11:14:36

SQL Server

2011-10-11 17:07:12

數據庫Internet文件數據庫

2020-07-06 14:20:43

MongoDB數據庫安全

2011-07-26 13:55:01

MongoDB備份與恢復

2010-09-09 08:42:28

MongoDB

2010-05-05 10:19:19

Oracle數據導

2011-07-28 11:44:46

SQL Server數合并表格數據

2021-08-04 09:00:53

Python數據庫Python基礎

2009-05-19 10:22:29

數據庫表格隨機讀取數據庫

2010-05-05 14:44:50

Oracle數據庫

2011-08-03 13:28:08

Oracle數據庫數據庫控制文件

2017-01-22 08:49:05

MongoDB數據庫故障

2020-07-17 08:20:27

數據庫開源技術
點贊
收藏

51CTO技術棧公眾號

成人h动漫精品| 伊人色**天天综合婷婷| 欧美性受xxxx黑人xyx性爽| 日韩欧美视频第二区| 日批视频免费观看| 羞羞答答成人影院www| 日韩欧美一区中文| 久久久久久久久久久久久国产精品| 国产日本在线观看| 激情综合网av| 2019国产精品自在线拍国产不卡| 91l九色lporny| 亚洲专区**| 日本久久一区二区| 中文字幕色呦呦| 你懂的在线播放| 国产一二三精品| 日本久久中文字幕| 久久久国产精华液| 欧美综合久久| 欧美变态tickle挠乳网站| 日本老熟妇毛茸茸| zzzwww在线看片免费| 国产精品国产精品国产专区不片| 国产精品国产精品国产专区不卡| 一区二区视频网| 国产精品久久久久久模特| 久久久精品2019中文字幕神马| 三级电影在线看| swag国产精品一区二区| 欧美性生活影院| 成熟丰满熟妇高潮xxxxx视频| 色的视频在线免费看| 久久免费电影网| 国产精品区一区二区三含羞草| 亚洲自拍偷拍另类| 久久久久久色| 69久久夜色精品国产69| 四虎免费在线视频| 久久在线视频免费观看| 精品视频中文字幕| 99久久免费看精品国产一区 | 欧美日韩第一| 日韩精品免费在线| 亚洲av永久无码精品| 欧美大片91| 日韩一区二区免费在线观看| 色婷婷.com| 国产精品诱惑| 欧美色图一区二区三区| 中文字幕第36页| 亚洲天堂一区二区| 色婷婷综合五月| 免费大片在线观看| 欧美日韩精品免费观看视完整| 色综合久久久网| 三级4级全黄60分钟| 日韩成人动漫| 欧美三级日韩在线| 91亚洲免费视频| 视频欧美精品| 欧美一级国产精品| 免费黄色av网址| 第一区第二区在线| 日韩电影在线观看永久视频免费网站| 欧美日韩人妻精品一区在线| 国产精品一线| 精品亚洲一区二区| 久久精品无码一区| 日韩综合在线| 美女撒尿一区二区三区| 欧美成人三级在线观看| 国产主播一区| 欧美专区中文字幕| 在线播放成人av| 国产高清精品在线| 久久精品成人一区二区三区蜜臀| 美女欧美视频在线观看免费| 国产精品三级在线观看| japanese在线视频| 超碰中文在线| 色嗨嗨av一区二区三区| 男生操女生视频在线观看| 亚洲专区**| 亚洲欧美精品中文字幕在线| 超碰人人人人人人人| 欧美在线高清| 欧美亚洲伦理www| 一区二区自拍偷拍| 国产成人av影院| 日本一区二区三区四区高清视频 | 亚洲少妇中文字幕| 日韩精品免费一区二区夜夜嗨| 在线观看日韩视频| 成人在线观看小视频| 一本不卡影院| 91精品免费视频| 四虎成人免费在线| 中文字幕日韩一区二区| 777av视频| 四虎国产精品成人免费影视| 亚洲精品国产suv| 中文国语毛片高清视频| 亚洲制服少妇| 亚洲在线观看视频网站| 可以在线观看的av网站| 亚洲精品免费在线播放| 一级黄色香蕉视频| 超碰在线亚洲| 日韩视频在线免费| 婷婷激情五月网| 国产乱码精品一区二区三区五月婷 | 久久精品91久久久久久再现| 欧美另类一区二区| 国产福利精品一区| 亚洲高清资源综合久久精品| 日韩脚交footjobhd| 日韩欧美一区电影| 福利视频第一页| 蘑菇福利视频一区播放| 成人在线免费网站| 黄色片网站在线| 91国内精品野花午夜精品| 星空大象在线观看免费播放| 自拍偷拍欧美专区| 国产欧美在线视频| 浮生影视网在线观看免费| 亚洲国产视频在线| 日韩精品视频网址| 欧美好骚综合网| 国产精品黄页免费高清在线观看| 天天色综合久久| 一区二区三区四区乱视频| 日本人69视频| 欧美激情偷拍自拍| 国产精品久久久久久久一区探花| 青青草视频免费在线观看| 亚洲成av人综合在线观看| 日本精品一区在线| 国产精品99久久精品| 国产精品一区二区久久久| 国产青青草在线| 色综合久久久网| 国产三级国产精品| 亚洲综合99| 免费精品视频一区二区三区| 深夜在线视频| 亚洲美女黄色片| 国产原创视频在线| 久久欧美一区二区| 青青在线免费观看视频| 国产欧美日韩精品一区二区免费 | 久久亚洲综合色一区二区三区| 欧美日韩在线一| 亚欧洲精品视频在线观看| 欧美洲成人男女午夜视频| 国产香蕉在线| 欧美天堂一区二区三区| 国产精品suv一区二区88| 久久精品国产久精国产| dy888午夜| 久久久精品区| 久久久久久久影院| 无码精品一区二区三区在线| 欧美午夜美女看片| 少妇av片在线观看| 国精产品一区一区三区mba桃花| 欧洲xxxxx| 福利在线一区| 日本不卡免费高清视频| www.亚洲.com| 91精品国产欧美一区二区| 麻豆国产尤物av尤物在线观看| 成人污污视频在线观看| 爱福利视频一区二区| 日本大胆欧美| 亚洲xxx自由成熟| 国产色播av在线| 亚洲午夜小视频| 国产伦精品一区二区三区四区| 亚洲精品成人在线| 精品夜夜澡人妻无码av| 免费高清不卡av| 日本黄色片一级片| 国产成人精品三级高清久久91| 国产精品久久一| 先锋成人av| 亚洲精品在线视频| 国产又粗又猛又爽又黄91| 亚洲午夜久久久久久久久电影院| 亚洲精品乱码久久久久久久| 蜜臀av性久久久久蜜臀aⅴ流畅| 97超碰免费观看| 亚洲成aⅴ人片久久青草影院| 成人国产精品色哟哟| 日韩伦理在线| 久久伊人91精品综合网站| 色欲av伊人久久大香线蕉影院| 欧美日韩一级二级| 国产精品7777| 国产精品白丝在线| 搡老熟女老女人一区二区| 国内精品写真在线观看| www.亚洲天堂网| 欧美精品国产一区| 日本高清视频一区二区三区 | 精品少妇一区二区三区日产乱码 | 国产一区二区播放| 国产无人区一区二区三区| www日本在线观看| 另类中文字幕网| 成年人黄色片视频| 在线视频观看日韩| 国产盗摄视频在线观看| 欧美日韩在线观看视频小说| 韩国成人av| 亚洲综合色婷婷在线观看| 成人www视频在线观看| 91久久国产综合久久91猫猫| 九九热这里只有精品免费看| 第一视频专区在线| 国产视频在线观看一区二区| 亚洲爱爱综合网| 欧美日韩激情一区二区三区| 在线观看污污网站| 精品久久久久久久久国产字幕 | 欧美视频一区二区三区…| 日韩视频中文字幕在线观看| 中文字幕精品三区| 91视频免费观看网站| 99精品欧美一区二区三区综合在线| 制服下的诱惑暮生| 精品在线你懂的| 国产三级三级看三级| 久久精品导航| 男人亚洲天堂网| 日日夜夜免费精品| 青青草原成人网| 亚洲一区观看| 中国丰满人妻videoshd| av成人毛片| 国产综合av在线| 久久电影一区| 免费观看成人网| 丝袜亚洲另类欧美| 99视频在线视频| 捆绑调教一区二区三区| 婷婷激情5月天| 国产在线精品一区二区夜色| 亚洲av无日韩毛片久久| 狠狠色综合日日| 中文字幕第六页| 成人性生交大片免费看中文网站| 四虎永久免费观看| 99riav久久精品riav| 无码人妻aⅴ一区二区三区 | 日韩三级精品电影久久久| 国产草草影院ccyycom| 欧美本精品男人aⅴ天堂| 午夜精品一区二区三| 精品欧美乱码久久久久久| 午夜精品久久久久久久爽| 精品国产乱码久久久久久久| 深夜福利视频网站| 亚洲网址你懂得| 97视频精彩视频在线观看| 日韩中文字幕av| 成人看av片| 7m第一福利500精品视频| 亚洲精品**中文毛片| 国产精品美女在线观看| 国产精品亚洲欧美一级在线| 97免费高清电视剧观看| 国产精品巨作av| 欧洲一区二区在线| 久久国产电影| av在线播放天堂| 日本不卡视频一二三区| 在线免费看v片| www.色综合.com| 免费黄色在线网址| 一区二区三区四区精品在线视频| 欧美激情亚洲综合| 欧美在线制服丝袜| 麻豆一区二区三区视频| 日韩电影在线一区二区三区| 日本亚洲一区二区三区| 91在线观看下载| 色撸撸在线视频| 亚洲一区在线观看网站| 黄色一级视频免费看| 正在播放一区二区| 香蕉视频成人在线| 日韩视频一区在线| 爱情电影社保片一区| 91九色视频在线| 日韩中文av| 老司机午夜网站| 久久婷婷丁香| 18禁一区二区三区| 国产精品青草久久| 国产女同在线观看| 欧美高清精品3d| 可以在线观看的av网站| 欧美国产日韩免费| 国产国产一区| 蜜桃久久精品乱码一区二区 | 午夜精品久久久内射近拍高清| 国产在线播放一区| 永久免费看mv网站入口78| 夜夜嗨av一区二区三区四季av| 国产精品无码一区| 亚洲精品久久久久久久久久久久 | 日韩欧美成人免费视频| 99在线观看精品视频| 伊人激情综合网| 性爽视频在线| 国产精品一区二区三区在线观| 99久久99久久精品国产片果冰| 国产美女三级视频| 成人国产精品免费观看| 91插插插插插插| 欧美日韩国产一区| 国产高清在线看| 日本精品视频在线观看| 精品视频高潮| 久久综合亚洲精品| 国产一区二区免费在线| 一级片黄色录像| 欧美性受xxxx黑人xyx| 国产高清免费在线播放| 日韩美女激情视频| 日韩啪啪网站| 日日碰狠狠添天天爽超碰97| 国产99久久久久久免费看农村| h色网站在线观看| 91精品国产综合久久婷婷香蕉 | 综合久久久久久| 怡春院在线视频| 在线日韩日本国产亚洲| 成人开心激情| 日韩精品另类天天更新| 日韩不卡一区二区三区| 一色道久久88加勒比一| 91久久国产综合久久| 电影av一区| 国产日韩视频在线观看| 久久精品高清| 亚洲污视频在线观看| 中文字幕一区在线观看视频| 91成人一区二区三区| 久久韩国免费视频| 欧美专区视频| 日韩成人三级视频| 91一区二区三区在线观看| 久久不卡免费视频| 亚洲欧洲美洲在线综合| 电影亚洲一区| 日本一区二区免费高清视频| 高清久久久久久| 成人免费区一区二区三区| 日韩美女av在线| 国产亚洲欧美日韩精品一区二区三区 | 日韩av片电影专区| 第四色成人网| 麻豆传媒在线看| 午夜不卡av在线| 国产中文字幕在线| 91久久久久久久久| 一区二区自拍| 精品无码人妻一区二区免费蜜桃| 精品视频在线免费看| 色呦呦在线资源| 久久精彩视频| 激情久久五月天| 欧美亚洲天堂网| 亚洲日本成人网| 久久九九精品视频| 亚洲国产精品久久久久婷蜜芽| 国产精品视频免费| 国模无码一区二区三区| 茄子视频成人在线| 天堂美国久久| 亚洲天堂成人av| 91精品久久久久久蜜臀| 国产精选在线| 亚洲三区在线观看| 99视频精品全部免费在线| 中文字幕黄色av| 高清在线视频日韩欧美| 大色综合视频网站在线播放| 人妻互换一二三区激情视频| 欧美性猛交xxxxxxxx| 欧美wwww| 亚洲国产精品视频一区| 成人性生交大合| 伊人亚洲综合网| 欧美一二三视频| 欧美日韩国产高清| 成人在线观看免费高清|