Rumah pangkalan data tutorial mysql ApacheHive一点一点进步(3)–动态分区表操作

ApacheHive一点一点进步(3)–动态分区表操作

Jun 07, 2016 pm 04:29 PM
jadual partition dinamik beroperasi kemajuan

本次主要介绍一下 hive 中的语法。比如bucket的建立,查询表结果查询表分区。 如何进行动态分区,同时在动态分区的过程中会遇到的问题解决。 以及在删除表及修改表结构的时候的语法,尤其是修改表结构,调整列顺序,这些语法是比较重要的。 BUCKET CREATE TA

本次主要介绍一下hive中的语法。比如bucket的建立,查询表结果查询表分区。

如何进行动态分区,同时在动态分区的过程中会遇到的问题解决。

以及在删除表及修改表结构的时候的语法,尤其是修改表结构,调整列顺序,这些语法是比较重要的。

BUCKET

1

CREATE TABLE page_view(viewTime INT, userid BIGINT,                    page_url STRING, referrer_url STRING, friends ARRAY<bigint>, properties MAP<string string>,                   ip STRING COMMENT 'IP Address of the User')    COMMENT 'This is the page view table'    PARTITIONED BY(dt STRING, country STRING)    CLUSTERED BY(userid) SORTED BY(viewTime) INTO 32 BUCKETS   #按照userid进行hash分组,同时按照viewTime排序ROW FORMAT DELIMITED FIELDS TERMINATED BY '1'    #文件分割使用1进行处理        OLLECTION ITEMS TERMINATED BY '2'    #数组分割使用2        MAP KEYS TERMINATED BY '3'            #map分割使用3STORED AS SEQUENCEFILE;</string></bigint>

Salin selepas log masuk

Browsing table and partitions

1

SHOW TABLES; SHOW TABLES 'page.*'; SHOW PARTITIONS page_view; DESCRIBE page_view;    列举出表的列名称,类型,备注 DESCRIBE EXTENDED page_view; 列举出表的列及其他属性 DESCRIBE EXTENDED page_view PARTITION (ds='2008-08-08'); 列举出表的分区属性

Salin selepas log masuk

动态分区

1

FROM page_view_stg pvs    INSERT OVERWRITE TABLE page_view PARTITION(dt='2008-06-08', country)           SELECT pvs.viewTime, pvs.userid, pvs.page_url, pvs.referrer_url, NULL, NULL, pvs.ip, pvs.country注意的:hive.EXEC.MAX.dynamic.partitions.pernode(DEFAULT VALUE being 100) 每个mapper或者reducer任务最大创建分区个数。hive.EXEC.MAX.dynamic.partitions (DEFAULT VALUE being 1000) 一个DML创建的最大分区数量。hive.EXEC.MAX.created.files (DEFAULT VALUE being 100000) 创建的最大文件数量。SET hive.EXEC.dynamic.partition.mode=nonstrict;SET hive.EXEC.dynamic.partition=TRUE;

Salin selepas log masuk

删除表或者分区

1

DROP TABLE pv_users;ALTER TABLE pv_users DROP PARTITION (ds='2008-08-08');

Salin selepas log masuk

修改表

1

ALTER TABLE old_table_name RENAME TO new_table_name;ALTER TABLE old_table_name REPLACE COLUMNS (col1 TYPE, ...);ALTER TABLE tab1 ADD COLUMNS (c1 INT COMMENT 'a new int column', c2 STRING DEFAULT 'def val');CREATE TABLE test_change (a INT, b INT, c INT);ALTER TABLE test_change CHANGE a a1 INT; 将 a 列的名字改为 a1.ALTER TABLE test_change CHANGE a a1 STRING AFTER b; 将 a 列的名字改为 a1,a 列的数据类型改为 string,并将它放置在列 b 之后。新的表结构为: b INT, a1 string, c INT.ALTER TABLE test_change CHANGE b b1 INT FIRST; 会将 b 列的名字修改为 b1, 并将它放在第一列。新表的结构为: b1 INT, a string, c INT.

Salin selepas log masuk
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tukar cakera tetap VirtualBox kepada cakera dinamik dan sebaliknya Tukar cakera tetap VirtualBox kepada cakera dinamik dan sebaliknya Mar 25, 2024 am 09:36 AM

Tukar cakera tetap VirtualBox kepada cakera dinamik dan sebaliknya

Tutorial penggunaan PyCharm: membimbing anda secara terperinci untuk menjalankan operasi Tutorial penggunaan PyCharm: membimbing anda secara terperinci untuk menjalankan operasi Feb 26, 2024 pm 05:51 PM

Tutorial penggunaan PyCharm: membimbing anda secara terperinci untuk menjalankan operasi

Apakah sudo dan mengapa ia penting? Apakah sudo dan mengapa ia penting? Feb 21, 2024 pm 07:01 PM

Apakah sudo dan mengapa ia penting?

Langkah-langkah operasi dan langkah berjaga-jaga Deploy Linux Langkah-langkah operasi dan langkah berjaga-jaga Deploy Linux Mar 14, 2024 pm 03:03 PM

Langkah-langkah operasi dan langkah berjaga-jaga Deploy Linux

Apa yang perlu dilakukan jika anda terlupa menekan F2 untuk kata laluan but win10 Apa yang perlu dilakukan jika anda terlupa menekan F2 untuk kata laluan but win10 Feb 28, 2024 am 08:31 AM

Apa yang perlu dilakukan jika anda terlupa menekan F2 untuk kata laluan but win10

Perkongsian langkah operasi tangkapan skrin Huawei Mate60 Pro Perkongsian langkah operasi tangkapan skrin Huawei Mate60 Pro Mar 23, 2024 am 11:15 AM

Perkongsian langkah operasi tangkapan skrin Huawei Mate60 Pro

Discuz panduan operasi pengubahsuaian nama domain Discuz panduan operasi pengubahsuaian nama domain Mar 09, 2024 pm 04:36 PM

Discuz panduan operasi pengubahsuaian nama domain

Manipulasi rentetan PHP: cara praktikal untuk mengalih keluar ruang dengan berkesan Manipulasi rentetan PHP: cara praktikal untuk mengalih keluar ruang dengan berkesan Mar 24, 2024 am 11:45 AM

Manipulasi rentetan PHP: cara praktikal untuk mengalih keluar ruang dengan berkesan

See all articles