Posts

Showing posts with the label decorators

Featured Post

8 Ways to Optimize AWS Glue Jobs in a Nutshell

Image
  Improving the performance of AWS Glue jobs involves several strategies that target different aspects of the ETL (Extract, Transform, Load) process. Here are some key practices. 1. Optimize Job Scripts Partitioning : Ensure your data is properly partitioned. Partitioning divides your data into manageable chunks, allowing parallel processing and reducing the amount of data scanned. Filtering : Apply pushdown predicates to filter data early in the ETL process, reducing the amount of data processed downstream. Compression : Use compressed file formats (e.g., Parquet, ORC) for your data sources and sinks. These formats not only reduce storage costs but also improve I/O performance. Optimize Transformations : Minimize the number of transformations and actions in your script. Combine transformations where possible and use DataFrame APIs which are optimized for performance. 2. Use Appropriate Data Formats Parquet and ORC : These columnar formats are efficient for storage and querying, signif

Python Function Argument: How to Pass it to Decorator

Image
A decorator is a wrapper and provides additional functionality to a function. Also, it may modify the behavior, such as changing the return type/adding new abilities. Python Decorators Precisely, it is another form of function pointers . Also, it accepts function argument, then either wraps the function or returns a new one. Moreover, it modifies the inputs/outputs supplied to it. It helps you add behavior to functions (objects) dynamically (without changing the function behavior). Function Argument Below, you will find an example of passing a function argument to a decorator. The below function modifies inputs and returns output. def to_upper(func):     text=func()     if isinstance(text,str):         return text.upper() def say():     return "welcome" def hello():     return "hello"      a = to_upper(say) print(a)  b = to_upper(hello) print(b)   Output WELCOME HELLO ** Process exited - Return Code: 0 ** Press Enter to exit terminal References How to write th