Skip to main content

The Apache Spark adapter plugin for dbt

Project description

dbt logo

Unit Tests Badge Integration Tests Badge

dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.

dbt is the T in ELT. Organize, cleanse, denormalize, filter, rename, and pre-aggregate the raw data in your warehouse so that it's ready for analysis.

dbt-spark

The dbt-ocean-spark package contains all of the code enabling dbt to work with Apache Spark on Ocean. For more information, consult the docs.

Getting started

Running locally

A docker-compose environment starts a Spark Thrift server and a Postgres database as a Hive Metastore backend. Note: dbt-spark now supports Spark 3.1.1 (formerly on Spark 2.x).

The following command would start two docker containers

docker-compose up -d

It will take a bit of time for the instance to start, you can check the logs of the two containers. If the instance doesn't start correctly, try the complete reset command listed below and then try start again.

Create a profile like this one:

spark_testing:
  target: local
  outputs:
    local:
      type: ocean_spark
      method: http
      host: api.spotinst.io
      port: 443
      cluster: osc-[clusterId]
      account: acc-[accountId]
      app: spark-hive-[appId]
      schema: analytics
      connect_retries: 5
      connect_timeout: 60
      retry_all: true

Connecting to the local spark instance:

Note that the Hive metastore data is persisted under ./.hive-metastore/, and the Spark-produced data under ./.spark-warehouse/. To completely reset you environment run the following:

docker-compose down
rm -rf ./.hive-metastore/
rm -rf ./.spark-warehouse/

Reporting bugs and contributing code

  • Want to report a bug or request a feature? Let us know on Slack, or open an issue.

Code of Conduct

Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.

Join the dbt Community

Reporting bugs and contributing code

Code of Conduct

Everyone interacting in the dbt project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the dbt Code of Conduct.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

dbt_ocean_spark-1.6.2-py3-none-any.whl (45.2 kB view details)

Uploaded Python 3

File details

Details for the file dbt_ocean_spark-1.6.2-py3-none-any.whl.

File metadata

File hashes

Hashes for dbt_ocean_spark-1.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2cadab32c24c3230dddd6c82080b6c6b0aecc974306c30d48bf7140b7ce74194
MD5 f6f58772b9f9a6212b68e4f8565ad84e
BLAKE2b-256 c842e28112168ecee8a6a2c1c8bf243f66f83faa30d142047842d885851293ae

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page