国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Hive為什么要分桶?

這篇具有很好參考價值的文章主要介紹了Hive為什么要分桶?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1.獲得更高的查詢處理效率

????????在 分區(qū)數(shù)量過于龐大 以至于可能導致文件系統(tǒng)崩潰時,或數(shù)據(jù)集 找不到合理的分區(qū)字段 時,我們就 需要 使用分桶 來解決問題了。
????????分區(qū)中的數(shù)據(jù)可以被進一步拆分成桶 ,不同于分區(qū)對列直接進行拆分,桶往往使用列的哈希值對數(shù) 據(jù)打散,并分發(fā)到各個不同的桶中從而完成數(shù)據(jù)的分桶過程。
????????注意,hive使用對分桶所用的值進行hash,并用hash結果除以桶的個數(shù)做 取余運算 的方式來桶, 保證了每個桶中都有數(shù)據(jù),但每個桶中的數(shù)據(jù)條數(shù) 不一定相等
????????如果另外一個表也按照同樣的規(guī)則分成了一個個小文件。 兩個表join的時候 ,就不必要掃描整個表, 只需要匹配相同分桶的數(shù)據(jù)即可,從而 提升效率。
????????在數(shù)據(jù)量足夠大的情況下,分桶比分區(qū)有更高的查詢效率。

2.數(shù)據(jù)采樣

????????在真實的大數(shù)據(jù)分析過程中,由于數(shù)據(jù)量較大, 開發(fā)和自測的過程比較慢 ,嚴重影響系統(tǒng)的開發(fā)進 度。此時就可以使用分桶來進行數(shù)據(jù)采樣。采樣使用的是一個 具有代表性的查詢結果 而不是全部結果, 通過對采樣數(shù)據(jù)的分析,來達到 快速開發(fā)和自測 的目的,節(jié)省大量的研發(fā)成本。

3.分桶和分區(qū)的區(qū)別

????????1. 分桶和分區(qū)兩者不干擾, 可以把分區(qū)表進一步分桶
????????2. 分桶對數(shù)據(jù)的處理比分區(qū) 更加細粒度化 :分區(qū)針對的是數(shù)據(jù)的存儲路徑; 分桶針對的是數(shù)據(jù) 文件 ;
????????3. 分桶是按照列的哈希函數(shù)進行分割的,相對 比較平均 ;而分區(qū)是按照列的值來進行分割的, 容易造成 數(shù)據(jù)傾斜 。

4.?文本數(shù)據(jù)處理

????????注意 :對于分桶表, 不能使用load data的方式進行數(shù)據(jù)插入操作 ,因為load data導入的數(shù)據(jù)不會 有分桶結構。
????????如何避免針對桶表使用load data插入數(shù)據(jù)的誤操作呢?
--限制對桶表進行l(wèi)oad操作
set hive.strict.checks.bucketing = true;
????????也可以在CM的hive配置項中修改此配置,當針對桶表執(zhí)行l(wèi)oad data操作時會報錯。

????????那么對于文本數(shù)據(jù)如何處理呢? ?文章來源地址http://www.zghlxwxcb.cn/news/detail-450470.html

????????(1. 先創(chuàng)建 臨時表 ,通過load data將txt文本導入臨時表。
--創(chuàng)建臨時表
create table temp_buck(id int, name string)
row format delimited fields terminated by '\t';
--導入數(shù)據(jù)
load data local inpath '/tools/test_buck.txt' into table temp_buck;
????????(2. 使用 insert select 語句間接的把數(shù)據(jù)從臨時表導入到分桶表。
--啟用桶表
set hive.enforce.bucketing=true;
--限制對桶表進行l(wèi)oad操作
set hive.strict.checks.bucketing = true;
--insert select
insert into table test_buck select id, name from temp_buck;
--分桶成功

到了這里,關于Hive為什么要分桶?的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 為什么hive表不經(jīng)常用索引

    Hive 表不經(jīng)常使用索引的主要原因是由于其設計初衷和使用場景的特點。下面是一些可能的解釋: Hive 主要用于處理大規(guī)模數(shù)據(jù)集的批量分析任務,而不是對單個記錄的實時查詢。對于批處理任務,全表掃描通常是更為高效的方式,因為索引需要維護額外的數(shù)據(jù)結構并帶來一

    2024年02月16日
    瀏覽(23)
  • 大數(shù)據(jù)面試題:HBase為什么查詢快

    面試題來源: 《大數(shù)據(jù)面試題 V4.0》 大數(shù)據(jù)面試題V3.0,523道題,679頁,46w字 可回答:1)HBase為什么讀快;2)HBase是根據(jù)rowkey查詢,當數(shù)據(jù)量相當大的時候,是怎么讀的很快的 參考答案: 1、基于LSM樹的存儲方式 HBase采用基于LSM樹的存儲方式,這種存儲方式將數(shù)據(jù)分為內存和

    2024年02月12日
    瀏覽(23)
  • ElasticSearch(七):ES查詢速度為什么那么快

    ElasticSearch(七):ES查詢速度為什么那么快

    介紹給大家一個開源SpringCloud項目。整合了大部分開源中間件,詳情信息可以查看文檔: spring cloud開源組件開發(fā) 另外自己以后博客所講解的代碼內容,都會我的Git上同步(GitHub同步)GIT地址 ES使用的數(shù)據(jù)結構是倒排索引,在對搜索內容進行分詞的時候,會根據(jù)搜索內容分詞結

    2023年04月08日
    瀏覽(31)
  • ElasticSearch第七講:ES查詢速度為什么那么快

    ElasticSearch第七講:ES查詢速度為什么那么快

    介紹給大家一個開源SpringCloud項目。整合了大部分開源中間件,詳情信息可以查看文檔: spring cloud開源組件開發(fā) 另外自己以后博客所講解的代碼內容,都會我的Git上同步(GitHub同步)GIT地址 ES使用的數(shù)據(jù)結構是倒排索引,在對搜索內容進行分詞的時候,會根據(jù)搜索內容分詞結

    2023年04月19日
    瀏覽(23)
  • ElasticSearch第七講 ES查詢速度為什么那么快

    ElasticSearch第七講 ES查詢速度為什么那么快

    介紹給大家一個開源SpringCloud項目。整合了大部分開源中間件,詳情信息可以查看文檔: spring cloud開源組件開發(fā) 另外自己以后博客所講解的代碼內容,都會我的Git上同步(GitHub同步)GIT地址 ES使用的數(shù)據(jù)結構是倒排索引,在對搜索內容進行分詞的時候,會根據(jù)搜索內容分詞結

    2023年04月25日
    瀏覽(31)
  • Mysql8.0為什么取消了緩存查詢的功能

    首先我們介紹一下 MySQL的緩存機制 【MySQL緩存機制】 簡單的說就是緩存sql文本及查詢結果,如果運行完全相同的SQL,服務器直接從緩存中取到結果,而不需要再去解析和執(zhí)行SQL。 但如果表中任何數(shù)據(jù)或是結構發(fā)生改變,包括INSERT、UPDATE、DELETE、TRUNCATE、ALTER TABLE、DROP TABLE或

    2023年04月20日
    瀏覽(17)
  • mysql查詢慢是為什么 怎么改善43.242.205.12

    MySQL查詢速度慢是一個令人頭痛的問題,它可能會導致應用程序性能下降,影響用戶體驗。為了解決這個問題,需要了解MySQL查詢速度慢的原因,并采取相應的改善措施。 一、MySQL查詢速度慢的原因43.242.205.1 查詢語句不合理 不合理的查詢語句是導致MySQL查詢速度慢的常見原因

    2024年02月12日
    瀏覽(26)
  • pycharm創(chuàng)建的虛擬環(huán)境為什么用conda env list命令查詢不到?

    pycharm創(chuàng)建的虛擬環(huán)境為什么用conda env list命令查詢不到?

    問題描述:pycharm創(chuàng)建的虛擬環(huán)境為什么用conda?env?list命令查詢不到。 pycharm開發(fā)環(huán)境可以創(chuàng)建虛擬環(huán)境,目的是為隔絕其他環(huán)境種庫帶來的版本干擾,但是發(fā)現(xiàn)一個問題,無論是在windows終端、anaconda終端、Pycharm開發(fā)環(huán)境中的終端使用conda env list命令都查不到venv環(huán)境。

    2024年02月10日
    瀏覽(22)
  • Hive數(shù)據(jù)存儲格式有哪些?TextFile、SequenceFile、RCFile、ORCFile、Parquet有什么區(qū)別?為什么絕大多數(shù)都使用ORCFile、Parquet格式?

    Hive數(shù)據(jù)存儲格式有哪些?TextFile、SequenceFile、RCFile、ORCFile、Parquet有什么區(qū)別?為什么絕大多數(shù)都使用ORCFile、Parquet格式?

    Hive 的數(shù)據(jù)存儲,是 Hive 操作數(shù)據(jù)的基礎。 選擇一個合適的底層數(shù)據(jù)存儲文件格式,即使在不改變當前 Hive SQL 的情況下,性能也能得到數(shù)量級的提升 。 這種優(yōu)化方式對 MySQL 等關系型數(shù)據(jù)庫有些類似,選擇不同的數(shù)據(jù)存儲引擎,代表著不同的數(shù)據(jù)組織方式,對于數(shù)據(jù)庫的表現(xiàn)

    2024年02月02日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包