用Hackolade进行数据库建模(以Firestore为例)

最近我在玩Firestore,一半是抱着兴趣的态度。但一直让我困惑的是,好像没有什么工具可以帮助建模NoSQL数据库呢,不像关系型数据库有很多选择。

快速搜索一下,能找到这附近的是这个吗?

NoSQL Workbench : Amazon DynamoDBのモデリングができる

在这样的情况下,我注意到了一个叫做Hackolade的软件。

Hackolade公式サイトトップページ

有没有可能进行各种NoSQL数据库的建模呢?尽管我进行了调查,但似乎没有任何关于它们的日语信息。是因为它们知名度低,是可疑的软件,还是没有使用建模工具的习惯呢?

暫時,我只是輕輕碰觸了一下。

软件概述

数据库处理

以下是官方网站所介绍的数据库、搜索引擎和语言。

対応DB一覧
    • Apache Avro Schema

 

    • Apache Cassandra

 

    • Apache HBase

 

    • Apache Hive

 

    • Apache Parquet Schema

 

    • AWS DynamoDB

 

    • AWS Glue Data Catalog

 

    • Azure Cosmos DB

 

    • Couchbase

 

    • DataStax

 

    • Elasticsearch

 

    • Google RealTime Firebase

 

    • Google Cloud Firestore

 

    • JSON Schema

 

    • MarkLogic

 

    • MongoDB

 

    • Neo4j

 

    • SwaggerおよびOpenAPI

 

    • ScyllaDB

 

    TinkerPop w/ Gremlin API

版本

据说有以下3个版本。

エディション料金Professional Edition買い切りだと1500ユーロ(18万円くらい)。別途、サブスク購入もあり。Personal Edition初期費用150ユーロ(1万8千円くらい)+1年ごとに30ユーロ(4千円くらい)Community Edition無料

社区版有以下功能限制。

    • 25オブジェクトまでの制限

 

    • フォワードエンジニアリング・リバースエンジニアリングができない

 

    • HTMLドキュメントのエクスポートができない(PDFのエクスポートは可能)

 

    コマンドラインインターフェース(CLI)が使用できない

在这篇文章中,我们将使用Community Edition。

(2020/4/21添加)上述的限制表示最多只能创建25个对象,这意味着包括数据库、集合(表)、字段(模式)等在内,只能创建25个,因此,免费版实际上几乎没有什么实用性。

安裝

从下载页面上,下载适合您的环境的版本。在这里,下载Windows 64bit版的安装程序。

インストーラファイル

下载完毕后,直接运行并按照向导进行安装。

ウィザード

只要按照提示一步步操作,没有特别的问题,安装就会完成。

直接启动Hackolade。

当您初次启动时,会显示一条消息,表示需要验证许可证密钥,请选择“申请免费的社区版许可证密钥”,然后点击“发送”按钮。

ライセンスキーの検証

然后,浏览器启动并跳转到许可证购买页面。

ライセンスの購入

我会继续进行购买手续。虽然称之为购买,但由于是社区版,所以是免费的。

购买完成后,您将通过电子邮件收到许可证密钥。请在刚才的许可证密钥验证消息中选择“验证许可证或续订密钥”,并将许可证密钥粘贴到“许可证密钥”栏中,然后点击“发送”。

以上就是安装完成了。

制造新型号

在本文中,我们将以Firestore为例,尝试创建一个新模型。

在首页上,点击“新型号”。

トップ画面

“询问模型类型。最初只能选择“JSON”、“Couchbase”、“DynamoDB”和“MongoDB”。
如果想创建其他类型的模型,包括Firestore,需要安装相应类型的插件,请点击“为其他目标安装插件”按钮。”

モデルタイプ選択画面

您可以打开插件管理器。通过点击“安装”来安装您想要引入的插件(例如:Firestore),即可实现安装。

プラグインマネージャ

因为您被要求重新启动,所以请直接进行重新启动。

再起動

再次启动后,从主屏幕再次点击新模型,由于类型增加,因此点击它,并点击创建。

モデルタイプ選択画面

然后,一个全新的模型被创建出来。

まっさらなモデル

物件的屬性

新建模型时,在屏幕右侧会显示一个名为“Properties”的面板。这个面板可以用来对选定的对象进行各种参数设置。
如果查看屏幕左侧的“Object Browser”,很可能“New model”被选择。因此,现在可以对根模型本身进行各种设置。

モデルのプロパティ

尝试添加各种不同的对象

继续以 Firestore 为例,尝试添加一个对象。

添加数据库

首先,您需要添加一个原始数据库。在工具栏上有一个”添加数据库”按钮,点击它即可。

Add database

然后,在属性面板中,我们可以直接更改名称,生成一个名为「新数据库」的新数据库。(在这里我们将其更名为「示例数据库」。)

新しいデータベース

添加收藏

在选择了要添加的目标数据库的前提下,点击工具栏上的“添加集合”按钮来添加集合(在RDB中相当于表格)。

Add collection

然后,通过一个名为「New collection」的操作,在新的集合被创建。
让我们在属性中改变名字。(在这里,我们改为了名叫「user」的名字。)

新しいコレクション

添加领域

接下来,我们将为存储在文档中的集合中添加字段(类似于RDB中的模式)。
在之前创建的集合中,已经创建了一个名为”^[a-zA-Z0-9_.-]{20}$”的字段。这个字段代表了在使用Firestore的SDK等工具的set()方法创建新文档时自动分配的ID。

我将尝试添加一个新字段。
在选择添加位置的集合后,点击工具栏上的”添加属性”按钮。

Add Attribute

接着,一个名为“New field”的新字段被创建。
让我们在属性中更改名称。(这里我们将其更改为“name”。)

新しいフィールド

Firestore不仅可以处理string类型、number类型等数据,还可以处理object类型。因此,您可以向字段添加子字段。

サブフィールド

添加子集合

接下来,我们尝试添加一个子集合。

在选择要追加的首个集合的情况下,点击工具栏的添加子集合按钮。

Add Child Collection

然后,会创建一个名为「新收藏」的新子收藏。

新しいサブコレクション

一旦到这里

如果你再使用一下,如果有什么注意到的地方,我会添加备注。

广告
将在 10 秒后关闭
bannerAds