Операции API или каталога для создания внешней таблицы Hive с использованием HiveWarehouseSession.session (spark) .build () - PullRequest
1 голос
/ 11 июня 2019

Я использую кластер HDP 3.X и запускаю spark sql, используя spark_llap. Есть ли способ создать внешнюю таблицу улья, используя hive.createTable, потому что в примере, представленном на веб-сайте Hortonworks, используется следующий код, тогда как этот код создаст управляемый стол, но мне нужен внешний стол.

hive.createTable("web_sales").ifNotExists().column("sold_time_sk", "bigint").column("ws_ship_date_sk", "bigint").create()

1 Ответ

1 голос
/ 11 июня 2019

вы можете напрямую использовать сессию spark для создания таблицы.

пример1:

  //drop the table if already created
    spark.sql("drop table if exists my_table");
    //create the table using the dataframe schema
    spark.sql("create table my_table(....
    ") row format delimited fields terminated by '|' location '/my/hdfs/location'");

пример 2:

spark.sql('create table movies \
         (movieId int,title string,genres string) \
         row format delimited fields terminated by ","\
         stored as textfile')                                              # in textfile format
spark.sql("create table ratings\
           (userId int,movieId int,rating float,timestamp string)\
           stored as ORC" ) 
...