如何将MindSDB集成到MongoDB数据库中。
#hacktoberfest #machinelearning #mongodb #mindsdb

如果您是MindSDB的新手并查看此博客主题,则可能会问为什么您需要使用两个不同的数据库。这不是导致两个数据库之间的数据重复吗?好吧,不。它不会导致数据重复。 MindSDB不是传统的关系数据库管理系统(RDBMS),例如MySQL,也不是NOSQL数据库,例如MongoDB或Cassandra。

那么,这到底是什么?

MindSDB是将机器学习集成到数据库中的服务。以前,您必须使用Pytorch或Tensorflow等框架来开发机器学习模型,并在此过程中浏览许多步骤。另一方面,MindSDB允许您使用SQL(最知名和最长的数据库语言)训练模型并生成预测。

要了解有关MindSDB及其工作原理的更多信息,请阅读此article,其中我介绍了MindSDB的基础知识,并指导您完成预测的过程。

本文的这个目标是解释如何将MongoDB数据库与MindSDB集成。为此,您将学习如何:

  • 用mongodb指南针将mongodb连接到MindSDB云。
  • 连接到MongoDB数据库
  • 在mongodb中创建一个预测变量。

将MongoDB与MindSDB Cloud与MongoDB指南针连接。

您可以通过MongoDB指南针或MongoDB Shell将MindSDB连接到MongoDB。本文将使用MongoDB指南针建立连接,但是如果您有兴趣使用Mongo Shell,请查看官方指南here

什么是MongoDB指南针?

mongoDB Compass是一个交互式GUI,由MongoDB的团队构建,以对MONGODB数据库中存储的数据进行查询,优化,汇总和分析更容易,更有效的数据。如果您是MongoDB指南针的新手,您可以了解更多有关here的信息,然后下载here

启动连接。

要将MindSDB连接到MongoDB,请启动MongoDB指南针并按照以下步骤操作:

  1. 要建立新的连接,请单击应用程序窗口左上角的新连接按钮。 New Connection
  2. 接下来,单击Advanced Connection Options下拉菜单。 Advanced Connection Options
  3. General选项卡上,使用cloud.mindsdb.com作为将Mongo连接到MindSDB Cloud的主机。 General Tab to connect to MindsDB cloud
  4. 接下来,在Authentication选项卡上,选择Username/Password作为身份验证方法。然后分别在用户名和密码字段中输入您的云帐户电子邮件和密码。 Authentication - Username/Password
  5. 最后,单击下面的Connect按钮以启动与所提供的凭据。
  6. 关于成功的连接,您应该看到MindSDB云帐户中当前存在的所有数据库。这是我的ð。 200 - Connection Successful

将MongoDB数据库连接到MindSDB

在上一节中,您将MongoDB连接到MindSDB云帐户。这使您可以查看Mongo中的所有MindsDB数据库。尽管这是朝正确方向迈出的一步,但它不允许MindSDB使用MongoDB数据库进行预测或预测。

要授予MindSDB此权限,请将数据库名称和其他参数添加到MindSDB databases集合中。要获得更好的理解,请按照以下步骤:

  • 从MongoDB指南针显示的当前信息中选择mindsdb数据库。该数据库包括先前创建的预测变量的集合以及包含有关数据库,预测变量和预测变量版本的信息。 MindsDB Databases mindsdb中的收藏 MindsDB Databases Collection
  • databases集合包含有关MindSDB可以连接和使用的数据库或集成的信息。 Databases collections Integrations MindSDB可以访问默认情况下,即莱特伍德,文件,查看和示例数据集成,如上图所示。

要授予MindSDB连接到外部数据库的权限,请执行以下步骤:

  • 首先,在Mongo Compass打开蒙古终端。 Mongosh Terminal
  • 接下来,选择mindsdb作为use关键字的首选数据库。

    use mindsdb
    

    Use MindsDB

  • 接下来,将参数传递到使用insertOne关键字的databases集合中插入外部数据库。
    语法是:

    db.databases.insertOne({
        name: "tesla", // name of database
        engine: "mongodb", // databaase engine to use,
        connection_args: {
            "port": 27017, // connection port
            "host": "mongodb://localhost:27017", // connection host
            "database": "tesla_stock_price" // connecting database           
        }
    });
    
  • 如果一切顺利,您应该看到下面的消息,其中包括插入的数据的对象ID:

    {
    "acknowledged" : true,
    "insertedId" : ObjectId("634d7e64daf075c8f1b4e090")
    }
    

创建一个预测指标

从mongoDB创建预测因子与上一节中描述的过程相似。要创建一个预测指标,请将其名称和关联参数插入mindsdb数据库的predictors集合中。

使用下面的语法来创建预测因子:

db.predictors.insert({
     name: "predictor_name",
     predict: "target_column", 
     connection: "integration_name",
     select_data_query: {
        "collection": "collection_name",
        "call": [
            "method": "find",
            "args": []
        ]
     }
});

这是上述参数的含义:

  • 名称:名称唯一地识别您正在创建的预测变量。
  • 预测:您要预测的数据的特征,例如虹膜花的类别。
  • 连接:存在数据的数据库或集成。您可以通过filesdb.databases.insertOne()方法建立此连接。
  • select_data_query:使用其他参数保存培训和验证的集合。

结论。

您通过理解:

了解了本文中的MindSDB和MongoDB如何共同努力
  • 如何通过Mongo Compass将MongoDB连接到MindSDB。
  • 如何插入数据库参数以授予MindSDB的权限以连接到它。
  • 如何通过将数据插入预测因素集合中创建预测变量。

查看官方MongoDB集成文档here,以了解有关如何与MongoDB和Mindsdb合作的更多信息。

感谢您阅读本文;如果您喜欢它,请喜欢并与他人分享。如果您想了解更多有关MindSDB的信息,请访问他们的official documentation和/或在Slack上与背后的团队交谈

离开之前,您可以阅读我以前关于HashnodeDev.to的文章,我经常在这里写有关机器学习和人工智能的文章。

在我的下一篇文章中见。再见。