EMR Studio is an integrated development environment (IDE) that makes it easy for data scientists and data engineers to develop, visualize, and debug data engineering and data science applications written in R, Python, Scala, and PySpark.
EMR Studio provides fully managed Jupyter Notebooks and tools such as Spark UI and YARN Timeline Service to simplify debugging. Data scientists and analysts can install custom kernels and libraries, collaborate with peers using code repositories such as GitHub and BitBucket, or execute parameterized notebooks as part of scheduled workflows using orchestration services like Apache Airflow or Amazon Managed Workflows for Apache Airflow.
EMR Studio kernels and applications run on EMR clusters, so you get the benefit of distributed data processing using the performance optimized Amazon EMR runtime for Apache Spark. Administrators can set up EMR Studio such that analysts can run their applications on existing EMR clusters or create new clusters using pre-defined AWS Cloud Formation templates for EMR.
Features and Benefits
Simple to use
EMR Studio makes it simple to interact with applications on an EMR cluster. You can access EMR Studio either from the AWS Console using AWS IAM Authentication or without logging into the AWS console by enabling federated access from your identity provider (IdP) via either AWS Identity and Access Management (IAM) or AWS Single Sign-On (AWS SSO). You can interactively explore, process, and visualize data using notebooks, build and schedule pipelines, and debug applications without logging into EMR clusters.
Fully managed Jupyter Notebooks
With EMR Studio, you can start notebooks in seconds, get onboarded with sample notebooks, and perform your data exploration. You can collaborate with peers via built-in real-time collaboration and track changes across notebook versions via Git repositories. You can also customize your environment by loading custom kernels and Python libraries from notebooks.
Easy to build applications
EMR Studio makes it easy for you to move from prototyping to production. You can trigger pipelines from code repositories, simply run Notebooks as pipelines using orchestration tools like Apache Airflow or Amazon Managed Workflows for Apache Airflow, or attach notebooks to a bigger cluster using a single click.
With EMR Studio, you can debug jobs and access logs without logging into the cluster for both active and terminated clusters. You can use native application interfaces such as Spark UI and YARN timeline service directly from EMR Studio. EMR Studio also allows you to quickly locate the cluster or job to debug by using filters such as cluster state, creation time, and cluster ID.
Real-time collaborative notebooks
With EMR Studio, data scientists, engineers, and analysts can collaborate across teams in real time. You can invite your colleagues to view and edit notebooks. This enables real-time co-authoring, code debugging and code reviews of Jupyter notebooks.
EMR Studio comes with SQL Explorer, a feature in your Workspace that allows you to browse the data catalog and run SQL queries on EMR clusters directly from EMR Studio. In SQL explorer, you can connect to Amazon EMR on EC2 clusters with Presto to view and browse the data catalog. SQL Explorer also provides you an Editor to run SQL queries, view query results in a table, and download them in a csv format.
Multi Language Notebooks
EMR Studio enables you to use multiple languages within a single Jupyter notebook. You can switch between Python, Scala, SparkSQL, and R within the same Jupyter notebook and share data between cells via temporary tables. With this feature, you can write code in languages best suited to different components of your workflow.
Build data science and engineering applications
With EMR Studio, you can start notebooks in seconds, get onboarded with sample notebooks, and perform your data exploration. You can collaborate with peers via built-in real time collaboration and track changes across notebook versions via Git repositories. You can also customize your environment by loading custom kernels and Python libraries from notebooks.
Deploy production pipelines
In EMR Studio, you can use code repository to trigger pipelines. You can also parameterize and chain notebooks to build pipelines. You can integrate notebooks into scheduled workflows using workflow orchestration services such as Apache Airflow or Amazon Managed Workflows for Apache Airflow. EMR Studio also allows you to re-attach notebooks to a bigger cluster to run a job.
Simplify debugging applications
In EMR Studio, you can debug notebook applications from the notebook UI. You can also debug pipelines by first narrowing down clusters using filters like cluster state, and diagnose jobs on both active and terminated clusters with as few clicks as possible to open native debugging UIs like Spark UI, Tez UI, and Yarn Timeline Service.