В кластере MRS Location можно задать путь к файловой системе OBS при создании таблицы Spark, и Spark может подключаться к OBS через Hive Metastore.
cd Директория установки клиента
kinit Пользователь операции компонента
spark-sql --master yarn
Например, чтобы создать таблицу с именем test, у которой Location равен obs://obs-test/test/Database name/Table name, выполните следующую команду:
create external table testspark(name string) location "obs://obs-test/test/Database name/Table name";
Рисунок 1 spark.sql.warehouse.location.first configuration

Рисунок 2 spark.sql.warehouse.location.first configuration

Если вы не загружаете и не устанавливаете клиент повторно, вы можете выполнить следующие шаги для обновления файла конфигурации клиента Spark (например, каталог клиента /opt/client): cd /opt/client vi Spark/spark/conf/hive-site.xml Измените значение hive.metastore.warehouse.dir на соответствующий путь OBS, например, obs://hivetest/user/hive/warehouse/. vi Spark/spark/conf/spark-defaults.conf
source bigdata_env
kinit Service user (пропустите этот шаг для обычных кластеров)
spark-sql
create table d(a int);
desc formatted d;
Как показано на следующем рисунке, расположение таблицы d находится в указанном пути OBS.

spark-beeline
create table e(a int);
desc formatted e;
Как показано на следующем рисунке, расположение таблицы e находится в указанном пути OBS.


Если Kerberos authentication is enabled for the cluster (the cluster is in security mode) и необходимо сохранять данные в реальном времени в OBS после соединения, выполните следующие действия, чтобы предоставить пользователю конкретные разрешения Read и Write на соответствующий путь OBS:
На следующем рисунке показаны настройки, необходимые для добавления разрешений Read и Write на obs://OBS parallel file system name/cdldata в группу пользователей obs_cdl.
