Yandex Cloud
Search
Discuss with expertTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • Serverless Integrations
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex Managed Service for Apache Airflow™
  • Getting started
    • All guides
      • Uploading a file to Yandex Object Storage
      • Connecting to a Yandex Object Storage bucket with a bucket policy
      • Reading a file from Yandex Object Storage
    • Working with Apache Airflow™ interfaces
  • Access management
  • Pricing policy
  • Terraform reference
  • Yandex Monitoring metrics
  • Audit Trails events
  • Release notes
  • FAQ

In this article:

  • Prepare the DAG file and run the graph
  • Check the result
  1. Step-by-step guides
  2. Working with Yandex Object Storage
  3. Reading a file from Yandex Object Storage

Reading a file from Yandex Object Storage

Written by
Yandex Cloud
Updated at October 23, 2025
View in Markdown
  • Prepare the DAG file and run the graph
  • Check the result

Use a directed acyclic graph to read files from Yandex Object Storage of the service account attached to your Apache Airflow™ cluster.

Prepare the DAG file and run the graphPrepare the DAG file and run the graph

  1. Create a local file named read_file_from_dags_bucket.py and paste the following script to it:

    from airflow.settings import DAGS_FOLDER
    from airflow.decorators import dag, task
    
    
    @dag(schedule=None)
    def read_file_from_dags_bucket():
        @task
        def read_file():
            with open(f'{DAGS_FOLDER}/data/airflow.txt') as file:
                content = file.read()
                print(f"file content: {content}")
    
        read_file()
    
    
    read_file_from_dags_bucket()
    
  2. Upload the read_file_from_dags_bucket.py DAG file to the bucket you created earlier. This will automatically create a graph with the same name in the Apache Airflow™ web interface.

  3. Open the Apache Airflow™ web interface.

  4. Make sure a new graph named read_file_from_dags_bucket has appeared in the DAGs section.

    It may take a few minutes to load a DAG file from the bucket.

  5. To run the graph, click image in the line with its name.

Check the resultCheck the result

To check the result in the Apache Airflow™ web interface:

Apache Airflow™ version below 3.0
Apache Airflow™ version 3.0 or higher
  1. In the DAGs section, click the read_file_from_dags_bucket graph.
  2. Go to the Graph section.
  3. Select read_file.
  4. Go to Logs.
  5. Make sure the logs contain the file content: {content} line, where content is the file contents. This means the query was successful.
  1. In the DAGs section, click the read_file_from_dags_bucket graph.
  2. Go to Tasks.
  3. Select read_file.
  4. Go to Tasks Instances.
  5. Select the task instance.
  6. The Logs section will open.
  7. Make sure the logs contain the file content: {content} line, where content is the file contents. This means the query was successful.

Was the article helpful?

Previous
Connecting to a Yandex Object Storage bucket with a bucket policy
Next
Working with Apache Airflow™ interfaces
© 2026 Direct Cursus Technology L.L.C.