pierwszy stworzony ula tabeli zewnętrznej partycje za pomocą kodu i datyula zewnętrzny podzielono stół
CREATE EXTERNAL TABLE IF NOT EXISTS XYZ
(
ID STRING,
SAL BIGINT,
NAME STRING,
)
PARTITIONED BY (CODE INT,DATE STRING)
ROW FORMAT SERDE 'parquet.hive.serde.ParquetHiveSerDe'
STORED AS
INPUTFORMAT "parquet.hive.DeprecatedParquetInputFormat"
OUTPUTFORMAT "parquet.hive.DeprecatedParquetOutputFormat"
LOCATION '/old_work/XYZ';
a następnie wykonam wkładka nadpisać na tym stole, biorąc dane z innej tabeli
INSERT OVERWRITE TABLE XYZ PARTITION (CODE,DATE)
SELECT
*
FROM TEMP_XYZ;
a potem ja policzyć liczbę rekordów w ulu wybierz liczbę (*) z XYZ; to pokazuje mi 1000 rekordy są tam a następnie zmienić nazwę lub przenieść lokalizację „/ old_work/XYZ” to „/ new_work/xyz”
a potem ponownie spaść stołu XYZ i utworzone ponownie wskazując lokalizację do nowego katalogu środki '/ new_work/XYZ'
CREATE EXTERNAL TABLE IF NOT EXISTS XYZ
(
ID STRING,
SAL BIGINT,
NAME STRING,
)
PARTITIONED BY (CODE INT,DATE STRING)
ROW FORMAT SERDE 'parquet.hive.serde.ParquetHiveSerDe'
STORED AS
INPUTFORMAT "parquet.hive.DeprecatedParquetInputFormat"
OUTPUTFORMAT "parquet.hive.DeprecatedParquetOutputFormat"
LOCATION '/new_work/XYZ';
ale kiedy wykonać select count (*) z tabeli XYZ w ulu, to pokazuje 0 rekordów, Chyba coś przeoczyłem, proszę mi pomóc w tej sprawie ?? ??
Dlaczego jednak nie zaktualizowano? Patrzę na to i nie widzę żadnego powodu, dla którego to by nie działało ... – Avius