hive
テーブルの一部でもある列でテーブルを分割する必要があります。
例:
表:従業員
列: employeeId、employeeName、employeeSalary
employeeSalary を使用してテーブルを分割する必要があります。そこで、次のクエリを書きます。
CREATE TABLE employee (employeeId INT, employeeName STRING, employeeSalary INT) PARTITIONED BY (ds INT);
同じ名前を付けることができなかったので、ここでは「ds」という名前を使用しましたemployeeSalary
。
これは私がしていることですか?また、テーブルに値を挿入するときは、カンマ区切りのファイルを使用する必要があります。これで、ファイルは次のような行で構成されます: 2019,John,2000
1行として。給与を使用してパーティション分割する必要がある場合、最初のパーティションは給与 2000 のすべての人になります。したがって、クエリは次のようになります。
LOAD DATA LOCAL INPATH './examples/files/kv2.txt' OVERWRITE INTO TABLE employee PARTITION (ds=2000);
ここでも、給与が 2000 の 100 エントリの後、給与が 4000 の次の 500 エントリがあります。したがって、クエリを再度実行します。
LOAD DATA LOCAL INPATH './examples/files/kv2.txt' OVERWRITE INTO TABLE employee PARTITION (ds=4000);
私が正しいかどうか教えてください...