性能碾壓MySQL、ClickHouse等,國產開源大數據平臺TD全面剖析

2021-01-07 全球前沿科技

近期,IDC 對物聯網支出作出預測,2019 年全球物聯網支出將達到 7450 億美元,IDC 報告表明,各行業的物聯網解決方案支出佔比持續提升,物聯網的預期增長仍然很高。物聯網的下一章剛剛開始,在 濤思數據 創始人陶建輝看來,未來 5 年內,世界上 90% 的數據都會是物聯網採集的數據,於是他們打造了 TDengine。這是一個專為物聯網、車聯網、工業網際網路、IT 運維等設計和優化的大數據平臺。除了高性能的核心時序資料庫功能,TDengine 還提供緩存、數據訂閱、流式計算等功能,旨在最大程度地減少研發和運維的工作量。從 7 月 12 日在 ArchSummit 全球架構師峰會(深圳站)2019 宣布開源至今兩周時間,TDengine 開源項目 在 GitHub 上已經收穫了超過 6800 個 Star,Fork 數超過 1700,在業內引發熱議。

開源地址:https://github.com/taosdata/TDengine

TDengine測試數據和報告詳見:https://www.taosdata.com/cn/

InfoQ 記者有幸在 ArchSummit 全球架構師峰會(深圳站)2019 現場採訪到了濤思數據創始人陶建輝,聽他分享 TDengine 性能做到 Hadoop 十倍背後的技術創新、TDengine 開源的初衷以及未來對 TDengine 商業化推廣和開源社區的規劃。

InfoQ:您好,非常感謝您參加 ArchSummit 全球架構師峰會(深圳站)2019 的視頻採訪,首先請您做一下簡單的自我介紹,包括您的工作經歷和創業經歷。

陶建輝:大家好,我叫陶建輝,我是濤思數據的創始人。今天很高興來到現場與大家互動。我是 86 年考上大學,94 年到美國留學,97 年開始在芝加哥摩託羅拉工作,後來又到了 3Com 公司。我在 2008 年回到北京創業,前面做過兩家創業公司,一個叫和信,做的是手機實時消息推送服務,後來這家公司被聯發科收購了;13 年我又重新創業,做了一家做智能硬體的公司,叫快樂媽咪,主要是做母嬰健康大數據服務平臺,這家公司在 16 年年初被太平洋網絡收購了。然後我休息了一年。我覺得物聯網一定會發展起來,隨著數據量越來越大,需要一個新的方式來處理物聯網採集的海量數據,這是一個機會。再結合我前面那家創業公司的經驗,我覺得我還沒老。那時候,我正好 49 歲,我覺得我可以自己做,而且我認為現在大家的處理物聯網數據的方法不太合適,我找到了一種更好的創新方法來存儲和處理這些物聯網數據,因此我就自己一個人寫了兩個月代碼,來證明我的想法是對的。然後我就開始融資、組建團隊,濤思數據就是在 17 年 5 月份正式成立的。

InfoQ:所以 TDengine 這款產品一開始的定位就是專門為物聯網而設計的嗎?

陶建輝:物聯網是一個很寬泛的概念,包含了車聯網、工業網際網路、IT 智能運維監測等,只要通過各種機器設備傳感器採集數據,都屬於這個範疇。因為我上一家創業公司做的是智能硬體,需要採集各種各樣的數據送到雲端,做健康數據的分析。後來我又了解了很多物聯網項目,包括工業網際網路、智能硬體、智能家居等項目,這裡面共性的東西實際上就是數據的處理,怎麼存儲、怎麼高效地查詢計算和分析。濤思數據這兩年多的時間,一直在做的就是這樣一件事情。

InfoQ:TDengine 是什麼時候正式對外推出可用產品的?從 TDengine 開始研發,到推出對外可用的產品,一共花了多長時間?

陶建輝:我們第一款產品真正可以交給用戶使用是在 2018 年 8 月份,從一開始研發到對外推出可用的產品大概花了一年半的時間。

InfoQ:在 TDengine 的研發過程中,團隊遇到最大的困難是什麼?這背後有什麼故事可以跟我們分享嗎?

陶建輝:最大的困難就是技術,技術挑戰相當大。我們這款產品看上去很簡單,不就是把各種採集的數據存儲起來再做查詢,實際上因為這屬於底層軟體,所以它的技術挑戰很大。比方說我們經常要做一百億條記錄的插入、查詢測試,這一百億條記錄如果中間丟了一條,你要找出丟的是哪一條、為什麼丟,涉及的模塊很多,技術挑戰相當大。

我可以分享一個我們在 TDengine 開發過程中的小故事。因為我自己在做這個產品,它主要強調性能和易用性這兩個方面。如果性能不夠好,那它就沒有代替其他軟體的可能,我就舉一個性能的例子。有一次我們團隊一個工程師,改了一行代碼,他改的那行代碼還是我寫的,大家都沒有意識到,這行代碼讓整個產品的性能下降了一半都不止。整個團隊都急死了,花了整整一天時間,回滾代碼查看,最後才找出原因並修復了問題。

InfoQ:在性能測試報告中,你們對比了 TDengine 和 MySQL、ClickHouse 等開源資料庫產品的讀寫性能,這是否意味著這些產品是 TDengine 的對標對象?

陶建輝:雖然 MySQL、ClickHouse 這些是大家更熟悉的開源資料庫產品,但我們真正對標的是測試報告上寫的 InfluxDB、OpenTSDB,包括阿里的 HiTSDB 等產品,這些才是我們真正對標的產品。但是也不完全公平,因為這些產品只是一個資料庫。TDengine 的核心功能也是個資料庫,但除了資料庫之外,TDengine 還支持很多其他功能,比如說大數據處理所需要的緩存、消息隊列、流式計算等一系列功能。我們的性能測試報告針對的是資料庫這項功能,因為資料庫測試相對標準化,一般看的就是插入速度、查詢速度,所以我們基於此做了對比。目前 TDengine 在大數據領域還沒有真正完全對標的對象,我們是全球第一個真正做物聯網大數據平臺的產品。 這也是為什麼我們不把自己叫做資料庫的原因。

相關焦點

  • ClickHouse國家級項目最佳實踐
    常用時間欄位作為分區欄位,數據量大的表可以按照小時分區,數據量小的表可以在按照天分區或者月分區,查詢時,使用分區欄位作為Where條件,可以有效的過濾掉大量非結果集數據。安裝完成後的主要目錄以及文件說明:/etc/clickhouse-server:配置文件目錄,包括:config.xml和users.xml/etc/clickhouse-client:客戶端配置文件目錄/var/lib/clickhouse
  • 極致性能 sqltoy-orm-4.12.10 發版 - OSCHINA - 中文開源技術交流...
    :sqltoy特點說明: 支持mysql、postgresql、db2、oracle、sqlserver、sqlite、clickhouse、elasticsearch、mongodb等 具有JPA模式的CRUD功能(即CRUD無需寫sql),無需寫Dao,sqltoy提供了SqlToyLazyDao
  • 極致性能 sqltoy-orm-4.12.9 發版 - OSCHINA - 中文開源技術交流...
    開源地址:更新內容1
  • 極致查詢性能 sqltoy-orm-4.12.6 發版 - OSCHINA - 中文開源技術...
    開源地址:更新內容1、升級spring
  • 極致查詢性能 sqltoy-orm-4.12.3 發版 - OSCHINA - 中文開源技術...
    ://github.com/chenrenfei/sqltoy-showcase/tree/master/trunk/sqltoy-sharding分庫分表說明: https://chenrenfei.github.io/sqltoy/#/sqltoy/shardingsqltoy特點說明: 支持mysql
  • TDengine物聯網大數據平臺宣布開源
    億歐7月12日消息,濤思數據今日正式宣布將TDengine的內核(存儲和計算引擎)以及社區版100%開源。官方資料介紹,2016年12月TAOS Data開始正式籌備,建立並驗證底層架構。2017年5月,北京濤思數據科技有限公司成立,一群來自中國科大、中國科學院、上海交大、美國密西根大學、馬裡蘭大學等知名學府或機構的技術人員開始了TDengine的產品研發之旅。2018年8月,在經過多輪測試後,TDengine發布第一個商用版本。
  • 聚焦數據架構前沿技術 快手大數據平臺架構技術交流會成功舉辦
    從hadoop到spark,再到flink,從kylin到druid,再到clickhouse,從離線數倉到實時數倉架構,再到數據湖架構,近10多年中,大數據平臺架構經歷了快速演變。各大網際網路公司或藉助開源生態,或通過自研構建大數據架構系統,促進數據相關業務的價值挖掘與發展,為公司的戰略發展、產品改進、用戶增長帶來收益。
  • 編寫Hive的UDF(查詢平臺數據同時向mysql添加數據)
    創建包結構創建一個基礎信息類所有輸出到mysql資料庫中的自定義MR任務的自定義key均需要實現該抽象類代碼內容,主要是實現org.apache.hadoop.io.WritableComparable類,其它不需要寫
  • ...等近千萬美元Pre-A輪投資,研發開源的物聯網大數據平臺TDengine
    36氪曾報導,濤思數據曾在2019年2月和2017年6月宣布獲得兩輪天使投資,投資方包括永輝瑞金、溫青投資、明勢資本和蠻子基金。濤思數據創立於2017年5月,主要業務是時序空間大數據的存儲、查詢、分析和計算。
  • 從零做網站開發:基於Flask和JQuery實現表格管理平臺
    我會F12打開網站好吧,那我們來寫個簡單的表格管理平臺。基於Flask框架和JQuery實現管理平臺網站的開發功能,我代碼編寫用了2天的時間 ,從零開始寫;又對具體實現流程,自己斷斷續續地整理總結了近半個月。從自我感覺來說,整個過程和結果的實現都讓我很滿意。
  • 9位阿里大牛發布這份800多頁MySQL性能優化法則筆記
    第16章mysq|系統庫之日誌記錄表:在mysql系統庫中提供了slow_log和general_log兩個CSV引擎表來保存這兩種日誌數據,這樣就可以通過標準的SQL語句來對數據進行檢索與過濾了。第39章子查詢優化—— 使用delete刪除數據:前面兩章中的案例都是關於查詢問題的,但是有時候我們在做刪除、更新時同樣會遇到性能問題,解決思路是相同的,本章講解的就是一個刪除數據時性能存在問題的案例。
  • 隔離病毒,不隔離開源的熱情!Battle SQLite,TDengine發布ARM版
    SQLite是關係型資料庫,沒有利用上述數據特點,因此在存儲、查詢數據的性能上嚴重不足,而且不提供插值、不提供流式計算、不提供數據生命周期管理、無帳號、無遠程登錄等功能,也難實現邊雲協同。隨著物聯網、工業網際網路的發展,SQLite的局限越來越明顯。TDengine是濤思數據團隊針對物聯網、工業網際網路數據特點而開發的一數據處理平臺。
  • Loadrunner測試mysql資料庫
    loadrunner可以利用mysql lib庫,通過引用外部DLL,模擬mysql客戶端連接資料庫進行增刪改查的操作進行測試。下面主要介紹如何利用mysql lib庫連接mysql資料庫進行性能測試。一、準備工作1.
  • 重磅發布開源框架、生物計算平臺螺旋槳,百度飛槳交了年終成績單
    測試結果表明,在相同的硬體條件下,飛槳的異構參數伺服器架構比單純的非異構參數伺服器架構性能提升了 65% 以上。開源算法庫全面升級開源算法庫的升級也是新版飛槳的一個重大更新。BML CodeLab 可通過雲端倉庫把本地的代碼、數據、模型上傳到雲端,在大數據量和大計算量的情況下,將本地任務無縫擴展到雲端。智能數據服務平臺 EasyData隨後,百度 AI 平臺研發部總監忻舟介紹了智能數據服務 EasyData 的升級。
  • 高效交付的秘訣,開源 DevOps 運維平臺合集
    本周項目精選所推薦的就是 Gitee 上優質的開源 DevOps 運維平臺。項目基於shell開發,收集各類運維常用工具腳本,實現快速安裝nginx、mysql、php、redis、nagios、運維經常使用的腳本等等。
  • MySQL-mysqldump備份資料庫
    mysqldump備份1、備份命令格式:mysqldump -h主機名 -P埠 -u用戶名 -p密碼 --database 資料庫名 > 文件名.sql 例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database
  • mysql查詢當天本周本月的所有數據
    Mysql查詢當天,本周,本月所有數據記錄一、查詢當天的記錄:select * from create_time where TO_DAYS
  • 兆芯攜手百度飛槳 國產CPU助力AI應用創新
    近日,兆芯與北京百度網訊科技有限公司達成產品兼容互認證明,百度飛槳(PaddlePaddle)在兆芯系列國產處理器平臺上功能、性能、兼容性、可靠性、穩定性等均可滿足用戶應用需求。百度飛槳(PaddlePaddle)在兆芯開先KX-6000、開勝KH-30000等系列國產處理器平臺上功能、性能、兼容性、可靠性、穩定性等滿足用戶應用需求的互認證明,將有效推動雙方進一步技術合作,為AI開發者提供基於國產化環境的深度學習平臺,促進雙方產品競爭力提升和AI應用的創新發展。
  • 基於Canal和Kafka實現MySQL的Binlog近實時同步
    作者:Throwablejuejin.im/post/5e6a6746f265da575c16d678前提近段時間,業務系統架構基本完備,數據層面的建設比較薄弱,因為筆者目前工作重心在於搭建一個小型的數據平臺。
  • 揭秘TDengine如何進行數據處理!
    物聯網平臺裡模塊很多,但其中很重要的一塊就是數據處理,包括採集、存儲、查詢、分析和計算,是整個物聯網行業裡面比較共性的部分,個性化程度不高。再仔細一看,大部分物聯網平臺,尤其是國內的,幾乎無一例外的用的是Hadoop生態搭建的,用的是網際網路行業流行的大數據架構。TDengine專為物聯網、車聯網等時序空間大數據設計,其核心功能是時序資料庫。