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 Interface Vs. Class: What's the Difference

Here are the differences between Class and Interface in Python.

Python interface


Python class can have all concrete methods. But interface does not have single concrete method.


Here you'll know about

  • What's abstract method
  • Abstract Class: How to Create it
  • Rules to Write an Interface
  • How to Create Abstract Class
  • How to Create an Interface


What's abstract method

The abstrcat method is one which does not have body.

from abc import ABC, abstract method
class name_class(ABC): # abstract class

@abstractmethod
def name_method(self): #abstract method without body
pass


The interface is used when all the features are needed to be implemented differently for different objects.

Rules to Write an Interface

  1. All methods of an interface should be abstract.
  2. You cannot create an interface object.
  3. If any class implements an interface, then you need to define all the methods given in that interface in child class.
  4. You need to declare all methods as abstract if that class does not implement the interface

How to Create Abstract Class


from abc import ABC, abstractmethod
class Myengineer(ABC):
@abstractmethod
def mybranch(self):
pass
myobj = Myengineer()


Output

TypeError: Can’t instantiate abstract class Myengineer
with abstract methods mybranch


How to Create an Interface

You cannot create an object from an abstract class. But you can do it by creating a child class.


from abc import ABC, abstractmethod

#Abstract class

class Myengineer(ABC):
@abstractmethod
def mybranch(self):
pass

#Child class implements abstract class

class MyEEE(Myengineer):
def mybranch(self):
print(“I am an electrical and electronics Engineer”)
myobj = MyEEE()
myobj.mybranch()

Comments

Popular posts from this blog

How to Fix datetime Import Error in Python Quickly

How to Check Kafka Available Brokers

SQL Query: 3 Methods for Calculating Cumulative SUM