• Przejdź do treści
  • Przejdź to drugiego menu
  • Przejdź do głównego paska bocznego
  • Przejdź do stopki
  • START
  • BLOG
  • NEWSLETTER
  • KIM JESTEM
  • KONTAKT
Cegładanych

Cegładanych

Dane - Databricks i Chmura Azura

  • Azure
  • Databricks
  • Spark
  • Etl
  • Engineering
  • AI

Parametryzacja SQL i coś o przyszłości ⌚

23.11.2024 Krzysztof Nojman

PYTHON NA STERYDACH – POLARS

W ostatnim wydaniu pisałem o Pandas UDF w kontekście typów danych. Jeden z czytelników dał mi znać o ciekawej bibliotece z super szybkim Pytonem. 🐍 (tutaj powinien wrzucić ikonę Monty Python ale takiej nie ma więc wrzucam poniżej zdjęcie, jeśli lubisz angielski humor to się uśmiejesz, Polecam 😁)Jak piszą na Github: Polars: Blazingly fast DataFrames in Rust, Python, Node.js, R and SQLPolars to interfejs DataFrame na bazie OLAP Query Engine, zaimplementowany w języku Rust przy użyciu formatu kolumnowego Apache Arrow jako modelu pamięci. W obecnym projekcie mamy problem z osiągami Pandasów, pozdrawiam wszystkich ML-owców, którzy nie są w stanie wszystkiego zrobić na Sparku i muszą się posiłkować Pandasami. Może Polars pomoże.

Dzięki za tip Bartosz
Python Polars: A Lightning-Fast DataFrame Library
Pandas vs Polars – Speed Comparison
Polars: The Super Fast Dataframe Library for Python … bye bye Pandas
PARAMETRYZOWANY SQL

Jeśli do tej pory używałeś f stringów w Pythonie żeby pisać dynamiczne zapytania, to jest coś co może upiększyć twój kod. 
Bardzo często trzeba zrobić coś dynamicznie na podstawie parametrów. Parametry te mogą pochodzić z procesu, poprzedzającego wywołanie np. notatnika bądź z konfiguracji. W takich scenariuszach ta funkcjonalność będzie jak znalazł.Jak to działaZapytanie SQL zawiera opcjonalną listę parametrów w postaci klucz/wartość.Apache Spark analizuje zapytanie SQL i zamienia odwołania do parametrów na odpowiadające im sparsowane węzły drzewa (tree nodes).Podczas analizy uruchamiana jest reguła Catalyst, która zamienia te odwołania na dostarczone wartości parametrów.Takie podejście chroni przed atakami SQL Injection, ponieważ obsługuje tylko wartości literalne.Przykładquery = "SELECT item, sum(amount) from some_purchases group by item having item = :item" spark.sql( query, args={"item": "socks"}, ).show()
Parameterized queries with PySpark
Parameter markersUnnamed parameter markers

W kategorii:Newsletter

Big Data ebook
Subskrybuj
Powiadom o
guest

guest

0 Komentarze
Najstarsze
Najnowsze Najwięcej głosów
Opinie w linii
Zobacz wszystkie komentarze

Pierwszy panel boczny

O MNIE

Narzędzia i dobre procesy do przetwarzania danych to podstawa sukcesu i wartości dla firmy. Czytaj więcej…

big data ebook

Ostatnie wpisy

Jak zainstalować Python whl na Serverless

15.02.2026 By Krzysztof Nojman

Jak efektywnie korzystać z Databricks Assistant – 5 sprawdzonych praktyk

16.11.2025 By Krzysztof Nojman

Databricks DQX

Jakość danych w Databricks DQX

28.01.2025 By Krzysztof Nojman

Linki społecznościowe

  • Facebook
  • GitHub
  • LinkedIn
  • YouTube

Wyszukiwanie

Footer

Najnowsze wpisy

  • Databricks Klastry
  • Jak zainstalować Python whl na Serverless
  • Jak efektywnie korzystać z Databricks Assistant – 5 sprawdzonych praktyk
  • Jakość danych w Databricks DQX
  • Jak Spark robi join?
  • Czy JSON to samo zło
  • VS Code nowości AI 

Tagi

AI Apache Spark Architektura Azure BIg Data Certyfikat cloud Databricks Data Factory Dataframe DQX ETL Hurtownia Danych Intellij IoT Jaka technologia Join Kod Konfiguracja lakehouse Narzędzia Optymalizacja pyspark Spark Windows 10 zadania

Informacje Prawne

To jest nudna część lecz wymagana, wszystkie notki prawne o stronie znajdziecie tutaj.

Polityka Prywatności

Regulamin

Copyright © 2026 · Wszelkie prawa zastrzeżone. Krzysztof Nojman

wpDiscuz