robin-sparkless 0.1.0__cp38-abi3-win_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
Binary file
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: robin-sparkless
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Classifier: Development Status :: 3 - Alpha
|
|
5
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
6
|
+
Classifier: Programming Language :: Python :: 3
|
|
7
|
+
Classifier: Programming Language :: Rust
|
|
8
|
+
Classifier: Topic :: Scientific/Engineering
|
|
9
|
+
Summary: PySpark-like DataFrame API in Rust (Polars backend), with Python bindings via PyO3
|
|
10
|
+
Author: Robin Sparkless contributors
|
|
11
|
+
License: MIT
|
|
12
|
+
Requires-Python: >=3.8
|
|
13
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
14
|
+
|
|
15
|
+
# robin-sparkless (Python)
|
|
16
|
+
|
|
17
|
+
**PySpark-style DataFrames in Python—no JVM.** Uses [Polars](https://www.pola.rs/) under the hood for fast execution.
|
|
18
|
+
|
|
19
|
+
## Install
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pip install robin-sparkless
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Requirements:** Python 3.8+
|
|
26
|
+
|
|
27
|
+
## Quick start
|
|
28
|
+
|
|
29
|
+
```python
|
|
30
|
+
import robin_sparkless as rs
|
|
31
|
+
|
|
32
|
+
spark = rs.SparkSession.builder().app_name("demo").get_or_create()
|
|
33
|
+
df = spark.create_dataframe(
|
|
34
|
+
[(1, 25, "Alice"), (2, 30, "Bob"), (3, 35, "Charlie")],
|
|
35
|
+
["id", "age", "name"],
|
|
36
|
+
)
|
|
37
|
+
filtered = df.filter(rs.col("age").gt(rs.lit(26)))
|
|
38
|
+
print(filtered.collect())
|
|
39
|
+
# [{"id": 2, "age": 30, "name": "Bob"}, {"id": 3, "age": 35, "name": "Charlie"}]
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Read from files:
|
|
43
|
+
|
|
44
|
+
```python
|
|
45
|
+
df = spark.read_csv("data.csv")
|
|
46
|
+
df = spark.read_parquet("data.parquet")
|
|
47
|
+
df = spark.read_json("data.json")
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Filter, select, group, join, and use window functions with a PySpark-like API. See the [full documentation](https://robin-sparkless.readthedocs.io/) for details.
|
|
51
|
+
|
|
52
|
+
## Optional features
|
|
53
|
+
|
|
54
|
+
Install from source to enable extra features (requires [Rust](https://rustup.rs/) and [maturin](https://www.maturin.rs/)):
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
pip install maturin
|
|
58
|
+
maturin install --features "pyo3,sql" # spark.sql() and temp views
|
|
59
|
+
maturin install --features "pyo3,delta" # read_delta / write_delta
|
|
60
|
+
maturin install --features "pyo3,sql,delta"
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Links
|
|
64
|
+
|
|
65
|
+
- **Documentation:** [robin-sparkless.readthedocs.io](https://robin-sparkless.readthedocs.io/)
|
|
66
|
+
- **Source:** [github.com/eddiethedean/robin-sparkless](https://github.com/eddiethedean/robin-sparkless)
|
|
67
|
+
- **Rust crate:** [crates.io/crates/robin-sparkless](https://crates.io/crates/robin-sparkless)
|
|
68
|
+
|
|
69
|
+
## License
|
|
70
|
+
|
|
71
|
+
MIT
|
|
72
|
+
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
robin_sparkless\__init__.py,sha256=h26i0kv9czksgzJ0zbFJvX-5IZV8hrWVEerFQOVG3fA,143
|
|
2
|
+
robin_sparkless\robin_sparkless.pyd,sha256=5qJDHN53Pby0GlkKjUZGX_FQzArRboMdKCole9lvGa8,49816064
|
|
3
|
+
robin_sparkless-0.1.0.dist-info\METADATA,sha256=hy2GG-OEC7HVIzqe75ujZ6qhFidPfiZ19hBcFvByKOQ,2202
|
|
4
|
+
robin_sparkless-0.1.0.dist-info\WHEEL,sha256=hTMu-is_FpauOrYu4Kff9kxm141NO2pci8NA3oEIPp0,95
|
|
5
|
+
robin_sparkless-0.1.0.dist-info\RECORD,,
|