Skip to content

Предварительные требования

Совместимость версий

  • Версии сервера MongoDB:
  • Официально заявленные: 4.0 или выше
  • Фактически протестированные: 4.0.0, 8.0.4
  • Версии Spark: 3.2.x - 3.5.x
  • Версии Java: 8 - 20

См. официальную документацию.

Установка PySpark

Для использования коннектора MongoDB у вас должен быть установлен PySpark (или добавлен в sys.path) ДО создания экземпляра коннектора.

Подробности см. в инструкции по установке.

Подключение к MongoDB

Хост подключения

Возможно подключение к хосту MongoDB как по DNS-имени хоста, так и по его IP-адресу.

Также возможно подключение к общему кластеру MongoDB:

```python
    mongo = MongoDB(
        host="master.host.or.ip",
        user="user",
        password="*****",
        database="target_database",
        spark=spark,
        extra={
            # чтение данных с вторичного узла кластера, переключение на первичный, если вторичный недоступен
            "readPreference": "secondaryPreferred",
        },
    )
```

Поддерживаемые значения readPreference описаны в официальной документации.

Порт подключения

Подключение обычно выполняется к порту 27017. Порт может отличаться для разных экземпляров MongoDB. Пожалуйста, уточните необходимую информацию у администратора MongoDB.

Необходимые разрешения

Попросите администратора кластера MongoDB установить следующие разрешения для пользователя, используемого для создания подключения:

// разрешить запись данных в определенную базу данных
db.grantRolesToUser("username", [{db: "somedb", role: "readWrite"}])
// разрешить чтение данных из определенной базы данных
db.grantRolesToUser("username", [{db: "somedb", role: "read"}])

См. также: