Skip to main content

Scalable Python data science, in an API compatible & lightning fast way.

Project description


PyPI Latest Release License Coverage Build Status Doc Slack Twitter

What is Xorbits?

Xorbits is an open-source computing framework that makes it easy to scale data science and machine learning workloads — from data preprocessing to tuning, training, and model serving. Xorbits can leverage multi-cores or GPUs to accelerate computation on a single machine or scale out up to thousands of machines to support processing terabytes of data and training or serving large models.

Xorbits provides a suite of best-in-class libraries for data scientists and machine learning practitioners. Xorbits provides the capability to scale tasks without the necessity for extensive knowledge of infrastructure.

Xorbits features a familiar Python API that supports a variety of libraries, including pandas, NumPy, PyTorch, XGBoost, etc. With a simple modification of just one line of code, your pandas workflow can be seamlessly scaled using Xorbits:


Why Xorbits?

As ML and AI workloads continue to grow in complexity, the computational demands soar high. Even though single-node development environments like your laptop provide convenience, but they fall short when it comes to accommodating these scaling demands.

Seamlessly scale your workflow from laptop to cluster

To use Xorbits, you do not need to specify how to distribute the data or even know how many cores your system has. You can keep using your existing notebooks and still enjoy a significant speed boost from Xorbits, even on your laptop.

Process large datasets that pandas can't

Xorbits can leverage all of your computational cores. It is especially beneficial for handling larger datasets, where pandas may slow down or run out of memory.

Lightning-fast speed

According to our benchmark tests, Xorbits surpasses other popular pandas API frameworks in speed and scalability. See our performance comparison , explanation and research paper.

Leverage the Python ecosystem with native integrations

Xorbits aims to take full advantage of the entire ML ecosystem, offering native integration with pandas and other libraries.

Where to get it?

The source code is currently hosted on GitHub at: https://github.com/xorbitsai/xorbits

Binary installers for the latest released version are available at the Python Package Index (PyPI).

# PyPI
pip install xorbits

Other resources

License

Apache 2

Roadmaps

The main goals we want to achieve in the future include the following:

  • Transitioning from pandas native to arrow native for data storage
    will reduce the memory cost substantially and is more friendly for compute engine.
  • Introducing native engines that leverage technologies like vectorization and codegen to accelerate computations.
  • Scale as many libraries and algorithms as possible!

More detailed roadmaps will be revealed soon. Stay tuned!

Relationship with Mars

The creators of Xorbits are mainly those of Mars, and we currently built Xorbits on Mars to reduce duplicated work, but the vision of Xorbits suggests that it's not appropriate to put everything on Mars. Instead, we need a new project to support the roadmaps better. In the future, we will replace some core internal components with other upcoming ones we will propose. Stay tuned!

Getting involved

Platform Purpose
Github Issues Reporting bugs and filing feature requests.
StackOverflow Asking questions about how to use Xorbits.
Slack Collaborating with other Xorbits users.

Citing Xorbits

If Xorbits could help you, please cite our paper using the following metadata:

@inproceedings{lu2024Xorbits,
  title = {Xorbits: Automating Operator Tiling for Distributed Data Science},
  shorttitle = {Xorbits},
  booktitle = {2024 {{IEEE}} 40th {{International Conference}} on {{Data Engineering}} ({{ICDE}})},
  author = {Lu, Weizheng and He, Kaisheng and Qin, Xuye and Li, Chengjie and Wang, Zhong and Yuan, Tao and Liao, Xia and Zhang, Feng and Chen, Yueguo and Du, Xiaoyong},
  year = {2024},
  month = may,
  pages = {5211--5223},
  issn = {2375-026X},
  doi = {10.1109/ICDE60146.2024.00392},
}

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

xorbits-0.7.4.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

xorbits-0.7.4-cp311-cp311-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.11 Windows x86-64

xorbits-0.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

xorbits-0.7.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

xorbits-0.7.4-cp311-cp311-macosx_11_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

xorbits-0.7.4-cp311-cp311-macosx_10_9_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

xorbits-0.7.4-cp311-cp311-macosx_10_9_universal2.whl (4.6 MB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

xorbits-0.7.4-cp310-cp310-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.10 Windows x86-64

xorbits-0.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

xorbits-0.7.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

xorbits-0.7.4-cp310-cp310-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

xorbits-0.7.4-cp310-cp310-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

xorbits-0.7.4-cp310-cp310-macosx_10_9_universal2.whl (4.6 MB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

xorbits-0.7.4-cp39-cp39-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.9 Windows x86-64

xorbits-0.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

xorbits-0.7.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (8.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

xorbits-0.7.4-cp39-cp39-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

xorbits-0.7.4-cp39-cp39-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

xorbits-0.7.4-cp39-cp39-macosx_10_9_universal2.whl (4.6 MB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file xorbits-0.7.4.tar.gz.

File metadata

  • Download URL: xorbits-0.7.4.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xorbits-0.7.4.tar.gz
Algorithm Hash digest
SHA256 dd49521daf02f2bc90ba7312dda9a3791885d382a9eba6dcfbe9e541201b4052
MD5 7cad1f9f13e435faba30116ded7240e2
BLAKE2b-256 d1f391aef88a57b67e551da82b74e43f52aee90e50879bfaea2f70e6774007eb

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: xorbits-0.7.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 95a90d75a5b25dd67dc6fdf614e0edf0dc83402499a12b34059a01f5d640ee6a
MD5 5e19fb23932455e9c02d8e5b148cdcd9
BLAKE2b-256 99d0155079d3b8d63f70a7004484b17c5e5c3d72887648de7c6c0d79da69fe4e

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b963ab8998e6f83945244f85c2dcbe5dfe55aae2ffbd4ca7601e51bdd64b6e64
MD5 87f4b411d96595a3d501a542a834f50f
BLAKE2b-256 83a618078e725cffd49a8e1f972b99aee0377909ce708d058dec501af560b87b

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8bb14ea746f0086c137d7c718061901cb1ff4a65bd7b916eec89bfcd34271589
MD5 282e99d9393c0aa90e8e18ac46bd4cfd
BLAKE2b-256 c7024977cacf3bb9174c8de68bb9f71b34642dea7664ec80da23d8a02b1bf393

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 58fad4c62fb5c21e337c53a9e719610a2d54395c8b1ed5b3d186ec38f7d8210f
MD5 3ab4f1df5428f0cc3e2a5c22be82633a
BLAKE2b-256 e00a4126ace5594cf02c0343ce0df6a633566da2c9ca647122de80c4203769a6

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 af552e3fd81f0bc90b32e6bd34d21527092c5e6bd979aae48ddc04b5dd0d18c7
MD5 42c578f6a101c648cc1c2a00d395b94c
BLAKE2b-256 70165cf4f4a90a8f1fb4e49ad9cc49d8155dab9f6884cca85094c58b5a6c0911

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 f39a70350edf0a89aeba26ee8b25404e85a45c782fe4be803b1471b1a0150b68
MD5 2ef414818871d8623c229a2464f68b21
BLAKE2b-256 2d68b085667a4a1fa99d1d80155be5cb6c9aa8f016b4220b3eecfbf1d1570409

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: xorbits-0.7.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d4c16d6d723613c0fbb1f0d53cbd829f7197766acee5da22c6b499b23d00e973
MD5 f9d51d6acb34e7a037a1495ecf78e377
BLAKE2b-256 5727805df3a61b3aa7d62e27276217b7da2fbe56ab23dd3c15c5ef1168030f6e

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c5ee24c65981ea5562bdef03d62d5042c5da9443f6851c2d1bb1adda1d6b9bca
MD5 1676125554f7b35a024a6111ffe4d52d
BLAKE2b-256 79e3c051a8b6882f7ff8a30078b7b51db3b72458031c0064f79698ec5bccdc24

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 14e0dac46c109ba18c95ecdbf88d58f472f9278570f60dd90b69ab93024b588c
MD5 7813b9982cfe8c6d9318091244b94cfd
BLAKE2b-256 2c71c4786ca038686efd2736380aa8d0d73794a71a9939750b1e138e5ed596a0

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6a598e749dc36a5258cad070b1370a44554064615b9cc043a48a54e910a9e48
MD5 744ca868a2305b3a9ce5280806373bc2
BLAKE2b-256 397e26eeb8c220ede10c34c63ca537e1e77f00f5eae63491d633113df76c0e1c

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 df8bbc287268ddd16c2d532d3562c7e346b0045cd7b2d654f8b2d445b88275f9
MD5 5d7059f1ba6303e84c8d6780b8b1225a
BLAKE2b-256 a923c30b267dcbff9d155e9cdd20e0d6f57d596d7c2f5215f8881210d84a4c90

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0f36dbecf163e52779ae5f92bd4425273ed7a16d192f6e432cea6132d00af0f2
MD5 b1394535285009d4ccd6f8bc1887cef5
BLAKE2b-256 ad089dc8805bed66089abd895a8db71772f4caa0232f92c40d3946353a6ff1aa

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: xorbits-0.7.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 3.6 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2e0441d339e920b6015c7a77d0c313685ba15d041d7b9f90af791db3d264085b
MD5 07883a842c61e146c9d1bf6c5006acf3
BLAKE2b-256 c3e65f07b3711c241b6f498d49e80114e22806dc7d27b86f8e3326d03e95b981

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 563f63973cfe82aaa87bd00f59dde32ed62157a786638e9ff845be633be81999
MD5 63ed5f0292feb4f4c84ecab6e68cc12b
BLAKE2b-256 0b87126f5bce1eca0d91bfde884cc3fa1fb3344e06044d63729a6e6ff3b11804

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c9e2a5b8ae38f48bc4e5d18cbf2bfd8ff3b47be0cb718946eac9a9289db1c642
MD5 152959a44d88f3812aff0d731c3d06e7
BLAKE2b-256 6d8653b6ec60c7c6c9aeee31d63d8e2dbd11bf02578f4596e10bdf152955a000

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5afb3a77c84632919734a5e46f79336cf8156aa6eafdd6fabe29067b50d64edc
MD5 cf72caf002aa0583d0db0ea609bf7b4f
BLAKE2b-256 f72c8263e5bae8f2c0d2129eeaf2202ee361b3aaf718c12e71c224b6de187e52

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5fcf48ffd499062c1b0f0149ddcd95ce6ba0b53837211b04ffbd88357a7626f9
MD5 460290d79e84ef0e30c566f469cff9e6
BLAKE2b-256 f432d7efc3634ae13969ef2bea33d78620d277045ca2c7b4e10f17892b8a4736

See more details on using hashes here.

File details

Details for the file xorbits-0.7.4-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for xorbits-0.7.4-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 15265fed301064979434a4e08ee76246d2db948aad80b906634ebe832fe64ce8
MD5 e6332b032c01fdeb914a18ef8036e3f8
BLAKE2b-256 aae447d0b7123468ecbb176f0d169febb2e8be52fab5bcc1e85b569bad20d2b9

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