Token导航 LogoToken导航TokenDH.com
Dataengineering With Postgres Docker MCP logo
数据服务未说明官方级别未说明来源级核验

Dataengineering With Postgres Docker MCP

MCP Server

一个使用Docker和MCP技术优化PostgreSQL数据库性能的工具,适用于数据工程和数据库管理。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
DockerCursorPostgreSQLCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

slb02

提供方

slb02

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

使用Postgres和Docker MCP进行数据工程

项目链接: 查看项目

作者 斯里·拉克希米·巴蒂纳\ 电子邮件: sbathina02@gmail.com

______________________________________________________________________

Image

______________________________________________________________________

介绍今天的项目!

在这个项目中,我将使用Cursor中的MCP在Docker容器中创建和优化PostgreSQL数据库。PostgreSQL是一个关系数据库管理系统(RDBMS)。Docker用于创建和管理Postgres环境。

关键工具和概念

我使用的主要工具包括MCP、Docker和PostgreSQL。我学到的关键概念包括数据库优化(索引、FK、PK、扫描等!)、Docker容器、数据库模式、uv Python环境,以及将Cursor与数据工程MCP一起使用。

挑战与胜利

这个项目花了我大约2个小时。最具挑战性的部分是数据库优化的工作原理。看到数据库查询速度的提高是非常有益的。凭借我学到的技能,我想学习更多以数据工程为重点的MCP,如dbt、Airflow、Snowflake等!

我为什么做这个项目

我今天做这个项目是为了学习如何使用MCP,熟悉Docker和PostgreSQL的使用,以及使用Curso,r,这有助于提高数据工程水平。我想学习的另一项数据库技能是在MCP的帮助下在我的数据库上运行模型。

______________________________________________________________________

设置Docker和UV

在这一步中,我将通过安装uv、一个快速的Python包管理器和Docker来设置我的开发环境。Docker Desktop将帮助我创建独立的环境来运行容器。uv是一个Python包管理器,用编译语言(RUST)编写,速度非常快。

Image

什么是Docker,为什么是容器?

我们正在使用Docker容器来最大限度地减少在不同操作系统(OS)上运行容器/应用程序的麻烦。这很重要,因为在团队中或与外部托管计算平台一起工作通常不是首选的系统设置。

验证安装

我在本地环境中设置的依赖关系是uv,因为它允许我运行MCP服务器。运行--version for uv会显示版本号和版本ID,这确认它们安装正确,现在我已经准备好设置MCP了。

______________________________________________________________________

连接MCP服务器

在这一步中,我将安装MCP服务器,这些服务器是与Docker等外部应用程序交互的程序。Docker在没有MCP的情况下,Cursor只能与代码库交互并使用websearch,而不能直接(通过API调用)与桌面应用程序或远程托管应用程序对话。使用MCP,Cursor可以根据用户的文本输入从Cursor聊天中运行任何指定的API调用,以与桌面或远程托管的应用程序交互。

Python项目设置

命令uv init设置一个Python项目,因为我们需要一个Python环境来运行MCP服务器。创建的文件包括接受依赖关系的pyproject.toml、在git提交中隐藏指定文件的.gitignore、用于项目文档的README.md和作为环境示例Python程序的main.py。

安装Docker MCP

Image

______________________________________________________________________

构建我的数据库

在这一步中,我将使用Docker MCP创建一个容器来运行PostgreSQL数据库模式,以保存40000行电子商务数据,并使用PostgreSQL MCP创建数据库用户,以便我们可以对电子商务数据运行查询。

Image

数据库安全

我创建了一个名为app的应用程序用户。每个PostgreSQL数据库都有一个默认的超级用户postgres,它具有管理员级别的特权/权限。超级用户和应用用户之间的区别在于执行能力水平;超级用户可以做任何事情,而应用程序用户只允许做一个子集。这是一种安全最佳实践,因为这意味着在帐户被泄露的情况下,可以造成的损害非常小(假设他们只能访问应用程序用户,而不是超级用户)。

加载演示数据

我通过运行“pip”命令将demo_data.sql内容拉入PostgreSQL数据库来加载演示数据。demo_data.sql文件包含40K行电子商务数据。

验证和可视化数据库

我通过让Cursor读取数据库模式并为每个表采样3行来创建Mermaid ER图,从而验证了我的数据库。Mermaid ER图将客户、订单、产品和order_items显示为表,将order_id、customer_id、order_date、status、total_amount和region(用于订单表)显示为列。例如,该图显示产品连接到“order_items”,后者连接到订单和客户。

Image

______________________________________________________________________

绩效审计

我将执行一次数据库性能审计,它着眼于需要优化的慢速查询、降低搜索速度的缺失索引、数据库健康问题、瓶颈和效率低下。数据库管理员对此很关心,因为生产中的慢速查询可能会导致查询队列中的biuld增加,从而导致高昂的成本。这种优化有助于消除所有减缓关系数据库速度的痛点/瓶颈。

审计结果

Cursor的审计通过运行EXPLAIN ANALYZE来分析数据库健康状况、执行时间、计划时间和扫描类型,EXPLAIN ANLYZE研究查询的执行方式。它发现了缺少FK(外键)的瓶颈。建议包括添加索引,这将加快对order.customer_id、order_items.order_id和order_items.product_id的扫描速度

Image

性能提升

我为按customer_id过滤订单的查询实现了索引建议。创建索引后,性能提高了约9.8倍。执行计划从顺序扫描更改为位图索引扫描,这意味着在缩放方面具有恒定的性能。

______________________________________________________________________

______________________________________________________________________

目录标签

目录标签

DockerCursorPostgreSQL数据库优化Python本地部署数据工程MCP

支持客户端

Cursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP