皇岗海关查获未经检疫巴西冻牛肉26吨

深圳海关近日在皇岗口岸货运入境渠道查获26吨未经检疫的走私进口巴西冻牛肉,这是近3年来最大宗冻品走私案。案件已移交海关缉私部门,司机被刑拘。走私未经检疫冻牛肉进境存在疫情疫病传入风险,严重危害民众健康和市场秩序。
皇岗海关查获未经检疫巴西冻牛肉26吨

图为查验关员在集装箱内清查走私冻品。 潘宣伊 摄

中新网深圳1月30日电 (陈文 周滨 潘宣伊)据深圳海关1月30日消息,1月26日,该关隶属皇岗海关在皇岗口岸货运入境渠道,查获未经检疫的走私进口巴西冻牛肉26吨。这是近3年来该关在货运渠道查获的最大宗冻品走私入境案件。

目前案件已移交海关缉私部门立案处理,司机被刑事拘留。

1月26日,一辆粤港两地牌货柜车经皇岗口岸货运通道入境时,被海关列为查验对象。关员引导车辆进入海关查验区域进行全面检查。查验关员当即要求司机打开集装箱柜门,此时关员留意到车厢内壁贴着一层保温塑料泡沫,近柜门位置严严实实地摆放着一排空箱子以及装盛泡面的箱子。车厢内的种种异常情况引起现场关员的高度警觉,一股夹杂着肉腥味的冷气从余下的箱体散发出来。

查验关员对集装箱内剩余货物进行了清点核对。经查,发现该批货物并非申报进口的塑胶粒,而是一箱箱产自巴西的冻牛肉,共计26吨。该关立即按规定对该批未经检疫的冻牛肉进行处理并移交缉私部门。

现场相关负责人表示,走私未经检疫冻牛肉进境存在疫情疫病传入风险,不仅直接危害民众的身心健康和生命安全,还严重冲击内地正常的市场秩序。(完)

任务描述 基于数据清洗后的深圳通刷卡数据集(存放在/data/workspace/myshixun/Datas/SZcardDatas.csv),对地铁各线路的收益进行统计。 数据集说明 清洗之后的数据集字段没有改变,依旧是11个字段,字段说明如下: 字段名 字段类型 含义 card_no String 卡号 deal_date String 交易日期时间 deal_type String 交易类型 deal_money String 实际交易金额/分为单位 deal_value String 票价/分为单位 equ_no String 设备编码 company_name String 公司名称 station String 线路站点 car_no String 车牌号 conn_mark String 联程标记 close_date String 结算日期 数据中无列名 部分数据展示如下: FHEGHDGDC,2018-09-01 07:52:39,地铁入站,0,0,265025119,地铁七号线,福民,进AGM25-26,0,2018-09-01 00:00:00 FHFCCEIDF,2018-09-01 07:41:05,巴士,120,200,227000076,金华南巴士,332(蛇口),粤BU2975,0,2018-09-01 00:00:00 CBCGCDJDJ,2018-09-01 07:34:23,巴士,160,200,227000038,金华南巴士,331(松岗),粤BU2355,0,2018-09-01 00:00:00 CBIEHFGCB,2018-09-01 07:50:14,地铁出站,380,400,268016106,地铁一号线,世界之窗站,OGT-106,0,2018-09-01 00:00:00 DDABDEEDD,2018-09-01 07:01:08,巴士,160,200,227000175,金华南巴士,M433(福永),粤BW2968,0,2018-09-01 00:00:00 CBAEHADJA,2018-09-01 07:45:45,地铁入站,0,0,265026113,地铁七号线,皇岗口岸,进AGM18-19,0,2018-09-01 00:00:00 FFGAIJJBJ,2018-09-01 07:57:52,地铁出站,285,300,261016120,地铁三号线,水贝,AGM-120,0,2018-09-01 00:00:00 FIJIJFJFA,2018-09-01 07:56:51,地铁入站,0,0,261021116,地铁三号线,丹竹头,AGM-116,0,2018-09-01 00:00:00 FHIBEGJBD,2018-09-01 07:54:44,地铁入站,0,0,265011117,地铁七号线,西丽湖,进AGM24-25,0,2018-09-01 00:00:00 BIGFGGFAG,2018-09-01 07:49:56,地铁入站,0,0,265014107,地铁七号线,珠光,进AGM17-18,0,2018-09-01 00:00:00 FIJCEEDIB,2018-09-01 07:50:30,地铁出站,380,400,260027108,地铁二号线,香蜜,IGT-108,0,2018-09-01 00:00:00 MySQL 数据库 szcard 连接方式: url:jdbc:mysql://127.0.0.1:3306/szcard?useUnicode=true&characterEncoding=utf-8; 用户名:root; 密码:123123。 tb_subway_line_income 表结构: 字段名 数据存储类型 字段含义 subway_line varchar(255) 地铁线路 subway_line_income float(20,2) 地铁线路的收益(元) 编程要求 1.根据清洗之后的数据集进行地铁线路收益分析。 筛选出deal_type 字段为 地铁出站 的数据; 数据中 company_name 的值为地铁线路名称,deal_money 为实际交易金额,将交易金额以分为单位转换成以元为单位,统计该值,为地铁各线路的收益。 2.将查询结果存储到 MySQL 数据库 szcard 的 tb_subway_line_income(表已经提前创建)。 MySQL 查询到的数据格式示例如下: tb_subway_line_income 表中的数据: subway_line subway_line_income 地铁五号线 338649.5 地铁十一号线 126988.35 地铁二号线 146091.65 地铁四号线 117323.9 地铁一号线 306612.3 地铁七号线 93256.5 地铁三号线 275816.05 地铁九号线 78589.6 注意事项 1.任务完成后请点击"测评"按钮,验证统计结果是否正确,程序未通过的情况下,可以点击测试集查看具体问题; 2.此项目是Maven项目,pom.xml如下 <dependencies> <!--scala--> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> </dependency> <!--Spark SQL--> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.11</artifactId> <version>${spark.version}</version> </dependency> <!--解析IP地址--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.14</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version> </dependency> <!--MySQL 驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> </dependencies> 程序中已经导入了部分类,如果需要用到其他类请自行导入或自行编写pom.xml文件。 评测时间较长,请耐心等待一会 考核点说明 1.是否掌握对字符进行转换操作; 2.最后计算出的收益是否将原本以分为单位的交易金额转换成以元为单位。 2.是否将分析后的数据存入 szcard 数据库 tb_subway_line_income 表中。 测试说明 点击评测后,平台会对您提交代码进行测试验证,若测试结果与预期输出一致,则算通关。
05-28
<think>好的,我现在需要解决用户的问题,使用SparkSQL处理深圳通刷卡数据,进行地铁线路收益统计,并将结果写入MySQL数据库。首先,我需要理清楚用户的每个步骤要求,并确保每个环节的正确性。用户的需求分为几个步骤:读取数据、筛选出地铁出站记录、转换交易金额单位、按线路统计收益,最后写入MySQL。首先,我需要考虑如何用SparkSQL实现这些步骤。第一步是读取数据集。用户可能的数据格式是什么?常见的可能是CSV或者Parquet。假设用户的数据是CSV格式,那么使用SparkSQL的read.csv方法,或者通过SparkSession的sql方法直接读取。需要注意指定正确的路径和可能的选项,比如header、inferSchema等。这里可能需要用户确认数据路径和格式,但根据问题描述,用户已经知道数据集的位置,所以可以默认使用CSV。接下来是筛选deal_type为地铁出站的数据。需要确认数据中的deal_type字段对应的值是什么。例如,用户的数据中deal_type可能用1表示地铁出站,或者其他标识符。这里用户明确指出是地铁出站,所以应该使用正确的过滤条件,比如WHEREdeal_type='地铁出站'或者对应的数值。这一步需要确保字段名称和值的正确性,否则会导致数据筛选错误。然后是将交易金额从分转换为元。通常交易金额可能以分为单位存储,转换为元需要除以100。在SQL中可以使用amount/100.0或者使用CAST函数确保结果为浮点数。这里需要注意数据类型的转换,避免整数除法导致精度丢失。例如,如果amount是整数类型,除以100可能会得到整数结果,应该转换为浮点数。按地铁线路统计收益,这需要根据线路进行分组,然后对转换后的金额求和。需要确认数据中是否有线路字段,比如line_name或line_id。用户的问题中提到按地铁线路统计,所以假设数据中存在line字段,或者需要从其他字段(如站点信息)中提取线路。例如,可能站点编号中包含线路信息,比如“1号线”的站点以1开头,这时候需要使用substring函数截取线路信息。但用户的问题中没有提到具体的数据结构,可能需要假设数据中有直接的线路字段。如果不存在,可能需要用户提供如何从现有字段中提取线路的方法,但根据问题描述,用户可能已经处理好了线路信息,所以直接使用line字段进行分组。最后将结果写入MySQL。需要配置JDBC连接,包括URL、驱动程序、表名、用户名和密码。在Spark中,可以使用.write.format("jdbc")并设置相应的选项。需要注意表的模式是否已经存在,如果表不存在,可能需要设置createTableOptions,比如指定主键或引擎类型。此外,写入模式(如overwrite或append)也需要根据用户需求选择,用户可能希望每次运行覆盖旧数据,所以使用mode("overwrite")。现在,我需要将这些步骤转化为代码。首先读取数据,创建临时视图,然后执行SQL查询,处理筛选、转换和聚合,最后写入MySQL。同时,需要处理可能的异常,比如字段不存在、数据类型错误,或者MySQL连接问题。此外,确保Spark会话正确初始化,包括添加MySQL的JDBC驱动依赖,否则在运行时可能会报错。另外,用户提到使用Spark SQL,所以可能更倾向于使用SQL语句而不是DataFrame API。因此,代码中会使用spark.sql()来执行SQL查询,并将结果保存到MySQL。最后,生成相关问题,需要考虑用户可能的后续步骤,比如性能优化、数据清洗、分区处理等,或者如何监控任务、处理数据倾斜等问题。这些问题需要与当前任务相关,帮助用户深入理解SparkSQL的应用和优化。</think>以下为分步实现方案: ### 一、Spark SQL数据读取与预处理 1. 创建SparkSession时需添加MySQL驱动包: ```python from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("SubwayIncomeAnalysis") \ .config("spark.jars", "/path/to/mysql-connector-java-8.0.28.jar") \ .getOrCreate() ``` 2. 读取CSV数据集并创建临时视图: ```python # 假设数据字段包含card_no,deal_time,deal_type,amount,line df = spark.read.csv("szt_data.csv", header=True, inferSchema=True) df.createOrReplaceTempView("szt_records") ``` ### 二、数据转换与聚合 执行Spark SQL查询: ```python result_df = spark.sql(""" SELECT line AS subway_line, ROUND(SUM(amount/100.0), 2) AS total_income FROM szt_records WHERE deal_type = '地铁出站' -- 根据实际数据值调整 GROUP BY line ORDER BY total_income DESC """) ``` ### 三、MySQL数据写入配置 ```python mysql_properties = { "user": "your_username", "password": "your_password", "driver": "com.mysql.cj.jdbc.Driver" } result_df.write.mode("overwrite") \ .format("jdbc") \ .option("url", "jdbc:mysql://localhost:3306/metro_analysis") \ .option("dbtable", "tb_subway_line_income") \ .options(**mysql_properties) \ .save() ``` ### 四、关键注意事项 1. 金额转换使用`amount/100.0`而非整数除法`amount/100`,确保保留两位小数[^1] 2. 使用`ROUND`函数避免浮点数精度问题 3. MySQL表结构建议包含字段: ```sql CREATE TABLE tb_subway_line_income ( subway_line VARCHAR(20) PRIMARY KEY, total_income DECIMAL(10,2) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值