在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁(yè) > 博客 > 實(shí)用干貨分享(5)- Hive存儲(chǔ)格式及壓縮算法測(cè)試比對(duì)分析

            實(shí)用干貨分享(5)- Hive存儲(chǔ)格式及壓縮算法測(cè)試比對(duì)分析

            發(fā)布人:中電金信人 時(shí)間:2022-06-05 來(lái)源:工程師 發(fā)布文章

             編輯

             

            Hive文件存儲(chǔ)格式及優(yōu)缺點(diǎn)


            textfile

            默認(rèn)的文件格式,行存儲(chǔ)。建表時(shí)不指定存儲(chǔ)格式即為textfile,導(dǎo)入數(shù)據(jù)時(shí)把數(shù)據(jù)文件拷貝至hdfs不進(jìn)行處理。


            優(yōu)點(diǎn):最簡(jiǎn)單的數(shù)據(jù)格式,便于和其他工具(pig, grep, sed, awk)共享數(shù)據(jù)、便于查看和編輯;加載較快。


            缺點(diǎn):耗費(fèi)存儲(chǔ)空間,I/O性能較低;Hive不進(jìn)行數(shù)據(jù)切分合并,不能進(jìn)行并行操作,查詢效率低。


            適用于小型查詢,查看具體數(shù)據(jù)內(nèi)容的測(cè)試操作。


            sequencefile

            行存儲(chǔ),含有鍵值對(duì)的二進(jìn)制文件。


            優(yōu)點(diǎn):可壓縮、可分割,優(yōu)化磁盤(pán)利用率和I/O;可并行操作數(shù)據(jù),查詢效率高。


            缺點(diǎn):存儲(chǔ)空間消耗最大;對(duì)于Hadoop生態(tài)系統(tǒng)之外的工具不適用,需要通過(guò)text文件轉(zhuǎn)化加載。


            rcfile

            行列式存儲(chǔ)。先將數(shù)據(jù)按行分塊,同一個(gè)record在一個(gè)塊上,避免讀一條記錄需要讀多個(gè)block;然后塊數(shù)據(jù)列式存儲(chǔ)。


            優(yōu)點(diǎn):可壓縮,高效的列存?。徊樵冃瘦^高。


            缺點(diǎn):加載時(shí)性能消耗較大,需要通過(guò)text文件轉(zhuǎn)化加載;讀取全量數(shù)據(jù)性能低。


            orcfile

            編輯

            優(yōu)化后的rcfile,行列式存儲(chǔ)。優(yōu)缺點(diǎn)與rcfile類似,查詢效率最高。適用于Hive中大型的存儲(chǔ)、查詢。


            parquet

            編輯

            列式存儲(chǔ),以二進(jìn)制方式存儲(chǔ)。


            優(yōu)點(diǎn):可壓縮,高效的列存?。粌?yōu)化I/O。


            缺點(diǎn):不支持upadate操作(數(shù)據(jù)寫(xiě)入后不可更改),不支持ACID。


            Hive壓縮算法對(duì)比


            Hive壓縮算法包含6種,其中包含default、gzip、bzip2、lzo、lz4、snappy等壓縮格式,具體采用壓縮算法及比對(duì)詳細(xì)如下:


            編輯


            檢查Hadoop本地庫(kù)支持壓縮格式


            檢查命令:hadoop checknative

            hadoop checknative 命令檢查本地庫(kù)是否支持壓縮,若不支持,需要進(jìn)行源碼編譯將native library編譯進(jìn)Hadoop。


            native library checking:

            hadoop:  true /opt/cloudera/parcels/cdh-6.1.0-1.cdh6.1.0.p0.770702/lib/hadoop/lib/native/libhadoop.so.1.0.0

            zlib:     true /lib64/libz.so.1

            zstd:     true /opt/cloudera/parcels/cdh-6.1.0-1.cdh6.1.0.p0.770702/lib/hadoop/lib/native/libzstd.so.1

            snappy:  true /opt/cloudera/parcels/cdh-6.1.0-1.cdh6.1.0.p0.770702/lib/hadoop/lib/native/libsnappy.so.1

            lz4:     true revision:10301

            bzip2:   true /lib64/libbz2.so.1

            openssl:  true /lib64/libcrypto.so

            isa-l:   true /opt/cloudera/parcels/cdh-6.1.0-1.cdh6.1.0.p0.770702/lib/hadoop/lib/native/libisal.so.2


            Hive壓縮算法設(shè)置


            default壓縮格式

            編輯

            set hive.exec.compress.output=true; 

            set mapred.output.compress=true;

            set mapred.output.compression.codec=org.apache.hadoop.io.compress.defaultcodec;


            gzip壓縮格式

            編輯

            set hive.exec.compress.output=true; 

            set mapred.output.compress=true; 

            set mapred.output.compression.codec=org.apache.hadoop.io.compress.gzipcodec;


            bzip2壓縮格式

            編輯

            set hive.exec.compress.output=true; 

            set mapred.output.compress=true; 

            set mapred.output.compression.codec=org.apache.hadoop.io.compress.bzip2codec;


            lzo壓縮格式

            編輯

            set hive.exec.compress.output=true; 

            set mapred.output.compress=true; 

            set mapred.output.compression.codec=com.hadoop.compression.lzo.lzopcodec;


            lz4壓縮格式

            編輯

            set hive.exec.compress.output=true; 

            set mapred.output.compress=true; 

            set mapred.output.compression.codec= org.apache.hadoop.io.compress.lz4pcodec;


            snappy壓縮格式

            編輯

            set hive.exec.compress.output=true;

            set mapred.compress.map.output=true;

            set mapred.output.compress=true;

            set mapred.output.compression=org.apache.hadoop.io.compress.snappycodec;

            set mapred.output.compression.codec=org.apache.hadoop.io.compress.snappycodec;

            set io.compression.codecs=org.apache.hadoop.io.compress.snappycodec;


            壓縮算法測(cè)試及結(jié)果比對(duì)


            測(cè)試案例

            編輯

            測(cè)試一個(gè)Hive在不同的壓縮格式下進(jìn)行對(duì)壓縮比、查詢效率、插入效率進(jìn)行結(jié)果比對(duì)。


            測(cè)試環(huán)境

            編輯

            大數(shù)據(jù)平臺(tái)產(chǎn)品:CDH6.1

            節(jié)點(diǎn)個(gè)數(shù):2+6

            內(nèi)存:256G

            CPU:64核


            測(cè)試數(shù)據(jù)

            編輯

            表名稱:ods.o_cor_test

            源文件大?。?.8G  

            查詢速度:19.41S

            建表語(yǔ)句: 

            CREATE TABLE ODS.O_COR_TEST

            (  BOOK_ID                 STRING,

              EVENT_ID                 STRING,

              TRX_ID_IN                STRING,

              TRX_ID_OUT               STRING,

              LINE_ID                  STRING,

              HEADER_ID                STRING,

              BATCH_ID                 STRING,

              BOOK_TYPE                STRING,

              ASSET_TYPE               STRING,

              CATEGORY_ID              STRING,

              INTERFACE_CONTROL_ID_IN  STRING,

              INTERFACE_CONTROL_ID_OUT STRING,

              EFFECTIVE_DATE           DATE,

              INEFFECTIVE_DATE         DATE,

              DATA_DATE                DATE,

              ACCOUNTING_DATE          DATE,

              EVENT_TYPE               STRING,

              ACTIVE_CODE              STRING,

              AMORTIZED_COST           STRING,

              FAIR_COST                STRING,

              CONTACT_IN               STRING,

              CONTACT_OUT              STRING,

              COST                     STRING,

              INT                      STRING,

              INT_ADJUST               STRING,

              EVALUATION_ADJUST        STRING,

              FAIR_COST_ADJUST         STRING,

              CV_RESERVE               STRING,

              RV_RESERVE               STRING,

              HV_RESERVE               STRING,

              RA_COST                  STRING,

              LEASE_COST               STRING,

              LEASE_CV_RESERVE         STRING,

              LEASE_RV_RESERVE         STRING,

              LEASE_HV_RESERVE         STRING,

              INVESTMENT_INCOME        STRING,

              INVESTMENT_LOSS          STRING,

              FAIR_COST_GAIN_LOSS      STRING,

              V_LOSS                   STRING,

              OTHER_INCOME             STRING,

              ORIGINAL                 STRING,

              TRANS_INT_IN             STRING,

              TRANS_INT_OUT            STRING,

              INT_ACCRUED              STRING,

              EXPENSE                  STRING,

              RECOV_ORIGINAL           STRING,

              RECOV_TRANS_INT_IN       STRING,

              RECOV_TRANS_INT_OUT      STRING,

              RECOV_INT_ACCRUED        STRING,

              RECOV_EXPENSE            STRING,

              LOSS_ORIGINAL            STRING,

              LOSS_TRANS_INT_IN        STRING,

              LOSS_TRANS_INT_OUT       STRING,

              LOSS_INT_ACCRUED         STRING,

              LOSS_EXPENSE             STRING,

              LEASE_ORIGINAL           STRING,

              GUARANTEE1               STRING,

              GUARANTEE2               STRING,

              GUARANTEE3               STRING,

              BALANCE_OUT              STRING,

              LY_INVESTMENT_INCOME     STRING,

              LY_INVESTMENT_LOSS       STRING,

              LY_FAIR_COST_GAIN_LOSS   STRING,

              LY_V_LOSS                STRING,

              LAST_UPDATE_DATE         DATE,

              LAST_UPDATED_BY          STRING,

              CREATION_DATE            DATE,

              CREATED_BY               STRING,

              LAST_UPDATE_LOGIN        STRING,

              ATTRIBUTE_CATEGORY       STRING,

              ATTRIBUTE1               STRING,

              ATTRIBUTE2               STRING,

              ATTRIBUTE3               STRING,

              ATTRIBUTE4               STRING,

              ATTRIBUTE5               STRING,

              ATTRIBUTE6               STRING,

              ATTRIBUTE7               STRING,

              ATTRIBUTE8               STRING,

              ATTRIBUTE9               STRING,

              ATTRIBUTE10              STRING,

              INT_AMORTIZED            STRING,

              START_DATE               DATE,

              END_DATE                 DATE,

              DEL_FLAG                 STRING

            )



            測(cè)試方法


            本測(cè)試采用每次開(kāi)啟Hive壓縮模式并設(shè)置Hive的壓縮算法,對(duì)于Hive每種文件存儲(chǔ)格式新建Hive表,并向不同分區(qū)插入數(shù)據(jù),測(cè)試并記錄各種壓縮算法的壓縮效率、查詢速率、插入速度。


            注:每次設(shè)置終端退出后設(shè)置無(wú)效。


            查詢速率測(cè)試sql語(yǔ)句:

            select count(*) from ods.o_cor_test where etl_date=


            壓縮算法對(duì)比


            編輯

            編輯

            編輯

            編輯


            測(cè)試結(jié)果


            當(dāng)應(yīng)用場(chǎng)景多為查詢時(shí),建議使用orcfile存儲(chǔ)格式且壓縮格式為default。


            當(dāng)應(yīng)用場(chǎng)景多為存儲(chǔ)時(shí),建議使用orcfile存儲(chǔ)格式且壓縮格式為bzip2。


            當(dāng)應(yīng)用場(chǎng)景多為插入時(shí),建議使用sequencefile存儲(chǔ)格式且壓縮格式為snappy。


            一般常用存儲(chǔ)格式為orcfile且壓縮格式為default。


            *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



            關(guān)鍵詞: 干貨

            技術(shù)專區(qū)

            關(guān)閉