Skip to main content

用于将 RDBMS CSV 元数据提取到 Google Cloud Data Catalog 的库

项目描述

google-datacatalog-rdbmscsv-connector

用于将 CSV 元数据提取从 RDBMS 提取到 Google Cloud Data Catalog 的库。

Python 包 派皮 执照 问题

免责声明:这不是官方支持的 Google 产品。

目录


1.安装

使用 pip在vi​​rtualenv中安装这个库。virtualenv是一个创建隔离 Python 环境的工具。它解决的基本问题是依赖关系和版本之一,以及间接权限。

使用virtualenv,可以在不需要系统安装权限的情况下安装这个库,并且不会与已安装的系统依赖项发生冲突。确保您使用 Python 3.6+。

1.1。Mac/Linux

pip3 install virtualenv
virtualenv --python python3.6 <your-env>
source <your-env>/bin/activate
<your-env>/bin/pip install google-datacatalog-rdbmscsv-connector

1.2. 视窗

pip3 install virtualenv
virtualenv --python python3.6 <your-env>
<your-env>\Scripts\activate
<your-env>\Scripts\pip.exe install google-datacatalog-rdbmscsv-connector

1.3. 从源安装

1.3.1。获取代码

git clone https://github.com/GoogleCloudPlatform/datacatalog-connectors-rdbms/
cd datacatalog-connectors-rdbms/google-datacatalog-rdbmscsv-connector

1.3.2. 创建并激活virtualenv

pip3 install virtualenv
virtualenv --python python3.6 <your-env>
source <your-env>/bin/activate

1.3.3. 安装库

pip install .

2.环境设置

2.1。身份验证凭据

2.1.1。创建一个服务帐户并将其授予以下角色

  • 数据目录管理员

2.1.2. 下载 JSON 密钥并将其另存为

  • <YOUR-CREDENTIALS_FILES_FOLDER>/rdbmscsv2dc-credentials.json

请注意,在接下来的步骤中将需要此文件夹和文件。

2.2. 设置环境变量

根据您的环境替换以下值:

export GOOGLE_APPLICATION_CREDENTIALS=data_catalog_credentials_file

export RDBMS2DC_DATACATALOG_PROJECT_ID=google_cloud_project_id
export RDBMS2DC_DATACATALOG_LOCATION_ID=google_cloud_location_id
export RDBMS2DC_SERVER=rdbms_server
export RDBMS2DC_TYPE=oracle
export RDBMS2DC_RAW_METADATA_CSV=rdms_raw_csv

3.运行入口点

3.1。运行 Python 入口点

  • 虚拟环境
google-datacatalog-rdbmscsv-connector \
--datacatalog-project-id=$RDBMS2DC_DATACATALOG_PROJECT_ID \
--datacatalog-location-id=$RDBMS2DC_DATACATALOG_LOCATION_ID \
--rdbms-host=$RDBMS2DC_SERVER \
--rdbms-type=$RDBMS2DC_TYPE \
--raw-metadata-csv=$RDBMS2DC_RAW_METADATA_CSV

3.2. 运行 Docker 入口点

docker build -t rdbmscsv2datacatalog .
docker run --rm --tty -v YOUR-CREDENTIALS_FILES_FOLDER:/data rdbmscsv2datacatalog \
--datacatalog-project-id=$RDBMS2DC_DATACATALOG_PROJECT_ID  \
--datacatalog-location-id=$RDBMS2DC_DATACATALOG_LOCATION_ID \
--rdbms-host=$RDBMS2DC_SERVER \
--rdbms-type=$RDBMS2DC_TYPE \
--raw-metadata-csv=$RDBMS2DC_RAW_METADATA_CSV

4 工具内的脚本

4.1。运行清理

# List of projects split by comma. Can be a single value without comma
export RDBMS_DATACATALOG_PROJECT_IDS=my-project-1,my-project-2
export RDBMS2DC_TYPE=oracle
# Run the clean up
python tools/cleanup_datacatalog.py \
--datacatalog-project-ids=$RDBMS_DATACATALOG_PROJECT_IDS \
--rdbms-type=$RDBMS2DC_TYPE

5. 开发者环境

5.1。安装并运行 Yapf 格式化程序

pip install --upgrade yapf

# Auto update files
yapf --in-place --recursive src tests

# Show diff
yapf --diff --recursive src tests

# Set up pre-commit hook
# From the root of your git project.
curl -o pre-commit.sh https://raw.githubusercontent.com/google/yapf/master/plugins/pre-commit.sh
chmod a+x pre-commit.sh
mv pre-commit.sh .git/hooks/pre-commit

5.2. 安装并运行 Flake8 linter

pip install --upgrade flake8
flake8 src tests

5.3. 运行测试

python setup.py test

6. 故障排除

在连接器执行达到数据目录配额限制的情况下,将引发错误并记录以下详细信息,具体取决于执行的操作 READ/WRITE/SEARCH:

status = StatusCode.RESOURCE_EXHAUSTED
details = "Quota exceeded for quota metric 'Read requests' and limit 'Read requests per minute' of service 'datacatalog.googleapis.com' for consumer 'project_number:1111111111111'."
debug_error_string = 
"{"created":"@1587396969.506556000", "description":"Error received from peer ipv4:172.217.29.42:443","file":"src/core/lib/surface/call.cc","file_line":1056,"grpc_message":"Quota exceeded for quota metric 'Read requests' and limit 'Read requests per minute' of service 'datacatalog.googleapis.com' for consumer 'project_number:1111111111111'.","grpc_status":8}"

有关数据目录配额的更多信息,请访问:数据目录配额文档

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

google-datacatalog-rdbmscsv-connector-0.9.0.tar.gz (9.2 kB 查看哈希

已上传 source

内置分布

google_datacatalog_rdbmscsv_connector-0.9.0-py2.py3-none-any.whl (7.9 kB 查看哈希

已上传 py2 py3