Clickhouse 基礎知識三(DML、File引擎、HDFS引擎)


1、DML

MergeTree:
    插入數據:
        1、insert into values (...),(...);
        2、insert into select from ....
        3、create select from ....
        4、clickhouse-client -q 'insert into FORMAT ...'  < data.data
        
    
    更新刪除數據:
        1alter table table_name delete where
        2、alter table table_name update column=v1,column = v2 where ....

        
ReplacingMergeTree
        區間主鍵相同的數據去重
        
        指定ReplacingMergeTree(version_col)保留最大版本數據
        
CollapsingMergeTree
VersionCollapsingMergeTree(sign) sign狀態 : 1、 1 -1 1 更新
            2、 1 -1 刪除
            3、 -1 1 1 或者 1 1 -1 1 不操作

2、File 引擎

    Flie表引擎能夠直接讀取本地文件的數據,通常被作為一種擴充手段來使用
    例如:它可以讀取由其他系統生成的數據文件,如果外部系統直接修改了文件,則變相達到了數據更新的目的;
    create table test_File(
                        id String,
                        name String,
                        age int 
                        ) engine = File('CSV')
    在默認的目錄下會生成一個文件夾,文件夾中可以寫入文件,但是文件的名字必須是data.CSV 

3、HDFS引擎

    clickhouse 可以直接從hdfs中指定的目錄下加載數據,自己根本不存儲數據,僅僅是讀取數據
    ENGINE = HDFS(hdfs_uri,format)
    
    hdfs_uri表示HDFS的文件存儲路徑
    format 表示文件的格式(常見的有CSV,TSV,JSON)    
    
    create table test_hdfs (
                id int ,
                name String,
                age int 
    ) engine = HDFS('hdfs://localhost:8020/ck/data/test_hdfs','CSV')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM