06/03/24

参加了公司的文化培训,发现自己记忆力不佳,难以记住讲师的内容。下午收到了培训人员赠送的小礼物Q仔,与同事分享了个人的护身符,并考虑送出。晚上研究了当地的工作机会,意外地与一位名叫昌平的朋友进行了深入交流,发现工作机会似乎不少。
今天培训公司文化。偶再次发现记性不是一般差,老师讲的东西我记好几遍也不行。
下午来培训的mm还给大家送Q仔,
今天给frjj看护身符,太阳推荐去当当看看,去看了个85的貌似纯金的很不错,可惜特快传递要出双倍价格,nnd太贵了。
好在下午培训的mm给我们送了个小Q仔,考虑了半天还是送我的护身符+Q仔吧,虽然这个Q仔貌似比较小。晚上查了一下这边找工作,又碰到昌平兄了,聊了好久。发现这边工作貌似也挺好找的。
下载方式:https://pan.quark.cn/s/a4b39357ea24 布线问题(分支限界算法)是计算机科学和电子工程领域中一个广为人知的议题,它主要探讨如何在印刷电路板上定位两个节点间最短的连接路径。 在这一议题中,电路板被构建为一个包含 n×m 个方格的矩阵,每个方格能够被界定为可通行或不可通行,其核心任务是定位从初始点到最终点的最短路径。 分支限界算法是处理布线问题的一种常用策略。 该算法与回溯法有相似之处,但存在差异,分支限界法仅需获取满足约束条件的一个最优路径,并按照广度优先或最小成本优先的原则来探索解空间树。 树 T 被构建为子集树或排列树,在探索过程中,每个节点仅被赋予一次成为扩展节点的机会,且会一次性生成其全部子节点。 针对布线问题的解决,队列式分支限界法可以被采用。 从起始位置 a 出发,将其设定为首个扩展节点,并将与该扩展节点相邻且可通行的方格加入至活跃节点队列中,将这些方格标记为 1,即从起始方格 a 到这些方格的距离为 1。 随后,从活跃节点队列中提取队首节点作为下一个扩展节点,并将与当前扩展节点相邻且未标记的方格标记为 2,随后将这些方格存入活跃节点队列。 这一过程将持续进行,直至算法探测到目标方格 b 或活跃节点队列为空。 在实现上述算法时,必须定义一个类 Position 来表征电路板上方格的位置,其成员 row 和 col 分别指示方格所在的行和列。 在方格位置上,布线能够沿右、下、左、上四个方向展开。 这四个方向的移动分别被记为 0、1、2、3。 下述表格中,offset[i].row 和 offset[i].col(i=0,1,2,3)分别提供了沿这四个方向前进 1 步相对于当前方格的相对位移。 在 Java 编程语言中,可以使用二维数组...
源码来自:https://pan.quark.cn/s/a4b39357ea24 在VC++开发过程中,对话框(CDialog)作为典型的用户界面组件,承担着与用户进行信息交互的重要角色。 在VS2008SP1的开发环境中,常常需要满足为对话框配置个性化背景图片的需求,以此来优化用户的操作体验。 本案例将系统性地阐述在CDialog框架下如何达成这一功能。 首先,需要在资源设计工具中构建一个新的对话框资源。 具体操作是在Visual Studio平台中,进入资源视图(Resource View)界面,定位到对话框(Dialog)分支,通过右键选择“插入对话框”(Insert Dialog)选项。 完成对话框内控件的布局设计后,对对话框资源进行保存。 随后,将着手进行背景图片的载入工作。 通常有两种主要的技术路径:1. **运用位图控件(CStatic)**:在对话框界面中嵌入一个CStatic控件,并将其属性设置为BST_OWNERDRAW,从而具备自主控制绘制过程的权限。 在对话框的类定义中,需要重写OnPaint()函数,负责调用图片资源并借助CDC对象将其渲染到对话框表面。 此外,必须合理处理WM_CTLCOLORSTATIC消息,确保背景图片的展示不会受到其他界面元素的干扰。 ```cppvoid CMyDialog::OnPaint(){ CPaintDC dc(this); // 生成设备上下文对象 CBitmap bitmap; bitmap.LoadBitmap(IDC_BITMAP_BACKGROUND); // 获取背景图片资源 CDC memDC; memDC.CreateCompatibleDC(&dc); CBitmap* pOldBitmap = m...
(/root/.conda/envs/untitled) [root@master untitled]# spark-submit /root/IdeaProjects/untitled/test.py25/06/21 03:39:23 INFO spark.SparkContext: Running Spark version 3.2.425/06/21 03:39:23 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable25/06/21 03:39:23 INFO resource.ResourceUtils: ==============================================================25/06/21 03:39:23 INFO resource.ResourceUtils: No custom resources configured for spark.driver.25/06/21 03:39:23 INFO resource.ResourceUtils: ==============================================================25/06/21 03:39:23 INFO spark.SparkContext: Submitted application: NBAPlayerStatsAnalysis25/06/21 03:39:23 INFO resource.ResourceProfile: Default ResourceProfile created, executor resources: Map(cores -> name: cores, amount: 1, script: , vendor: , memory -> name: memory, amount: 1024, script: , vendor: , offHeap -> name: offHeap, amount: 0, script: , vendor: ), task resources: Map(cpus -> name: cpus, amount: 1.0)25/06/21 03:39:23 INFO resource.ResourceProfile: Limiting resource is cpu25/06/21 03:39:23 INFO resource.ResourceProfileManager: Added ResourceProfile id: 025/06/21 03:39:23 INFO spark.SecurityManager: Changing view acls to: root25/06/21 03:39:23 INFO spark.SecurityManager: Changing modify acls to: root25/06/21 03:39:23 INFO spark.SecurityManager: Changing view acls groups to: 25/06/21 03:39:23 INFO spark.SecurityManager: Changing modify acls groups to: 25/06/21 03:39:23 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(root); groups with view permissions: Set(); users with modify permissions: Set(root); groups with modify permissions: Set()25/06/21 03:39:23 INFO util.Utils: Successfully started service 'sparkDriver' on port 38477.25/06/21 03:39:23 INFO spark.SparkEnv: Registering MapOutputTracker25/06/21 03:39:23 INFO spark.SparkEnv: Registering BlockManagerMaster25/06/21 03:39:23 INFO storage.BlockManagerMasterEndpoint: Using org.apache.spark.storage.DefaultTopologyMapper for getting topology information25/06/21 03:39:23 INFO storage.BlockManagerMasterEndpoint: BlockManagerMasterEndpoint up25/06/21 03:39:23 INFO spark.SparkEnv: Registering BlockManagerMasterHeartbeat25/06/21 03:39:23 INFO storage.DiskBlockManager: Created local directory at /tmp/blockmgr-87b7f430-0829-4b2f-a6db-66a1918672c425/06/21 03:39:23 INFO memory.MemoryStore: MemoryStore started with capacity 366.3 MiB25/06/21 03:39:23 INFO spark.SparkEnv: Registering OutputCommitCoordinator25/06/21 03:39:23 INFO util.log: Logging initialized @3782ms to org.sparkproject.jetty.util.log.Slf4jLog25/06/21 03:39:24 INFO server.Server: jetty-9.4.44.v20210927; built: 2021-09-27T23:02:44.612Z; git: 8da83308eeca865e495e53ef315a249d63ba9332; jvm 1.8.0_241-b0725/06/21 03:39:24 INFO server.Server: Started @3903ms25/06/21 03:39:24 INFO server.AbstractConnector: Started ServerConnector@2f4a9795{HTTP/1.1, (http/1.1)}{0.0.0.0:4040}25/06/21 03:39:24 INFO util.Utils: Successfully started service 'SparkUI' on port 4040.25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@78b4468f{/jobs,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@6a05bffa{/jobs/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@27327a28{/jobs/job,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@28681368{/jobs/job/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@1128b2de{/stages,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@5f721d99{/stages/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@69bede41{/stages/stage,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@5f9681b9{/stages/stage/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@1acbd51a{/stages/pool,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@198ff579{/stages/pool/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@2c276600{/storage,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@415fc67c{/storage/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@3e5f2770{/storage/rdd,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@480634c3{/storage/rdd/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@5c301060{/environment,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@79e3b995{/environment/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@209ce76a{/executors,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@15978f66{/executors/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@34bec70d{/executors/threadDump,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@94dd3ec{/executors/threadDump/json,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@4e1f7856{/static,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@5e864ef9{/,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@7cfc3ab1{/api,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@57a41479{/jobs/job/kill,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@2e673e9c{/stages/stage/kill,null,AVAILABLE,@Spark}25/06/21 03:39:24 INFO ui.SparkUI: Bound SparkUI to 0.0.0.0, and started at http://master:404025/06/21 03:39:24 INFO executor.Executor: Starting executor ID driver on host master25/06/21 03:39:24 INFO util.Utils: Successfully started service 'org.apache.spark.network.netty.NettyBlockTransferService' on port 39469.25/06/21 03:39:24 INFO netty.NettyBlockTransferService: Server created on master:3946925/06/21 03:39:24 INFO storage.BlockManager: Using org.apache.spark.storage.RandomBlockReplicationPolicy for block replication policy25/06/21 03:39:24 INFO storage.BlockManagerMaster: Registering BlockManager BlockManagerId(driver, master, 39469, None)25/06/21 03:39:24 INFO storage.BlockManagerMasterEndpoint: Registering block manager master:39469 with 366.3 MiB RAM, BlockManagerId(driver, master, 39469, None)25/06/21 03:39:24 INFO storage.BlockManagerMaster: Registered BlockManager BlockManagerId(driver, master, 39469, None)25/06/21 03:39:24 INFO storage.BlockManager: Initialized BlockManager: BlockManagerId(driver, master, 39469, None)25/06/21 03:39:24 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@72f89ab{/metrics/json,null,AVAILABLE,@Spark}25/06/21 03:39:25 INFO internal.SharedState: Setting hive.metastore.warehouse.dir ('null') to the value of spark.sql.warehouse.dir.25/06/21 03:39:25 INFO internal.SharedState: Warehouse path is 'file:/root/IdeaProjects/untitled/spark-warehouse'.25/06/21 03:39:25 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@6035fe3d{/SQL,null,AVAILABLE,@Spark}25/06/21 03:39:25 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@4e7501f{/SQL/json,null,AVAILABLE,@Spark}25/06/21 03:39:25 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@3725262b{/SQL/execution,null,AVAILABLE,@Spark}25/06/21 03:39:25 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@47ac637{/SQL/execution/json,null,AVAILABLE,@Spark}25/06/21 03:39:25 INFO handler.ContextHandler: Started o.s.j.s.ServletContextHandler@1c6e4ad8{/static/sql,null,AVAILABLE,@Spark}Traceback (most recent call last): File "/root/IdeaProjects/untitled/test.py", line 8, in <module> df = spark.read.option("header", True).option("inferSchema", True).csv("hdfs://master:9000/usr/local/hadoop/clean_data_final.csv") File "/opt/spark3.2/python/lib/pyspark.zip/pyspark/sql/readwriter.py", line 410, in csv File "/opt/spark3.2/python/lib/py4j-0.10.9.5-src.zip/py4j/java_gateway.py", line 1322, in __call__ File "/opt/spark3.2/python/lib/pyspark.zip/pyspark/sql/utils.py", line 117, in decopyspark.sql.utils.AnalysisException: Path does not exist: hdfs://master:9000/usr/local/hadoop/clean_data_final.csv25/06/21 03:39:26 INFO spark.SparkContext: Invoking stop() from shutdown hook25/06/21 03:39:26 INFO server.AbstractConnector: Stopped Spark@2f4a9795{HTTP/1.1, (http/1.1)}{0.0.0.0:4040}25/06/21 03:39:26 INFO ui.SparkUI: Stopped Spark web UI at http://master:404025/06/21 03:39:26 INFO spark.MapOutputTrackerMasterEndpoint: MapOutputTrackerMasterEndpoint stopped!25/06/21 03:39:26 INFO memory.MemoryStore: MemoryStore cleared25/06/21 03:39:26 INFO storage.BlockManager: BlockManager stopped25/06/21 03:39:26 INFO storage.BlockManagerMaster: BlockManagerMaster stopped25/06/21 03:39:26 INFO scheduler.OutputCommitCoordinator$OutputCommitCoordinatorEndpoint: OutputCommitCoordinator stopped!25/06/21 03:39:26 INFO spark.SparkContext: Successfully stopped SparkContext25/06/21 03:39:26 INFO util.ShutdownHookManager: Shutdown hook called25/06/21 03:39:26 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-3541346c-fa51-49e7-8bc4-702377c3536f25/06/21 03:39:26 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-3541346c-fa51-49e7-8bc4-702377c3536f/pyspark-b60f643a-25ae-49bd-a26e-159c23c5ebb425/06/21 03:39:26 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-bf55404c-8e84-4f31-bd07-d3f8b28a2704 怎么解决
06-22
从你的错误信息来看,问题的核心是 Spark 任务在尝试读取 HDFS 上的文件时,路径 `hdfs://master:9000/usr/local/hadoop/clean_data_final.csv` 不存在。以下是详细的分析和解决方案。 --- ### **问题分析** 1. **错误核心**: - 错误信息显示:`pyspark.sql.utils.AnalysisException: Path does not exist: hdfs://master:9000/usr/local/hadoop/clean_data_final.csv` - 这表明 Spark 在 HDFS 中找不到指定的文件路径。 2. **可能原因**: - 文件路径错误:可能是路径拼写错误或文件未上传到 HDFS。 - 文件未上传:目标文件可能未正确上传到 HDFS。 - 权限问题:HDFS 上的文件可能没有正确的权限供 Spark 访问。 --- ### **解决方案** #### **步骤 1:验证 HDFS 文件是否存在** 使用 HDFS 命令检查文件是否存在于指定路径: ```bash hdfs dfs -ls /usr/local/hadoop/ ``` - 如果文件存在,确认文件名是否为 `clean_data_final.csv`。 - 如果文件不存在,需要将文件上传到 HDFS。 #### **步骤 2:上传文件到 HDFS** 如果文件不存在,可以使用以下命令将本地文件上传到 HDFS: ```bash hdfs dfs -mkdir -p /usr/local/hadoop/ hdfs dfs -put /path/to/local/clean_data_final.csv /usr/local/hadoop/ ``` - `-mkdir -p`:确保目录 `/usr/local/hadoop/` 存在。 - `/path/to/local/clean_data_final.csv`:替换为本地文件的实际路径。 #### **步骤 3:检查文件路径** 确认代码中读取文件的路径是否正确。以下是示例代码: ```python from pyspark.sql import SparkSession # 创建 SparkSession spark = SparkSession.builder \ .appName("NBAPlayerStatsAnalysis") \ .getOrCreate() # 读取 HDFS 上的 CSV 文件 df = spark.read.option("header", True).option("inferSchema", True).csv("hdfs://master:9000/usr/local/hadoop/clean_data_final.csv") # 显示 DataFrame 的前几行 df.show() # 停止 SparkSession spark.stop() ``` - 确保路径 `"hdfs://master:9000/usr/local/hadoop/clean_data_final.csv"` 是正确的。 - 如果路径中有任何拼写错误,请修正。 #### **步骤 4:检查 HDFS 权限** 确保 Spark 用户有权限访问 HDFS 上的文件。可以通过以下命令检查文件权限: ```bash hdfs dfs -ls /usr/local/hadoop/ ``` - 如果权限不足,可以修改文件权限: ```bash hdfs dfs -chmod 777 /usr/local/hadoop/clean_data_final.csv ``` #### **步骤 5:测试代码** 重新运行 Spark 提交任务: ```bash spark-submit /root/IdeaProjects/untitled/test.py ``` --- ### **解释** 1. **HDFS 路径问题**: - Spark 使用 HDFS 路径读取文件时,路径必须正确且文件必须存在于 HDFS 中。 - 如果路径错误或文件不存在,Spark 将抛出 `Path does not exist` 错误。 2. **文件上传**: - 如果文件不在 HDFS 中,需要使用 `hdfs dfs -put` 命令将其上传到 HDFS。 3. **权限问题**: - HDFS 文件的权限可能会限制 Spark 访问文件。通过 `hdfs dfs -chmod` 修改权限可以解决问题。 4. **代码逻辑**: - 使用 `spark.read.csv` 方法读取 CSV 文件,并设置 `header` 和 `inferSchema` 参数以自动解析表头和数据类型。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值