开源数据发现平台:Amundsen 本地环境安装

在这里插入图片描述

Amundsen 是一个数据发现和元数据引擎,旨在提高数据分析师、数据科学家和工程师与数据交互时的生产力。目前,它通过索引数据资源(表格、仪表板、数据流等)并基于使用模式(例如,查询频率高的表格会优先于查询频率低的表格)提供页面排名式的搜索功能来实现这一目标。您可以将其视为数据版的 Google 搜索。该项目以挪威探险家罗尔德·阿蒙森 (Roald Amundsen) 的名字命名,他是第一个发现南极的人。

安装

Installation

使用 Docker 快速启动默认版本的 Amundsen

以下指令用于通过 Docker 部署 Amundsen。

  1. 确保为 Docker 预留至少 3 GB 磁盘空间,并安装 dockerdocker-compose

  2. 克隆本仓库及其子模块,执行:

    git clone --recursive https://github.com/amundsen-io/amundsen.git
    
  3. 进入克隆目录并执行以下命令:

    # 使用 Neo4j 后端
    $ docker-compose -f docker-amundsen.yml up# 使用 Atlas
    $ docker-compose -f docker-amundsen-atlas.yml up
    

    若是首次运行,建议提前查阅故障排查步骤,尤其是与 ElasticSearch 堆内存及 Docker 引擎内存分配相关的首项(可能导致 Docker 错误 137)。

  4. 将提供的示例数据导入 Neo4j:(如使用 Atlas 后端,请跳过此步)

  5. 在另一终端窗口中,切换至 databuilder 目录。

  6. examples/ 目录中的 sample_data_loader Python 脚本依赖 elasticsearch clientpyhocon 等库。请在虚拟环境中安装依赖并执行脚本,命令如下。如在 Windows 运行 python3 setup.py install 时出现 extas_require 相关错误,请见 Windows 故障排查。

     python3 -m venv venvsource venv/bin/activatepip3 install --upgrade pippip3 install -r requirements.txtpython3 setup.py installpython3 example/scripts/sample_data_loader.py
    
  7. http://localhost:5000 查看 UI,尝试搜索 test,应返回结果。
    图片

  8. 也可对表实体执行精确匹配搜索。例如:在表字段中搜索 test_table1,将返回匹配记录。
    图片

Atlas 注意: Atlas 启动需一定时间,因此执行 docker-compose up 后可能不会立即看到结果。当 Docker 日志输出 Amundsen Entity Definitions Created... 时,Atlas 即准备就绪。

验证部署

  1. 通过访问 http://localhost:7474/browser/ 验证示例数据是否已导入 Neo4j,在查询框中运行 MATCH (n:Table) RETURN n LIMIT 25,应能看到若干表。
    图片
  2. 通过访问以下地址验证数据是否已加载到元数据服务:
  3. http://localhost:5000/table_detail/gold/hive/test_schema/test_table1
  4. http://localhost:5000/table_detail/gold/dynamo/test_schema/test_table2

故障排查

  1. 若 Docker 容器为 ElasticSearch 分配的堆内存不足,es_amundsen 将在 docker-compose 期间失败。

  2. docker-compose 错误:es_amundsen | [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

  3. 增加堆内存,详细说明见此

    1. 编辑 /etc/sysctl.conf
    2. 添加条目 vm.max_map_count=262144,保存并退出。
    3. 重载设置 $ sysctl -p
    4. 重启 docker-compose
  4. docker-amundsen-local.ymlorg.elasticsearch.bootstrap.StartupException: java.lang.IllegalStateException: Failed to create node environment 停止,则 es_amundsen 无法写入 .local/elasticsearch

  5. chown -R 1000:1000 .local/elasticsearch

  6. 重启 docker-compose

  7. 运行示例数据加载器时若出现与 ElasticSearch 或 Neo4j 相关的连接错误,如:

        Traceback (most recent call last):File "/home/ubuntu/amundsen/amundsendatabuilder/venv/lib/python3.6/site-packages/neobolt/direct.py", line 831, in _connects.connect(resolved_address)ConnectionRefusedError: [Errno 111] Connection refused
    
  8. elastic search 容器因 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] 报错停止,请将以下代码添加至 docker-amundsen-local.ymlelasticsearch 定义中:

    ulimits:
    nofile:soft: 65535hard: 65535
    

    然后执行 docker ps 检查 5 个 Amundsen 相关容器是否全部运行?能否通过 http://localhost:7474/browser/ 连接 Neo4j UI 及 http://localhost:9200 访问原始 ES API?Docker 日志是否显示严重问题?

  9. 若首次访问网站 (http://localhost:5000/) 时 ES 容器因 Docker 错误 137 崩溃,这是因为 Docker 引擎默认仅分配 2 GB 内存。所有容器加载示例数据后,最低需要 3 GB。请前往 Docker -> Preferences -> Resources -> Advanced 增加 Memory,然后重启 Docker 引擎。
    图片

  10. Windows 故障排查

风险提示与免责声明
本文内容基于公开信息研究整理,不构成任何形式的投资建议。历史表现不应作为未来收益保证,市场存在不可预见的波动风险。投资者需结合自身财务状况及风险承受能力独立决策,并自行承担交易结果。作者及发布方不对任何依据本文操作导致的损失承担法律责任。市场有风险,投资须谨慎。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/95927.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/95927.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu18.04部署cephfs

比起君子讷于言而敏于行,我更喜欢君子善于言且敏于行。 目录 一. 准备工作(所有节点) 1. /etc/hosts 2. 安装python2 3. 配置普户免密sudo 4. 准备好四块盘,一块hddsdd为一组,一台设备上有一组 5. 添加源 二. 安…

VMD+皮尔逊+降噪+重构(送报告+PPT)Matlab程序

1.程序介绍:以含白噪声信号为例:1.对信号进行VMD分解2.通过皮尔逊进行相关性计算3.通过设定阈值将噪声分量和非噪声分量分别提取出4.对非噪声信号进行重构达到降噪效果包含评价指标:% SNR:信噪比% MSE:均方误差% NCC:波…

UE5多人MOBA+GAS 45、制作冲刺技能

文章目录添加技能需要的东西添加本地播放GC添加冲刺tag添加一个新的TA用于检测敌方单位添加冲刺GA到角色中监听加速移动速度的回调创建蒙太奇添加GE添加到数据表中添加到角色中纠错添加技能需要的东西 添加本地播放GC 在UCAbilitySystemStatics中添加 /*** 在本地触发指定的游…

分库分表和sql的进阶用法总结

说下你对分库分表的理解分库分表是⼀种常⽤的数据库⽔平扩展(Scale Out)技术,⽤于解决单⼀数据库性能瓶颈和存储容量限制的问题。在分库分表中,数据库会根据某种规则将数据分散存储在多个数据库实例和表中,从⽽提⾼数据…

紫金桥RealSCADA:国产工业大脑,智造安全基石

在工业4.0时代,数字化转型已成为企业提升竞争力的核心路径。作为工业信息化的基石,监控组态软件在智能制造、物联网、大数据等领域发挥着关键作用。紫金桥软件积极响应国家“两化融合”战略,依托多年技术积淀与行业经验,重磅推出跨…

朗空量子与 Anolis OS 完成适配,龙蜥获得抗量子安全能力

近日,苏州朗空后量子科技有限公司(以下简称“朗空量子”)签署了 CLA(Contributor License Agreement,贡献者许可协议),加入龙蜥社区(OpenAnolis)。 朗空量子是一家后量子…

C#WPF实战出真汁08--【消费开单】--餐桌面板展示

1、功能介绍在这节里,需要实现餐桌类型展示,类型点击切换事件,餐桌面板展示功能,细节很多,流程是UI设计布局-》后台业务逻辑-》视图模型绑定-》运行测试2、UI设计布局TabControl,StackPanel,Gri…

2025年机械制造、机器人与计算机工程国际会议(MMRCE 2025)

🤖🏭💻 探索未来:机械制造、机器人与计算机工程的交汇点——2025年机械制造、机器人与计算机工程国际会议🌟MMRCE 2025将汇聚全球顶尖专家、学者及行业领袖,聚焦机械制造、机器人和计算机工程领域的前沿议题…

Vue Router 嵌套路由与布局系统详解:从新手到精通

在Vue单页应用开发中&#xff0c;理解Vue Router的嵌套路由机制是构建现代管理后台的关键。本文将通过实际案例&#xff0c;深入浅出地解释Vue Router如何实现布局与内容的分离&#xff0c;以及<router-view>的嵌套渲染原理。什么是嵌套路由&#xff1f;嵌套路由是Vue Ro…

Grafana 与 InfluxDB 可视化深度集成(二)

四、案例实操&#xff1a;以服务器性能监控为例 4.1 模拟数据生成 为了更直观地展示 Grafana 与 InfluxDB 的集成效果&#xff0c;我们通过 Python 脚本模拟生成服务器性能相关的时间序列数据。以下是一个简单的 Python 脚本示例&#xff0c;用于生成 CPU 使用率和内存使用量…

.net印刷线路板进销存PCB材料ERP财务软件库存贸易生产企业管理系统

# 印刷线路板进销存PCB材料ERP财务软件库存贸易生产企业管理系统 # 开发背景 本软件原为给苏州某企业开发的pcb ERP管理软件&#xff0c;后来在2021年深圳某pcb 板材公司买了我们的软件然后在此基础上按他行业的需求多次修改后的软件&#xff0c;适合pcb板材行业使用。 # 功能…

基于飞算JavaAI的可视化数据分析集成系统项目实践:从需求到落地的全流程解析

引言&#xff1a;为什么需要“可视化AI”的数据分析系统&#xff1f; 在数字化转型浪潮中&#xff0c;企业/团队每天产生海量数据&#xff08;如用户行为日志、销售记录、设备传感器数据等&#xff09;&#xff0c;但传统数据分析存在三大痛点&#xff1a; 技术门槛高&#xff…

MqSQL中的《快照读》和《当前读》

目录 1、MySQL读取定义 1.1、锁的分类 1.2、快照读与当前读 1.3、使用场景 1.4、区别 2、实现机制 2.1、实现原理 2.2、隔离级别和快照联系 1、隔离级别 2、快照读 2.3、快照何时生成 3、SQL场景实现 3.1、快照读 3.2、当前读 4、锁的细节&#xff08;与当前读相…

【Docker项目实战】使用Docker部署Notepad轻量级记事本

【Docker项目实战】使用Docker部署Notepad轻量级记事本一、 Notepad介绍1.1 Notepad简介1.2 Notepad特点1.3 主要使用场景二、本次实践规划2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本四、下载Note…

开疆智能ModbusTCP转Ethernet网关连接FBOX串口服务器配置案例

本案例是串口服务器通过串口采集第三方设备数据转成ModbusTCP的服务器后欧姆龙PLC通过Ethernet连接到网关&#xff0c;读取采集到的数据。具体配置过程如下。配置过程&#xff1a;Fbox做从站FBox采集PLC数据&#xff0c;通过Modbus TCP Server/Modbus RTU Server协议配置地址映…

Vue中的数据渲染【4】

目录1.页面样式绑定&#xff1a;1.概述&#xff1a; 2.绑定方式&#xff1a;1.通过类名绑定&#xff1a;1.通过动态类名绑定&#xff1a;&#xff08;&#xff1a;class&#xff09;2.通过类名数组绑定&#xff1a;3.通过类名对象进行绑定&#xff1a;2.内联样式绑定&#xff1…

LeeCode 39.组合总和

给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 &#xff0c;并以列表形式返回。你可以按 任意顺序 返回这些组合。candidates 中的 同一个 数字可以 无限制重复被选取 。如果…

基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程

该教程详细阐述了在Windows Server 2022上基于Python3.10.6与jieba库实现并部署中文分词模型接口的完整流程&#xff0c;涵盖技术栈&#xff08;Python3.10.6、jieba、Flask、Waitress、Nginx、NSSM等&#xff09;与环境准备&#xff08;Python安装、虚拟环境配置、依赖包安装及…

java基础(九)sql基础及索引

一、NoSQL 和 SQL 数据库的区别1. 基本概念SQL 数据库&#xff08;关系型数据库&#xff09; 代表产品&#xff1a;SQL Server, Oracle, MySQL (开源), PostgreSQL (开源)。 存储方式&#xff1a;结构化数据&#xff0c;逻辑上以二维表&#xff08;行 & 列&#xff09;形式…

ffmpeg-调整视频分辨率

ffmpeg -i input.mp4 -vf scale1280:720 output_1280x720.mp4-i input.mp4: 指定输入视频文件。-vf scale1280:720: 使用 scale 视频滤镜&#xff0c;将视频宽度设置为 1280 像素&#xff0c;高度设置为 720 像素。output_1280x720.mp4: 指定输出视频文件。 16&#xff1a;9 常…