Ctrl + k

or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/connectorx@0.4.x
tile.json

tessl/pypi-connectorx

tessl install tessl/pypi-connectorx@0.4.0

Load data from databases to dataframes, the fastest way.

Agent Success

Agent success rate when using this tile

86%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.05x

Baseline

Agent success rate without this tile

82%

task.mdevals/scenario-10/

Database Analytics Loader

Build a Python module that loads and processes analytics data from a PostgreSQL database into dataframes for analysis.

Requirements

Your module should provide functionality to:

  1. Load user activity data from a database table into a dataframe
  2. Execute aggregation queries to compute summary statistics
  3. Load multiple related datasets in a single operation
  4. Support loading data into different dataframe formats based on requirements

Implementation

@generates

API

def load_user_activities(connection_string: str, user_id: int = None) -> object:
    """
    Load user activity records from the database.

    If user_id is provided, filter activities for that specific user.
    Otherwise, load all user activities.

    Args:
        connection_string: Database connection string
        user_id: Optional user ID to filter activities

    Returns:
        A dataframe containing activity records with columns:
        activity_id, user_id, activity_type, timestamp, duration_seconds
    """
    pass

def load_daily_summary(connection_string: str, start_date: str, end_date: str) -> object:
    """
    Load aggregated daily activity summaries.

    Returns daily totals of activities and total duration for the date range.

    Args:
        connection_string: Database connection string
        start_date: Start date in 'YYYY-MM-DD' format
        end_date: End date in 'YYYY-MM-DD' format

    Returns:
        A dataframe with columns: activity_date, total_activities, total_duration
    """
    pass

def load_multiple_datasets(connection_string: str, queries: list) -> list:
    """
    Load multiple datasets by executing multiple queries.

    Args:
        connection_string: Database connection string
        queries: List of SQL query strings to execute

    Returns:
        List of dataframes, one for each query in the same order
    """
    pass

def load_to_arrow(connection_string: str, query: str) -> object:
    """
    Load query results into Apache Arrow format.

    Args:
        connection_string: Database connection string
        query: SQL query string

    Returns:
        PyArrow Table containing the query results
    """
    pass

Test Cases

  • Loading all user activities from the database returns a dataframe with 5 columns @test
  • Loading activities for a specific user (user_id=42) returns only that user's records @test
  • Loading daily summary with aggregated counts and durations returns correct totals @test
  • Loading multiple datasets with 3 different queries returns a list of 3 dataframes @test
  • Loading data to Arrow format returns a PyArrow Table object @test

Dependencies { .dependencies }

connectorx { .dependency }

Provides high-performance database-to-dataframe data loading.

Notes

  • Assume PostgreSQL database connection strings follow the format: postgresql://user:password@host:port/database
  • The database contains a table named user_activities with columns matching the API specification
  • Queries should be standard SQL SELECT statements
  • Handle empty result sets appropriately