Подключение к свече и доступ к таблице улья без комиссионного сервера - PullRequest
0 голосов
/ 10 мая 2018

Я пишу приложение Java Spark, которое должно подключиться к кусту и получить некоторую базовую информацию о таблице и запросить эту таблицу для данных. Я создаю сеанс зажигания и получаю информацию, как показано ниже. Но это использует бережливый сервер. Я хочу посмотреть, смогу ли я сделать то же самое без использования благотворительного сервера. Это возможно и как мне это сделать? Я пытаюсь написать клиент JDBC, который может подключаться к spark через sparkSQL для доступа к таблицам кустов, но без использования экономичного сервера. Пожалуйста, предоставьте свои мысли и предложения о том, как к этому подойти Спасибо.

SparkSession spark = SparkSession
              .builder()
              .appName(" Hive example")
              .enableHiveSupport()
              .getOrCreate();

           Dataset<Row> df = spark.read()
              .format("jdbc")
               .option("driver", "org.apache.hive.jdbc.HiveDriver")
              .option("url", " jdbc:hive2://host:port")
              .option("dbtable", "mytable")
              .option("fetchsize", "20")
              .load();
        df.show();

1 Ответ

0 голосов
/ 11 мая 2018

С Spark 2 вы можете попробовать что-то вроде этого,

SparkSession ss = SparkSession
.builder()
.appName(" Hive example")
.config("hive.metastore.uris", "thrift://localhost:9083")
.enableHiveSupport()
.getOrCreate();

Обратите внимание на свойство hive.metastore.uris, измените localhost так, чтобы он указывал на вашу изолированную программную среду или кластер.

один ss инициализирован, вы можете прочитать таблицы, как показано ниже,

val df = ss.read.table("db_name.table_name")

Путь JDBC:

spark.read
    .format("jdbc")
    .option("url", "jdbc:hive2://localhost:10000/default")
    .option("dbtable", "clicks_json")
    .load()

Надеюсь, это поможет. Приветствия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...