11.17【大数据】Hadoop【DEBUG】

news2024/12/24 9:10:20

列出hdfs文件系统所有的目录和文件

主节点上

子结点

是一样的

*为什么能登进 slave 02 的主机,但是 master 当中依然显示 slave 02 为 DeadNode?*

hadoop坏死节点的重启_hadoop3 子节点重启-CSDN博客

注意hadoop-daemon.sh 实际上位于 Hadoop 的 sbin 目录中,而不是 bin 目录中。因此,你需要将 sbin 目录也添加到 PATH 中

[hadoop@slave02 ~]$ echo 'export PATH=$PATH:/usr/local/hadoop/sbin' >> ~/.bashrc
[hadoop@slave02 ~]$ source ~/.bashrc

验证 hadoop-daemon.sh 路径 确认 hadoop-daemon.sh 脚本现在可以在 PATH 中找到:

[hadoop@slave02 ~]$ which hadoop-daemon.sh

bin/spark-submit --master spark://master:7077 --py-files /home/hadoop/Ex2_WordCount/WordCount.py

 Error: Missing application resource 表示你在提交 Spark 作业时没有指定主应用程序文件(即你要运行的 Python 脚本)。spark-submit 命令需要知道你要运行的具体脚本文件。

bin/spark-submit --master spark://master:7077 --py-files /home/hadoop/Ex2_WordCount/WordCount.py /home/hadoop/Ex2_WordCount/WordCount.py

一直卡在正在连接远程?

pro2

No route to host-CSDN博客

sudo firewall-cmd --zone=public --query-port=36605/tcp

Caused by: io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException: No route to host: /192.168.0.132:44149
Caused by: java.net.NoRouteToHostException: No route to host

  1. 异常信息

    java.io.IOException: Connection reset by peer

    • 这是一个常见的网络错误,表示远程主机强制关闭了连接。具体原因可能有多种:
      • 网络问题:网络不稳定或中断,导致连接被重置。
      • 防火墙或安全软件:防火墙或安全软件阻止了连接。
      • 远程主机崩溃:远程主机可能出现了故障或崩溃,导致连接被重置。
      • 超时:连接超时,导致连接被重置。
      • 资源限制:远程主机的资源(如文件描述符)达到上限,无法处理新的连接请求。

  1. 检查防火墙和安全软件

    • 确保防火墙或安全软件没有阻止必要的端口。
    • 暂时禁用防火墙或安全软件,看看问题是否解决:
       

      sh

      sudo systemctl stop firewalld

  1. 检查网络连接

    • 确保网络连接稳定,没有丢包或延迟。
    • 使用 ping 或 traceroute 命令检查网络连通性:
       

      sh

      ping 124.71.188.246 traceroute 124.71.188.246

  1. 优化 Spark 配置

    • 调整 Spark 的网络超时和重试机制,以提高连接的稳定性:

      spark.network.timeout 120s

    • spark.io.compression.codec lz4

  1. 调整资源限制

    • 检查远程主机的资源限制,特别是文件描述符数量:
       

      sh

      ulimit -n

    • 如果需要,可以增加文件描述符的限制:
       

      sh

      ulimit -n 10000

### 分析 `ping` 结果

你提供的 `ping` 命令输出显示:

```plaintext
[hadoop@master spark]$ ping 192.168.0.249
PING 192.168.0.249 (192.168.0.249) 56(84) bytes of data.
From 192.168.0.14 icmp_seq=1 Destination Host Unreachable
From 192.168.0.14 icmp_seq=2 Destination Host Unreachable
From 192.168.0.14 icmp_seq=3 Destination Host Unreachable
From 192.168.0.14 icmp_seq=4 Destination Host Unreachable
From 192.168.0.14 icmp_seq=5 Destination Host Unreachable
From 192.168.0.14 icmp_seq=6 Destination Host Unreachable
From 192.168.0.14 icmp_seq=7 Destination Host Unreachable
From 192.168.0.14 icmp_seq=8 Destination Host Unreachable
```

### 解释

- **Destination Host Unreachable**:这表示目标主机不可达。通常这意味着目标主机(192.168.0.249)没有响应,或者中间的路由器无法将数据包转发到目标主机。
- **From 192.168.0.14**:这表示 ICMP 回复来自中间的路由器(192.168.0.14),而不是目标主机。这表明问题可能出在目标主机本身,或者目标主机与路由器之间的连接有问题。

### 可能的原因及解决方法

1. **目标主机未启动或网络未连接**:
   - **检查目标主机**:确保目标主机(192.168.0.249)已经启动,并且网络连接正常。
   - **登录目标主机**:
     ```sh
     ssh hadoop@192.168.0.249
     ```

2. **目标主机的网络配置问题**:
   - **检查网络配置**:确保目标主机的网络配置正确,特别是 IP 地址和网关设置。
   - **查看网络接口状态**:
     ```sh
     ip addr show
     ```

3. **中间路由器问题**:
   - **检查中间路由器**:确保中间路由器(192.168.0.14)工作正常,没有配置错误。
   - **重启路由器**:
     ```sh
     sudo systemctl restart networking
     ```

4. **防火墙或安全组设置**:
   - **检查防火墙设置**:确保防火墙没有阻止 ICMP 请求。
   - **临时禁用防火墙**:
     ```sh
     sudo systemctl stop firewalld
     ```

### 示例

1. **检查目标主机状态**:
   ```sh
   ssh hadoop@192.168.0.249
   ```

2. **查看目标主机的网络配置**:
   ```sh
   ip addr show
   ```

3. **检查中间路由器状态**:
   ```sh
   ssh hadoop@192.168.0.14
   sudo systemctl status networking
   ```

4. **临时禁用防火墙**:
   ```sh
   sudo systemctl stop firewalld
   ```

### 结论

`Destination Host Unreachable` 错误通常表示目标主机不可达,可能是由于目标主机未启动、网络配置错误、中间路由器问题或防火墙设置不当。通过上述步骤,你可以逐步排查并解决这个问题。如果问题依然存在,建议进一步检查集群的网络配置和日志,以获取更多线索。
### 日志解释

你提供的日志信息如下:

```plaintext
24/11/17 16:07:28 WARN TaskSetManager: Lost task 19.0 in stage 3.1 (TID 103) (192.168.0.14 executor 1): FetchFailed(BlockManagerId(3, 192.168.0.249, 42553, None), shuffleId=0, mapIndex=1, mapId=9, reduceId=19, message=
org.apache.spark.shuffle.FetchFailedException
        at org.apache.spark.errors.SparkCoreErrors$.fetchFailedError(SparkCoreErrors.scala:437)
        at org.apache.spark.storage.ShuffleBlockFetcherIterator.throwFetchFailedException(ShuffleBlockFetcherIterator.scala:1239)
        at org.apache.spark.storage.ShuffleBlockFetcherIterator.next(ShuffleBlockFetcherIterator.scala:971)
        at org.apache.spark.storage.ShuffleBlockFetcherIterator.next(ShuffleBlockFetcherIterator.scala:86)
        at org.apache.spark.util.CompletionIterator.next(CompletionIterator.scala:29)
        at scala.collection.Iterator$$anon$11.nextCur(Iterator.scala:486)
        at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:492)
        at scala.collection.Iterator$$anon$10.hasNext(Iterator.scala:460)
        at org.apache.spark.util.CompletionIterator.hasNext(CompletionIterator.scala:31)
        at org.apache.spark.InterruptibleIterator.hasNext(InterruptibleIterator.scala:37)
        at scala.collection.Iterator$$anon$10.hasNext(Iterator.scala:460)
        at scala.collection.Iterator.foreach(Iterator.scala:943)
        at scala.collection.Iterator.foreach$(Iterator.scala:943)
        at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
        at org.apache.spark.api.python.PythonRDD$.writeIteratorToStream(PythonRDD.scala:322)
        at org.apache.spark.api.python.PythonRunner$$anon$2.writeIteratorToStream(PythonRunner.scala:751)
        at org.apache.spark.api.python.BasePythonRunner$WriterThread.$anonfun$run$1(PythonRunner.scala:451)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:1928)
        at org.apache.spark.api.python.BasePythonRunner$WriterThread.run(PythonRunner.scala:282)
Caused by: java.io.IOException: Connecting to /192.168.0.249:42553 failed in the last 4750 ms, fail this connection directly
        at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:210)
        at org.apache.spark.network.netty.NettyBlockTransferService$$anon$2.createAndStart(NettyBlockTransferService.scala:131)
        at org.apache.spark.network.shuffle.RetryingBlockTransferor.transferAllOutstanding(RetryingBlockTransferor.java:173)
        at org.apache.spark.network.shuffle.RetryingBlockTransferor.lambda$initiateRetry$0(RetryingBlockTransferor.java:206)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.lang.Thread.run(Thread.java:750)
```

### 解释

1. **警告信息**:
   ```plaintext
   24/11/17 16:07:28 WARN TaskSetManager: Lost task 19.0 in stage 3.1 (TID 103) (192.168.0.14 executor 1)
   ```
   - 这表示在阶段 3.1 中,任务 19.0(任务 ID 103)在执行器 1 上丢失。

2. **异常信息**:
   ```plaintext
   FetchFailed(BlockManagerId(3, 192.168.0.249, 42553, None), shuffleId=0, mapIndex=1, mapId=9, reduceId=19, message=
   org.apache.spark.shuffle.FetchFailedException
   Caused by: java.io.IOException: Connecting to /192.168.0.249:42553 failed in the last 4750 ms, fail this connection directly
   ```
   - `FetchFailedException` 表示在从 BlockManagerId 为 `(3, 192.168.0.249, 42553, None)` 的节点获取 shuffle 数据时失败。
   - 具体的 shuffle ID 为 0,mapIndex 为 1,mapId 为 9,reduceId 为 19。
   - `java.io.IOException` 表示在连接到 `192.168.0.249:42553` 时失败,连接尝试在 4750 毫秒内未成功。

### 常见原因及解决方法

1. **网络问题**:
   - **检查网络连接**:确保所有节点之间的网络连接稳定,没有丢包或延迟。
   - **使用 `ping` 和 `traceroute` 命令**:
     ```sh
     ping 192.168.0.249
     traceroute 192.168.0.249
     ```

2. **防火墙或安全软件**:
   - **检查防火墙设置**:确保防火墙或安全软件没有阻止必要的端口。
   - **暂时禁用防火墙**:
     ```sh
     sudo systemctl stop firewalld
     ```

3. **资源不足**:
   - **检查资源使用情况**:确保执行器有足够的资源(如内存、CPU)来处理任务。
   - **调整 Spark 配置**:
     ```properties
     spark.executor.memory 4g
     spark.executor.cores 2
     spark.network.timeout 120s
     spark.shuffle.io.maxRetries 10
     spark.shuffle.io.retryWait 10s
     ```

4. **BlockManager 故障**:
   - **检查 BlockManager 日志**:查看 BlockManager 的日志,寻找异常信息。
   - **重启 BlockManager**:如果 BlockManager 出现故障,可以尝试重启它。

5. **Shuffle 文件损坏**:
   - **删除 Shuffle 文件**:删除有问题的 Shuffle 文件,让 Spark 重新生成。
   - **调整 Shuffle 文件存储位置**:
     ```properties
     spark.local.dir /tmp/spark-local-dir
     ```

### 示例

假设你已经检查了网络连接和资源使用情况,接下来可以尝试以下步骤:

1. **检查网络连接**:
   ```sh
   ping 192.168.0.249
   traceroute 192.168.0.249
   ```

2. **调整 Spark 配置**:
   编辑 `conf/spark-defaults.conf` 文件,增加以下配置:
   ```properties
   spark.executor.memory 4g
   spark.executor.cores 2
   spark.network.timeout 120s
   spark.shuffle.io.maxRetries 10
   spark.shuffle.io.retryWait 10s
   ```

3. **重新提交 Spark 作业**:
   ```sh
   bin/spark-submit --master spark://master:7077 --py-files /home/hadoop/Ex2_WordCount/WordCount.py /home/hadoop/Ex2_WordCount/WordCount.py
   ```

### 结论

`FetchFailedException` 通常与网络问题、防火墙设置、资源不足、BlockManager 故障或 Shuffle 文件损坏有关。通过上述步骤,你可以逐步排查和解决这个问题。如果问题依然存在,建议进一步检查集群的配置和日志,以获取更多线索。

nmap -p 7077 master

为什么在WEBUI当中显示有worker而且Alive,但是在日志中一直显示报错?

为什么在 WEBUI 当中有 alive 的 worker,是私网 ip,但是在终端缺 ping 不通?

./sbin/start-all.sh -h master

./sbin/start-all.sh spark://master_ip:7077
 

./sbin/sto-all.sh -h master

Caused by: io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException: No route to host: /192.168.0.132:36645
Caused by: java.net.NoRouteToHostException: No route to host
        at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
        at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:716)
        at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:337)
        at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:776)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.lang.Thread.run(Thread.java:750)

根据您提供的代码和错误信息,问题仍然出在加载 `bert-base-chinese` 模型的 `BertTokenizer` 时失败。为了确保在分布式环境下能够成功加载模型,我们可以采取以下措施:

1. **确保所有节点上都安装了 `transformers` 和 `torch` 库**。
2. **预先下载模型文件并分发到所有节点**。
3. **使用 `--files` 参数将模型文件与 Spark 任务一起分发**。

### 1. 安装必要的库

确保所有节点上都安装了 `transformers` 和 `torch` 库:

```sh
pip install transformers torch
```

### 2. 预先下载模型文件

在一台机器上下载 `bert-base-chinese` 模型文件,并将其分发到所有节点。可以使用以下命令下载模型:

```sh
mkdir -p /path/to/models/bert-base-chinese
transformers-cli download bert-base-chinese --cache-dir /path/to/models/bert-base-chinese
```

### 3. 修改代码以加载本地模型文件

修改代码,使其从本地路径加载模型文件:

```python
from pyspark import SparkConf, SparkContext
from transformers import BertTokenizer, BertModel
import torch
import jieba
import re

DATAPATH = 'hdfs://master:9000/ex2/stop_words.txt'
SAVAPATH = '/home/hadoop/Ex2_WordCount/results/res.txt'
# 加载 BERT 模型和分词器
model_name = '/path/to/models/bert-base-chinese'
tokenizer = BertTokenizer.from_pretrained(model_name)
model = BertModel.from_pretrained(model_name)

# 打印模型结构
print(model)

# 打印模型参数
for name, param in model.named_parameters():
    print(f"Parameter Name: {name}, Shape: {param.shape}")

# 打印模型配置
print(model.config)

conf = SparkConf().setAppName("ex2").setMaster("spark://master:7077").set("spark.executor.memory","4g")
sc = SparkContext(conf=conf)

def getStopWords(stopWords_filePath):
    stopwords = sc.textFile(stopWords_filePath).collect()
    return stopwords

def bertTokenize(text):
    # 使用 BERT 分词器进行分词
    tokens = tokenizer.tokenize(text)
    return tokens

def jiebaCut(answers_filePath):
    # 读取 answers.txt
    answersRdd = sc.textFile(answers_filePath)  # answersRdd 每一个元素对应 answers.txt 每一行
    # 利用 SparkRDD reduce() 函数, 合并所有回答
    str = answersRdd.reduce(lambda a, b: a + b)
    # 使用 BERT 分词器进行分词
    words_list = bertTokenize(str)
    return words_list

def wordcount():
    # 读取停用词表
    stopwords = getStopWords(DATAPATH)
    # 使用 BERT 分词
    words_list = jiebaCut(SAVAPATH)

    # 词频统计
    wordsRdd = sc.parallelize(words_list)
    
    resRdd = wordsRdd.filter(lambda word: word not in stopwords) \
                     .filter(lambda word: len(word) > 1) \
                     .map(lambda word: (word, 1)) \
                     .reduceByKey(lambda a, b: a + b) \
                     .sortBy(lambda x: x[1], ascending=False)
    return resRdd

if __name__ == '__main__':
    # 进行词频统计并可视化
    resRdd = wordcount()
    print(resRdd.take(10))  # 查看前10个
```

### 4. 提交 Spark 任务

使用 `spark-submit` 提交任务,并确保将模型文件与任务一起分发:

```sh
spark-submit --master spark://master:7077 --files /path/to/models/bert-base-chinese/vocab.txt /home/hadoop/Ex2_WordCount/WordCountByBert.py
```

### 注意事项

1. **模型文件路径**:
   - 确保 `model_name` 路径正确指向本地模型文件的目录。
   - 如果模型文件较大,建议使用 `rsync` 或其他工具将模型文件分发到所有节点。

2. **资源管理**:
   - 确保 Spark 配置有足够的资源(内存和 CPU)来处理 BERT 模型的计算需求。

3. **性能优化**:
   - 在分布式环境中,频繁加载模型可能会导致性能下降。可以考虑将模型加载逻辑移到 `mapPartitions` 中,每个分区只加载一次模型。

通过以上步骤,您应该能够在 Hadoop + Spark 环境中成功使用 BERT 模型进行分词。希望这些信息对您有所帮助!

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

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

相关文章

MetaGPT 安装

1. 创建环境 conda create -n metagpt python3.10 && conda activate metagpt2. 可编辑方式安装 git clone --depth 1 https://github.com/geekan/MetaGPT.git cd MetaGPT pip install -e .3. 配置 metagpt --init-config运行命令,在C盘位置C:\Users\325…

图的最小生成树(Kruskal算法,Prim算法)

无向图中的最短路径问题?No,最短路径不是最小生成树! 什么是最小生成树? 在一个无向连通图中,有一个子图连接所有顶点,并且权重和最小,那么他就是最小生成树。如果权重和不是最小的只能叫做生…

【Flink-scala】DataStream编程模型之水位线

DataStream API编程模型 1.【Flink-Scala】DataStream编程模型之 数据源、数据转换、数据输出 2.【Flink-scala】DataStream编程模型之 窗口的划分-时间概念-窗口计算程序 3.【Flink-scala】DataStream编程模型之 窗口计算-触发器-驱逐器 文章目录 DataStream API编程模型前言…

PHP RabbitMQ连接超时问题

问题背景 Error: The connection timed out after 3 sec while awaiting incoming data 看到这个报错,我不以为意,认为是我设置的超时时间不够导致的,那就设置长一点 Error: The connection timed out after 300 sec while awaiting incom…

【LeetCode热题100】BFS解决FloodFill算法

这篇博客主要记录了使用BFS解决FloodFill算法的几道题目&#xff0c;包括图像渲染、岛屿数量、岛屿的最大面积、被包围的区域。 class Solution {using PII pair<int, int>; public:vector<vector<int>> floodFill(vector<vector<int>>& im…

L2G3000-LMDeploy 量化部署实践

文章目录 LMDeploy 量化部署实践闯关任务环境配置W4A16 量化 KV cacheKV cache 量化Function call LMDeploy 量化部署实践闯关任务 环境配置 conda create -n lmdeploy python3.10 -y conda activate lmdeploy conda install pytorch2.1.2 torchvision0.16.2 torchaudio2.1.…

大数据新视界 -- 大数据大厂之 Hive 临时表与视图:灵活数据处理的技巧(上)(29 / 30)

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

Ubuntu操作系统在Vmware中的安装、常用操作、最基础的知识、imx6ll基本开发环境配置

01-Ubuntu操作系统的安装 网盘搜索 “ubuntu18.04.zip”&#xff0c;下载下来之后用Vmware打开就行了。 我用的虚拟机是15.5.6&#xff0c;实测没有问题。 启动时用户名为book的密码为123456 提问&#xff1a;Ubuntu与Centos系统有何区别&#xff1f; 详情见 https://blog.cs…

windows2012服务器安装sqlserver2012出现NetFx3错误的解决方法。

出现以下错误: 启用 Windows 功能 NetFx3 时出错&#xff0c;错误代码: -2146498298。请尝试从 Windows 管理工具启用 Windows 功能 NetFx3&#xff0c;然后重新运行安装程序。有关如何启用 Windows 功能的详细信息&#xff0c;具体解决办法如下&#xff1a; 1、打开PowerShel…

FPGA实战篇(按键控制LDE实验)

1.按键简介 按键开关是一种电子开关&#xff0c;属于电子元器件类。我们的开发板上有两种按键开关&#xff1a;第一种是本实验所使用的轻触式按键开关&#xff0c;简称轻触开关。使用时以向开关的操作方向施加压力使内部电路闭合接通&#xff0c;当撤销压力时开关断开&#xff…

C++析构函数和构造函数

一、构造函数 1.构造函数的基本概念 1.对构造函数的理解&#xff1a; 构造函数是类的一种特殊成员函数&#xff0c;其主要功能是在创建对象时进行初始化操作。它的名字与类名相同&#xff0c;并且没有返回值类型&#xff08;不能是void&#xff09;。例如&#xff0c;对于一个…

【Axure高保真原型】数值条件分组

今天和大家分享数值条件分组的原型模板&#xff0c;效果包括&#xff1a; 点击添加分组按钮&#xff0c;可以显示添加弹窗&#xff0c;填写分组名称和数值区间后&#xff0c;可以新增该分组信息‘’ 修改分组区间&#xff0c;可以直接在输入框里修改已有的分组区间&#xff0c…

阳光电脑公司的维修服务微信小程序ssm+论文源码调试讲解

第2章 开发环境与技术 阳光电脑公司的维修服务微信小程序的编码实现需要搭建一定的环境和使用相应的技术&#xff0c;接下来的内容就是对阳光电脑公司的维修服务微信小程序用到的技术和工具进行介绍。 2.1 MYSQL数据库 本课题所开发的应用程序在数据操作方面是不可预知的&…

重生之我在异世界学编程之C语言:深入结构体篇(下)

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 本文目录 引言结构体的自引用实现链表一、链表的基…

使用Redis Stream偶发空指针问题

问题描述&#xff1a;使用redission客户端封装的stream消息队列&#xff0c;在进行消息轮询时&#xff0c;偶发出现空指针问题。 [2024-11-13 09:59:20] [] [] [redis-stream-consumer-thread-1 ] [lambda$streamMessageListenerContainer$1] [ERROR] [c.r.c.r.s.config.Redi…

35页PDF | 元数据与数据血缘落地实施(限免下载)

一、前言 这份报告详细介绍了元数据与数据血缘的概念、重要性以及在企业数据中台中的应用。报告阐述了数据中台的核心价值在于整合和管理体系内的数据&#xff0c;以提升数据资产化能力并支持业务决策。报告还涵盖了元数据的分类&#xff08;技术元数据和业务元数据&#xff0…

方案精读:50页智慧园区数字化平台总体规划与建设方案PPT

本文介绍了智慧园区数字化平台总体规划与建设方案&#xff0c;包括智慧园区工业云平台、智慧办公平台、智能工厂、智慧能源管理、智慧政务管理等方面的建设内容。方案旨在通过技术手段加强园区内部沟通和管理能力&#xff0c;实现个性化营销、柔性化制造、高效智能协同的供应链…

深入浅出:Go语言标准库探索

深入浅出&#xff1a;Go语言标准库探索 引言 Go语言自发布以来&#xff0c;以其简洁的语法、高效的性能和强大的并发支持赢得了开发者的青睐。除了这些特性外&#xff0c;Go还拥有一个功能丰富且设计精良的标准库&#xff0c;几乎涵盖了现代应用程序开发所需的所有基本功能。…

python selenium(4+)+chromedriver最新版 定位爬取嵌套shadow-root(open)中内容

废话不多说&#xff0c;直接开始 本文以无界作为本文测试案例&#xff0c;抓取shadow-root&#xff08;open&#xff09;下的内容 shadow Dom in selenium&#xff1a; 首先先讲一下shadow Dom in selenium 版本的区别&#xff0c;链接指向这里 在Selenium 4版本 以及 chrom…

1207论文速读

1、SCN_GNN: A GNN-based fraud detection algorithm combining strong node and graph topology information 全文总结&#xff1a;本文介绍了一种基于图神经网络的欺诈检测算法——SCN_GNN。在欺诈检测中&#xff0c;由于欺诈者经常使用多种关系类型来掩盖其活动&#xff0c…