Skip to main content

Utilities to work with Scala/Java code with py4j

Project description

Version Status Downloads

A set of compatibility routines for making it easier to interact with Scala from Python.

Occasionally Python-focused data shops need to use JVM languages for performance reasons. Generally this necessitates throwing away whole repositories of Python code and starting over or resorting to service architectures (e.g., Apache thrift) which increase system complexity.

You don’t have to.

Using py4j and Spylon you can readily interact with Scala code for more performance critical sections of your whilst leaving the rest unmodified.

Alternatively you can use it as a bridge to allow building wrappers for a Scala/Java codebase.

Installation

Spylon can be installed either from pip or conda-forge

Usage

The simplest way to use spylon is to use it to help with writing PySpark jobs. If you want to supply your own jars to load for usage as Spark user defined functions, you’d want to supply the jar with the udf implementation to spark via spark-submit.

For an easier interactive experience you can make use of the supplied Apache Spark launcher to make it simpler to instantiate a PySpark application from inside a python Jupyter notebook.

Extensions

Spylon is designed as an easy to extend toolkit. Since Apache Spark is a major user or Py4J, some special use cases have been implemented for that and its an example of some use cases for Spylon.

Project details


Download files

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

Source Distribution

spylon-0.1.3.tar.gz (69.8 kB view details)

Uploaded Source

File details

Details for the file spylon-0.1.3.tar.gz.

File metadata

  • Download URL: spylon-0.1.3.tar.gz
  • Upload date:
  • Size: 69.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for spylon-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b918e4782bac8e135ee14d0c8346a74c134971ea8e2c8fb2d7538ec46370e15c
MD5 678f59730593c6e57dcb836dbed4a87a
BLAKE2b-256 f2b6b63db74aa2fc28c4c70233364381c67b37a1b9d06c94f12c2abc90dd71d0

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