Отказано в соединении при подключении от polybase к hadoop - PullRequest
0 голосов
/ 26 апреля 2018

При попытке создать внешнюю таблицу из sql server 2017 в Hadoop в Ubuntu 16.04 выдается следующее сообщение об ошибке

Сообщение 105019, уровень 16, состояние 1, строка 1 Не удалось получить доступ к ВНЕШНЕЙ ТАБЛИЦЕ из-за внутреннейошибка: 'Возникла исключительная ситуация Java при вызове HdfsBridge_IsDirExist.Сообщение об исключении Java: вызов из DESKTOP-VE8KNAG / xxx.xxx.x.xxx в xxx.xxx.xx: сбой 54310 при исключении подключения: java.net.ConnectException: соединение отклонено: никакой дополнительной информации;Для получения дополнительной информации см .: http://wiki.apache.org/hadoop/ConnectionRefused: Ошибка [Вызов с DESKTOP-VE8KNAG / 1xxx.xxx.x.xxx на xxx.xxx.xx: 54310 сбой при исключении соединения: java.net.ConnectException: Соединение отклонено: больше нетИнформация;Для получения дополнительной информации см .: http://wiki.apache.org/hadoop/ConnectionRefused] при доступе к внешнему файлу. '

  • Расположение внешнего источника выбирается из core-site.xml
  • Папка Tmpсоздал и добавил разрешение для пользователя и добавил его в core-site.xml
  • Все узлы работают в Hadoop 10625 DataNode 10869 SecondaryNameNode 17113 ResourceManager 17434 NodeManager 10490 NameNode 21566 Jps

sqlquery

create EXTERNAL DATA SOURCE [HDP2] 
WITH (TYPE = HADOOP,
 LOCATION = N'hdfs://xxx.xxx.x.x:54310',
 CREDENTIAL = [HDPUser])
GO

create EXTERNAL TABLE [dbo].CLASS_DIM_EXP (
    [CLASS_ID] [varchar](8) NOT NULL,
    [CLASS_DESC] [varchar](100) NULL,
    [INSERT_DATE] [datetime2](7) NOT NULL,
    [LAST_UPDATE_DATETIME] [datetime2](7) NOT NULL)
WITH   (LOCATION='/user/pdw_user',
DATA_SOURCE = HDP2,
FILE_FORMAT = TSV,
REJECT_TYPE = VALUE,
REJECT_VALUE = 0);

Core-site.xml

<property>
  <name>hadoop.tmp.dir</name>
  <value>/app/hadoop/tmp</value>
  <description>A base for other temporary directories.</description>
</property>

<property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:54310</value>
  <description>The name of the default file system.  A URI whose
  scheme and authority determine the FileSystem implementation.  The
  uri's scheme determines the config property (fs.SCHEME.impl) naming
  the FileSystem implementation class.  The uri's authority is used to
  determine the host, port, etc. for a filesystem.</description>
</property>

Нужно ли что-то менять?

1 Ответ

0 голосов
/ 26 апреля 2018

Проблема здесь в том, что файл cores-site.xml содержит hdfs: // localhost: 54310, необходимо заменить его соответствующим IP-адресом hdfs: //xxx.xxx.x.x: 54310.

...