大数据Flink(一百二十三):五分钟上手Flink MySQL连接器

news2024/11/13 20:36:54

文章目录

五分钟上手Flink MySQL连接器

一、创建数据库表

二、​​​​​​创建session集群

三、源表查询

四、​​​​​窗口计算

五、​​​​​​结果数据写回数据库


五分钟上手Flink MySQL连接器

MySQL Connector可以将本地或远程的MySQL数据库连接到Flink中,并方便地使用Flink Table API与之交互、捕获数据变更、并将处理结果写回数据库。

本场景将以阿里云实时计算Flink版为基础,使用Flink自带的MySQL Connector连接RDS云数据库实例,并以一个实时商品销售数据统计的例子尝试上手Connector的数据捕获、数据写入等功能。

一、创建数据库表

进入RDS mysql的管理平台DMS。(注意登录的账号需要有读写权限。)

首先创建数据库test。

CREATE  DATABASE IF NOT EXISTS test;

点击执行,创建成功后,打开此数据库的SQL Console。

建表语句如下

-- Source Table;
CREATE TABLE `source_table` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `good_id` int DEFAULT NULL,
  `amount` int DEFAULT NULL,
  `record_time` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
);

-- Dimension Table;
CREATE TABLE `dimension_table` (
  `good_id` int unsigned NOT NULL,
  `good_name` varchar(256) DEFAULT NULL,
  `good_price` int DEFAULT NULL,
  PRIMARY KEY (`good_id`)
);

-- Sink Table;
CREATE TABLE `sink_table` (
  `record_timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `good_name` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,
  `sell_amount` int DEFAULT NULL,
  PRIMARY KEY (`record_timestamp`)
);

选中后点击执行

执行成功后,返回如下结果

可以在左侧表列表看到对应的表

然后向数据库中插入多条数据,插入代码在下面:

INSERT INTO `dimension_table` (`good_id`, `good_name`, `good_price`)
VALUES
	(1, 'Cheetah', 53),
	(2, 'Puma', 46),
	(3, 'Jaguar', 22),
	(4, 'Panther', 18),
	(5, 'Tiger', 99),
	(6, 'Leopard', 84),
	(7, 'Snow Leopard', 81),
	(8, 'Lion', 17),
	(9, 'Mountain Lion', 19),
	(10, 'Mavericks', 77),
	(11, 'Yosemite', 16),
	(12, 'El Capitan', 16),
	(13, 'Sierra', 85),
	(14, 'High Sierra', 87),
	(15, 'Mojave', 51),
	(16, 'Catalina', 92),
	(17, 'Big Sur', 14),
	(18, 'Monterey', 99),
	(19, 'Ventura', 15),
	(20, 'Sonoma', 68);

INSERT INTO `source_table` (`id`, `good_id`, `amount`, `record_time`)
VALUES
	(1, 16, 19, '2023-06-09 11:06:34'),
	(2, 8, 20, '2023-06-09 11:06:35'),
	(3, 19, 24, '2023-06-09 11:06:36'),
	(4, 17, 23, '2023-06-09 11:06:37'),
	(5, 2, 25, '2023-06-09 11:06:40'),
	(6, 10, 28, '2023-06-09 11:06:44'),
	(7, 20, 26, '2023-06-09 11:06:48'),
	(8, 18, 19, '2023-06-09 11:06:49'),
	(9, 16, 21, '2023-06-09 11:06:53'),
	(10, 7, 19, '2023-06-09 11:06:55'),
	(11, 7, 20, '2023-06-09 11:06:59'),
	(12, 17, 21, '2023-06-09 11:07:03'),
	(13, 2, 19, '2023-06-09 11:07:05'),
	(14, 5, 22, '2023-06-09 11:07:08'),
	(15, 10, 21, '2023-06-09 11:07:12'),
	(16, 2, 29, '2023-06-09 11:07:16'),
	(17, 6, 27, '2023-06-09 11:07:19'),
	(18, 16, 23, '2023-06-09 11:07:23'),
	(19, 8, 20, '2023-06-09 11:07:24'),
	(20, 8, 31, '2023-06-09 11:07:26'),
	(21, 6, 30, '2023-06-09 11:07:29'),
	(22, 7, 21, '2023-06-09 11:07:32'),
	(23, 2, 22, '2023-06-09 11:07:33'),
	(24, 9, 23, '2023-06-09 11:07:37'),
	(25, 19, 29, '2023-06-09 11:07:41'),
	(26, 16, 31, '2023-06-09 11:07:45'),
	(27, 13, 19, '2023-06-09 11:07:48'),
	(28, 6, 20, '2023-06-09 11:07:50'),
	(29, 4, 20, '2023-06-09 11:07:52'),
	(30, 4, 25, '2023-06-09 11:07:54'),
	(31, 4, 20, '2023-06-09 11:07:55'),
	(32, 4, 21, '2023-06-09 11:07:58'),
	(33, 11, 24, '2023-06-09 11:07:59'),
	(34, 1, 24, '2023-06-09 11:08:03'),
	(35, 7, 31, '2023-06-09 11:08:06'),
	(36, 2, 27, '2023-06-09 11:08:10'),
	(37, 19, 26, '2023-06-09 11:08:13'),
	(38, 3, 23, '2023-06-09 11:08:15'),
	(39, 11, 20, '2023-06-09 11:08:19'),
	(40, 20, 21, '2023-06-09 11:08:23'),
	(41, 7, 22, '2023-06-09 11:08:25'),
	(42, 5, 21, '2023-06-09 11:08:29'),
	(43, 7, 22, '2023-06-09 11:08:30'),
	(44, 11, 28, '2023-06-09 11:08:31'),
	(45, 2, 19, '2023-06-09 11:08:32'),
	(46, 1, 26, '2023-06-09 11:08:36'),
	(47, 3, 31, '2023-06-09 11:08:39'),
	(48, 20, 20, '2023-06-09 11:08:41'),
	(49, 6, 24, '2023-06-09 11:08:43'),
	(50, 10, 28, '2023-06-09 11:08:44'),
	(51, 11, 21, '2023-06-09 11:08:48'),
	(52, 9, 20, '2023-06-09 11:08:52'),
	(53, 5, 28, '2023-06-09 11:08:53'),
	(54, 8, 28, '2023-06-09 11:08:54'),
	(55, 15, 26, '2023-06-09 11:08:58'),
	(56, 3, 26, '2023-06-09 11:09:01'),
	(57, 19, 20, '2023-06-09 11:09:02'),
	(58, 6, 22, '2023-06-09 11:09:03'),
	(59, 1, 22, '2023-06-09 11:09:05'),
	(60, 19, 25, '2023-06-09 11:09:08'),
	(61, 17, 28, '2023-06-09 11:09:11'),
	(62, 5, 25, '2023-06-09 11:09:12'),
	(63, 16, 30, '2023-06-09 11:09:16'),
	(64, 1, 23, '2023-06-09 11:09:17'),
	(65, 1, 22, '2023-06-09 11:09:21'),
	(66, 3, 19, '2023-06-09 11:09:22'),
	(67, 10, 19, '2023-06-09 11:09:24'),
	(68, 12, 20, '2023-06-09 11:09:26'),
	(69, 18, 20, '2023-06-09 11:09:29'),
	(70, 16, 21, '2023-06-09 11:09:32'),
	(71, 4, 27, '2023-06-09 11:09:33'),
	(72, 14, 31, '2023-06-09 11:09:37'),
	(73, 15, 30, '2023-06-09 11:09:40'),
	(74, 8, 24, '2023-06-09 11:09:43'),
	(75, 2, 24, '2023-06-09 11:09:44'),
	(76, 4, 31, '2023-06-09 11:09:45'),
	(77, 15, 25, '2023-06-09 11:09:49'),
	(78, 1, 28, '2023-06-09 11:09:53'),
	(79, 9, 29, '2023-06-09 11:09:56'),
	(80, 3, 30, '2023-06-09 11:09:57'),
	(81, 9, 20, '2023-06-09 11:09:58'),
	(82, 9, 23, '2023-06-09 11:10:01'),
	(83, 2, 30, '2023-06-09 11:10:03'),
	(84, 16, 26, '2023-06-09 11:10:04'),
	(85, 17, 21, '2023-06-09 11:10:05'),
	(86, 14, 25, '2023-06-09 11:10:08'),
	(87, 3, 22, '2023-06-09 11:10:10'),
	(88, 14, 24, '2023-06-09 11:10:11'),
	(89, 9, 21, '2023-06-09 11:10:12'),
	(90, 8, 19, '2023-06-09 11:10:16'),
	(91, 20, 28, '2023-06-09 11:10:17'),
	(92, 15, 30, '2023-06-09 11:10:19'),
	(93, 6, 21, '2023-06-09 11:10:21'),
	(94, 10, 26, '2023-06-09 11:10:22'),
	(95, 10, 30, '2023-06-09 11:10:25'),
	(96, 5, 25, '2023-06-09 11:10:29'),
	(97, 7, 19, '2023-06-09 11:10:33'),
	(98, 4, 19, '2023-06-09 11:10:36'),
	(99, 5, 28, '2023-06-09 11:10:38'),
	(100, 19, 19, '2023-06-09 11:10:41'),
	(101, 18, 27, '2023-06-09 11:10:44'),
	(102, 19, 23, '2023-06-09 11:10:46'),
	(103, 9, 28, '2023-06-09 11:10:47'),
	(104, 15, 19, '2023-06-09 11:10:49'),
	(105, 9, 19, '2023-06-09 11:10:51'),
	(106, 3, 23, '2023-06-09 11:10:52'),
	(107, 12, 28, '2023-06-09 11:10:54'),
	(108, 5, 25, '2023-06-09 11:10:56'),
	(109, 7, 30, '2023-06-09 11:11:00'),
	(110, 13, 28, '2023-06-09 11:11:01'),
	(111, 8, 29, '2023-06-09 11:11:03'),
	(112, 7, 26, '2023-06-09 11:11:04'),
	(113, 2, 23, '2023-06-09 11:11:07'),
	(114, 5, 25, '2023-06-09 11:11:08'),
	(115, 4, 27, '2023-06-09 11:11:10'),
	(116, 7, 25, '2023-06-09 11:11:12'),
	(117, 17, 26, '2023-06-09 11:11:14'),
	(118, 6, 31, '2023-06-09 11:11:17'),
	(119, 6, 27, '2023-06-09 11:11:20'),
	(120, 20, 30, '2023-06-09 11:11:23'),
	(121, 1, 24, '2023-06-09 11:11:26'),
	(122, 1, 27, '2023-06-09 11:11:30'),
	(123, 3, 28, '2023-06-09 11:11:31'),
	(124, 20, 30, '2023-06-09 11:11:32'),
	(125, 1, 31, '2023-06-09 11:11:33'),
	(126, 9, 21, '2023-06-09 11:11:37'),
	(127, 12, 24, '2023-06-09 11:11:39'),
	(128, 17, 30, '2023-06-09 11:11:40'),
	(129, 13, 26, '2023-06-09 11:11:43'),
	(130, 5, 23, '2023-06-09 11:11:44'),
	(131, 1, 28, '2023-06-09 11:11:45'),
	(132, 16, 22, '2023-06-09 11:11:46'),
	(133, 8, 21, '2023-06-09 11:11:47'),
	(134, 15, 20, '2023-06-09 11:11:50'),
	(135, 8, 28, '2023-06-09 11:11:53'),
	(136, 16, 25, '2023-06-09 11:11:57'),
	(137, 14, 31, '2023-06-09 11:11:58'),
	(138, 11, 25, '2023-06-09 11:12:00'),
	(139, 6, 31, '2023-06-09 11:12:03'),
	(140, 1, 27, '2023-06-09 11:12:07'),
	(141, 11, 21, '2023-06-09 11:12:09'),
	(142, 8, 24, '2023-06-09 11:12:12'),
	(143, 11, 24, '2023-06-09 11:12:14'),
	(144, 9, 24, '2023-06-09 11:12:18'),
	(145, 16, 23, '2023-06-09 11:12:21'),
	(146, 4, 21, '2023-06-09 11:12:25'),
	(147, 19, 25, '2023-06-09 11:12:29'),
	(148, 5, 22, '2023-06-09 11:12:32'),
	(149, 14, 28, '2023-06-09 11:12:34'),
	(150, 8, 25, '2023-06-09 11:12:35'),
	(151, 10, 30, '2023-06-09 11:12:39'),
	(152, 4, 24, '2023-06-09 11:12:41'),
	(153, 12, 29, '2023-06-09 11:12:43'),
	(154, 9, 20, '2023-06-09 11:12:47'),
	(155, 13, 19, '2023-06-09 11:12:48'),
	(156, 11, 20, '2023-06-09 11:12:50'),
	(157, 5, 22, '2023-06-09 11:12:54'),
	(158, 16, 28, '2023-06-09 11:12:57'),
	(159, 2, 21, '2023-06-09 11:13:01'),
	(160, 11, 19, '2023-06-09 11:13:03'),
	(161, 15, 19, '2023-06-09 11:13:04'),
	(162, 4, 24, '2023-06-09 11:13:06'),
	(163, 11, 27, '2023-06-09 11:13:08'),
	(164, 12, 20, '2023-06-09 11:13:09'),
	(165, 6, 29, '2023-06-09 11:13:11'),
	(166, 11, 21, '2023-06-09 11:13:15'),
	(167, 10, 28, '2023-06-09 11:13:17'),
	(168, 15, 21, '2023-06-09 11:13:18'),
	(169, 1, 20, '2023-06-09 11:13:22'),
	(170, 15, 24, '2023-06-09 11:13:24'),
	(171, 1, 26, '2023-06-09 11:13:28'),
	(172, 5, 23, '2023-06-09 11:13:31'),
	(173, 4, 23, '2023-06-09 11:13:33'),
	(174, 13, 30, '2023-06-09 11:13:37'),
	(175, 12, 28, '2023-06-09 11:13:41'),
	(176, 18, 27, '2023-06-09 11:13:42'),
	(177, 10, 29, '2023-06-09 11:13:45'),
	(178, 9, 21, '2023-06-09 11:13:47'),
	(179, 19, 20, '2023-06-09 11:13:50'),
	(180, 1, 21, '2023-06-09 11:13:54'),
	(181, 1, 31, '2023-06-09 11:13:58'),
	(182, 11, 30, '2023-06-09 11:13:59'),
	(183, 6, 21, '2023-06-09 11:14:02'),
	(184, 2, 24, '2023-06-09 11:14:04'),
	(185, 18, 29, '2023-06-09 11:14:05'),
	(186, 14, 21, '2023-06-09 11:14:08'),
	(187, 5, 21, '2023-06-09 11:14:10'),
	(188, 2, 30, '2023-06-09 11:14:13'),
	(189, 1, 27, '2023-06-09 11:14:14'),
	(190, 18, 27, '2023-06-09 11:14:17'),
	(191, 10, 26, '2023-06-09 11:14:21'),
	(192, 16, 29, '2023-06-09 11:14:23'),
	(193, 2, 19, '2023-06-09 11:14:24'),
	(194, 13, 30, '2023-06-09 11:14:28'),
	(195, 16, 20, '2023-06-09 11:14:29'),
	(196, 6, 27, '2023-06-09 11:14:31'),
	(197, 19, 27, '2023-06-09 11:14:33'),
	(198, 8, 29, '2023-06-09 11:14:37'),
	(199, 16, 28, '2023-06-09 11:14:39'),
	(200, 14, 25, '2023-06-09 11:14:40'),
	(201, 3, 29, '2023-06-09 11:14:42'),
	(202, 1, 23, '2023-06-09 11:14:44'),
	(203, 10, 19, '2023-06-09 11:14:47'),
	(204, 14, 27, '2023-06-09 11:14:48'),
	(205, 2, 26, '2023-06-09 11:14:51'),
	(206, 19, 24, '2023-06-09 11:14:55'),
	(207, 7, 19, '2023-06-09 11:14:57'),
	(208, 5, 24, '2023-06-09 11:14:59'),
	(209, 20, 24, '2023-06-09 11:15:00'),
	(210, 20, 25, '2023-06-09 11:15:02'),
	(211, 12, 27, '2023-06-09 11:15:03'),
	(212, 14, 31, '2023-06-09 11:15:06'),
	(213, 1, 22, '2023-06-09 11:15:07'),
	(214, 3, 22, '2023-06-09 11:15:09'),
	(215, 16, 27, '2023-06-09 11:15:10'),
	(216, 10, 19, '2023-06-09 11:15:14'),
	(217, 7, 30, '2023-06-09 11:15:15'),
	(218, 2, 22, '2023-06-09 11:15:17'),
	(219, 13, 20, '2023-06-09 11:15:18'),
	(220, 11, 21, '2023-06-09 11:15:22'),
	(221, 15, 26, '2023-06-09 11:15:25'),
	(222, 8, 25, '2023-06-09 11:15:30'),
	(223, 15, 29, '2023-06-09 11:15:32'),
	(224, 13, 24, '2023-06-09 11:15:36'),
	(225, 20, 21, '2023-06-09 11:15:40'),
	(226, 9, 27, '2023-06-09 11:15:42'),
	(227, 18, 25, '2023-06-09 11:15:44'),
	(228, 3, 19, '2023-06-09 11:15:45'),
	(229, 19, 24, '2023-06-09 11:15:46'),
	(230, 13, 26, '2023-06-09 11:15:50'),
	(231, 10, 30, '2023-06-09 11:15:54'),
	(232, 18, 19, '2023-06-09 11:15:57'),
	(233, 10, 27, '2023-06-09 11:15:59'),
	(234, 8, 31, '2023-06-09 11:16:02'),
	(235, 6, 25, '2023-06-09 11:16:06'),
	(236, 1, 19, '2023-06-09 11:16:08'),
	(237, 12, 31, '2023-06-09 11:16:11'),
	(238, 10, 25, '2023-06-09 11:16:14'),
	(239, 8, 24, '2023-06-09 11:16:17'),
	(240, 16, 28, '2023-06-09 11:16:19'),
	(241, 19, 23, '2023-06-09 11:16:20'),
	(242, 18, 30, '2023-06-09 11:16:23'),
	(243, 9, 25, '2023-06-09 11:16:27'),
	(244, 17, 27, '2023-06-09 11:16:30'),
	(245, 17, 24, '2023-06-09 11:16:34'),
	(246, 1, 29, '2023-06-09 11:16:35'),
	(247, 3, 23, '2023-06-09 11:16:39'),
	(248, 1, 25, '2023-06-09 11:16:41'),
	(249, 14, 25, '2023-06-09 11:16:45'),
	(250, 17, 29, '2023-06-09 11:16:49'),
	(251, 15, 26, '2023-06-09 11:16:50'),
	(252, 6, 30, '2023-06-09 11:16:52'),
	(253, 13, 25, '2023-06-09 11:16:53'),
	(254, 20, 27, '2023-06-09 11:16:56'),
	(255, 19, 30, '2023-06-09 11:17:00'),
	(256, 20, 29, '2023-06-09 11:17:03'),
	(257, 4, 26, '2023-06-09 11:17:04'),
	(258, 20, 23, '2023-06-09 11:17:05'),
	(259, 8, 25, '2023-06-09 11:17:08'),
	(260, 3, 24, '2023-06-09 11:17:10'),
	(261, 5, 29, '2023-06-09 11:17:13'),
	(262, 12, 31, '2023-06-09 11:17:15'),
	(263, 2, 21, '2023-06-09 11:17:16'),
	(264, 2, 31, '2023-06-09 11:17:18'),
	(265, 6, 30, '2023-06-09 11:17:20'),
	(266, 18, 20, '2023-06-09 11:17:23'),
	(267, 8, 20, '2023-06-09 11:17:24'),
	(268, 18, 30, '2023-06-09 11:17:25'),
	(269, 9, 28, '2023-06-09 11:17:27'),
	(270, 12, 28, '2023-06-09 11:17:30'),
	(271, 16, 29, '2023-06-09 11:17:31'),
	(272, 20, 30, '2023-06-09 11:17:35'),
	(273, 7, 21, '2023-06-09 11:17:39'),
	(274, 4, 30, '2023-06-09 11:17:42'),
	(275, 6, 26, '2023-06-09 11:17:44'),
	(276, 7, 19, '2023-06-09 11:17:45'),
	(277, 19, 31, '2023-06-09 11:17:46'),
	(278, 16, 30, '2023-06-09 11:17:47'),
	(279, 19, 30, '2023-06-09 11:17:49'),
	(280, 13, 21, '2023-06-09 11:17:52'),
	(281, 18, 22, '2023-06-09 11:17:54'),
	(282, 12, 26, '2023-06-09 11:17:57'),
	(283, 3, 22, '2023-06-09 11:18:01'),
	(284, 1, 22, '2023-06-09 11:18:02'),
	(285, 13, 23, '2023-06-09 11:18:04'),
	(286, 20, 19, '2023-06-09 11:18:09'),
	(287, 11, 27, '2023-06-09 11:18:11'),
	(288, 15, 24, '2023-06-09 11:18:13'),
	(289, 17, 28, '2023-06-09 11:18:16'),
	(290, 19, 23, '2023-06-09 11:18:19'),
	(291, 4, 28, '2023-06-09 11:18:20'),
	(292, 8, 25, '2023-06-09 11:18:22'),
	(293, 9, 29, '2023-06-09 11:18:23'),
	(294, 1, 23, '2023-06-09 11:18:27'),
	(295, 15, 27, '2023-06-09 11:18:29'),
	(296, 2, 24, '2023-06-09 11:18:32'),
	(297, 18, 30, '2023-06-09 11:18:34'),
	(298, 9, 27, '2023-06-09 11:18:35'),
	(299, 2, 19, '2023-06-09 11:18:36'),
	(300, 10, 20, '2023-06-09 11:18:39'),
	(301, 17, 28, '2023-06-09 11:18:43'),
	(302, 7, 30, '2023-06-09 11:18:45'),
	(303, 14, 30, '2023-06-09 11:18:48'),
	(304, 11, 30, '2023-06-09 11:18:52'),
	(305, 8, 29, '2023-06-09 11:18:56'),
	(306, 11, 23, '2023-06-09 11:19:00'),
	(307, 10, 23, '2023-06-09 11:19:04'),
	(308, 14, 26, '2023-06-09 11:19:07'),
	(309, 11, 25, '2023-06-09 11:19:09'),
	(310, 6, 22, '2023-06-09 11:19:11'),
	(311, 12, 27, '2023-06-09 11:19:15'),
	(312, 3, 22, '2023-06-09 11:19:17'),
	(313, 1, 28, '2023-06-09 11:19:18'),
	(314, 18, 24, '2023-06-09 11:19:20'),
	(315, 4, 20, '2023-06-09 11:19:24'),
	(316, 11, 29, '2023-06-09 11:19:25'),
	(317, 11, 30, '2023-06-09 11:19:27'),
	(318, 20, 21, '2023-06-09 11:19:31'),
	(319, 5, 24, '2023-06-09 11:19:33'),
	(320, 20, 20, '2023-06-09 11:19:37'),
	(321, 8, 28, '2023-06-09 11:19:41'),
	(322, 10, 31, '2023-06-09 11:19:43'),
	(323, 15, 19, '2023-06-09 11:19:47'),
	(324, 19, 29, '2023-06-09 11:19:48'),
	(325, 14, 19, '2023-06-09 11:19:51'),
	(326, 3, 23, '2023-06-09 11:19:52'),
	(327, 15, 26, '2023-06-09 11:19:57'),
	(328, 12, 23, '2023-06-09 11:19:58'),
	(329, 7, 28, '2023-06-09 11:20:01'),
	(330, 20, 29, '2023-06-09 11:20:05'),
	(331, 17, 26, '2023-06-09 11:20:09'),
	(332, 10, 19, '2023-06-09 11:20:13'),
	(333, 18, 31, '2023-06-09 11:20:16'),
	(334, 4, 23, '2023-06-09 11:20:18'),
	(335, 7, 21, '2023-06-09 11:20:19'),
	(336, 9, 22, '2023-06-09 11:20:23'),
	(337, 6, 27, '2023-06-09 11:20:26'),
	(338, 19, 28, '2023-06-09 11:20:30'),
	(339, 19, 21, '2023-06-09 11:20:31'),
	(340, 13, 25, '2023-06-09 11:20:33'),
	(341, 17, 26, '2023-06-09 11:20:37'),
	(342, 19, 27, '2023-06-09 11:20:41'),
	(343, 20, 20, '2023-06-09 11:20:42'),
	(344, 10, 24, '2023-06-09 11:20:43'),
	(345, 12, 23, '2023-06-09 11:20:46'),
	(346, 9, 19, '2023-06-09 11:20:47'),
	(347, 15, 21, '2023-06-09 11:20:50'),
	(348, 18, 19, '2023-06-09 11:20:54'),
	(349, 4, 26, '2023-06-09 11:20:56'),
	(350, 3, 24, '2023-06-09 11:20:57'),
	(351, 18, 24, '2023-06-09 11:20:58'),
	(352, 17, 25, '2023-06-09 11:21:02'),
	(353, 16, 31, '2023-06-09 11:21:06'),
	(354, 1, 24, '2023-06-09 11:21:07'),
	(355, 13, 30, '2023-06-09 11:21:11'),
	(356, 3, 30, '2023-06-09 11:21:13'),
	(357, 3, 20, '2023-06-09 11:21:16'),
	(358, 10, 22, '2023-06-09 11:21:19'),
	(359, 17, 27, '2023-06-09 11:21:20'),
	(360, 13, 22, '2023-06-09 11:21:22'),
	(361, 15, 22, '2023-06-09 11:21:25'),
	(362, 17, 30, '2023-06-09 11:21:26'),
	(363, 2, 28, '2023-06-09 11:21:28'),
	(364, 9, 24, '2023-06-09 11:21:30'),
	(365, 9, 23, '2023-06-09 11:21:32'),
	(366, 6, 27, '2023-06-09 11:21:34'),
	(367, 17, 26, '2023-06-09 11:21:38'),
	(368, 8, 30, '2023-06-09 11:21:42'),
	(369, 3, 29, '2023-06-09 11:21:45'),
	(370, 14, 25, '2023-06-09 11:21:47'),
	(371, 9, 25, '2023-06-09 11:21:51'),
	(372, 13, 30, '2023-06-09 11:21:54'),
	(373, 18, 19, '2023-06-09 11:21:58'),
	(374, 6, 21, '2023-06-09 11:22:00'),
	(375, 1, 24, '2023-06-09 11:22:01'),
	(376, 16, 23, '2023-06-09 11:22:02'),
	(377, 17, 23, '2023-06-09 11:22:03'),
	(378, 5, 23, '2023-06-09 11:22:06'),
	(379, 17, 27, '2023-06-09 11:22:09'),
	(380, 20, 30, '2023-06-09 11:22:13'),
	(381, 19, 28, '2023-06-09 11:22:14'),
	(382, 6, 24, '2023-06-09 11:22:18'),
	(383, 17, 28, '2023-06-09 11:22:21'),
	(384, 14, 26, '2023-06-09 11:22:24'),
	(385, 14, 22, '2023-06-09 11:22:26'),
	(386, 10, 27, '2023-06-09 11:22:30'),
	(387, 12, 28, '2023-06-09 11:22:31'),
	(388, 13, 31, '2023-06-09 11:22:35'),
	(389, 9, 25, '2023-06-09 11:22:39'),
	(390, 17, 27, '2023-06-09 11:22:40'),
	(391, 13, 27, '2023-06-09 11:22:41'),
	(392, 4, 26, '2023-06-09 11:22:42'),
	(393, 9, 26, '2023-06-09 11:22:43'),
	(394, 11, 27, '2023-06-09 11:22:46'),
	(395, 18, 22, '2023-06-09 11:22:48'),
	(396, 4, 27, '2023-06-09 11:22:52'),
	(397, 1, 26, '2023-06-09 11:22:56'),
	(398, 5, 27, '2023-06-09 11:22:58'),
	(399, 8, 20, '2023-06-09 11:23:02'),
	(400, 11, 25, '2023-06-09 11:23:04'),
	(401, 16, 22, '2023-06-09 11:23:05'),
	(402, 4, 22, '2023-06-09 11:23:07'),
	(403, 14, 23, '2023-06-09 11:23:11'),
	(404, 2, 27, '2023-06-09 11:23:12'),
	(405, 7, 24, '2023-06-09 11:23:13'),
	(406, 3, 30, '2023-06-09 11:23:16'),
	(407, 14, 25, '2023-06-09 11:23:17'),
	(408, 12, 28, '2023-06-09 11:23:21'),
	(409, 15, 25, '2023-06-09 11:23:24'),
	(410, 8, 22, '2023-06-09 11:23:26'),
	(411, 6, 30, '2023-06-09 11:23:29'),
	(412, 15, 22, '2023-06-09 11:23:31'),
	(413, 15, 19, '2023-06-09 11:23:32'),
	(414, 5, 29, '2023-06-09 11:23:36'),
	(415, 1, 31, '2023-06-09 11:23:38'),
	(416, 18, 28, '2023-06-09 11:23:39'),
	(417, 9, 19, '2023-06-09 11:23:43'),
	(418, 3, 22, '2023-06-09 11:23:45'),
	(419, 4, 19, '2023-06-09 11:23:47'),
	(420, 17, 29, '2023-06-09 11:23:48'),
	(421, 17, 22, '2023-06-09 11:23:50'),
	(422, 15, 30, '2023-06-09 11:23:53'),
	(423, 13, 21, '2023-06-09 11:23:55'),
	(424, 4, 29, '2023-06-09 11:23:56'),
	(425, 10, 27, '2023-06-09 11:23:58'),
	(426, 9, 24, '2023-06-09 11:24:01'),
	(427, 11, 24, '2023-06-09 11:24:04'),
	(428, 5, 28, '2023-06-09 11:24:08'),
	(429, 14, 29, '2023-06-09 11:24:13'),
	(430, 3, 20, '2023-06-09 11:24:14'),
	(431, 8, 22, '2023-06-09 11:24:17'),
	(432, 1, 30, '2023-06-09 11:24:18'),
	(433, 13, 19, '2023-06-09 11:24:21'),
	(434, 1, 23, '2023-06-09 11:24:25'),
	(435, 6, 30, '2023-06-09 11:24:29'),
	(436, 17, 26, '2023-06-09 11:24:33'),
	(437, 8, 23, '2023-06-09 11:24:34'),
	(438, 4, 29, '2023-06-09 11:24:36'),
	(439, 9, 31, '2023-06-09 11:24:37'),
	(440, 18, 23, '2023-06-09 11:24:40'),
	(441, 11, 19, '2023-06-09 11:24:43'),
	(442, 12, 25, '2023-06-09 11:24:45'),
	(443, 7, 26, '2023-06-09 11:24:47'),
	(444, 8, 31, '2023-06-09 11:24:51'),
	(445, 13, 23, '2023-06-09 11:24:55'),
	(446, 13, 22, '2023-06-09 11:24:56'),
	(447, 7, 27, '2023-06-09 11:25:00'),
	(448, 8, 21, '2023-06-09 11:25:01'),
	(449, 1, 25, '2023-06-09 11:25:04'),
	(450, 14, 19, '2023-06-09 11:25:06'),
	(451, 12, 29, '2023-06-09 11:25:08'),
	(452, 16, 26, '2023-06-09 11:25:10'),
	(453, 6, 30, '2023-06-09 11:25:14'),
	(454, 19, 25, '2023-06-09 11:25:15'),
	(455, 15, 24, '2023-06-09 11:25:17'),
	(456, 4, 19, '2023-06-09 11:25:21'),
	(457, 20, 31, '2023-06-09 11:25:25'),
	(458, 14, 31, '2023-06-09 11:25:29'),
	(459, 17, 24, '2023-06-09 11:25:32'),
	(460, 13, 26, '2023-06-09 11:25:35'),
	(461, 17, 28, '2023-06-09 11:25:36'),
	(462, 9, 23, '2023-06-09 11:25:40'),
	(463, 5, 29, '2023-06-09 11:25:42'),
	(464, 9, 28, '2023-06-09 11:25:43'),
	(465, 13, 25, '2023-06-09 11:25:44'),
	(466, 15, 19, '2023-06-09 11:25:47'),
	(467, 2, 19, '2023-06-09 11:25:49'),
	(468, 15, 29, '2023-06-09 11:25:53'),
	(469, 18, 21, '2023-06-09 11:25:55'),
	(470, 14, 21, '2023-06-09 11:25:56'),
	(471, 11, 28, '2023-06-09 11:25:57'),
	(472, 13, 19, '2023-06-09 11:25:58'),
	(473, 8, 23, '2023-06-09 11:25:59'),
	(474, 16, 24, '2023-06-09 11:26:01'),
	(475, 18, 31, '2023-06-09 11:26:05'),
	(476, 12, 20, '2023-06-09 11:26:08'),
	(477, 19, 30, '2023-06-09 11:26:12'),
	(478, 11, 28, '2023-06-09 11:26:15'),
	(479, 9, 30, '2023-06-09 11:26:18'),
	(480, 12, 29, '2023-06-09 11:26:22'),
	(481, 4, 29, '2023-06-09 11:26:25'),
	(482, 13, 31, '2023-06-09 11:26:27'),
	(483, 15, 23, '2023-06-09 11:26:31'),
	(484, 6, 27, '2023-06-09 11:26:35'),
	(485, 14, 31, '2023-06-09 11:26:36'),
	(486, 16, 30, '2023-06-09 11:26:40'),
	(487, 3, 22, '2023-06-09 11:26:43'),
	(488, 17, 19, '2023-06-09 11:26:46'),
	(489, 8, 19, '2023-06-09 11:26:48'),
	(490, 1, 25, '2023-06-09 11:26:49'),
	(491, 13, 31, '2023-06-09 11:26:52'),
	(492, 10, 21, '2023-06-09 11:26:54'),
	(493, 9, 22, '2023-06-09 11:26:58'),
	(494, 16, 20, '2023-06-09 11:27:00'),
	(495, 11, 19, '2023-06-09 11:27:04'),
	(496, 10, 27, '2023-06-09 11:27:05'),
	(497, 14, 22, '2023-06-09 11:27:07'),
	(498, 12, 30, '2023-06-09 11:27:09'),
	(499, 19, 20, '2023-06-09 11:27:13'),
	(500, 11, 23, '2023-06-09 11:27:14'),
	(501, 10, 30, '2023-06-09 11:27:17'),
	(502, 18, 21, '2023-06-09 11:27:18'),
	(503, 15, 24, '2023-06-09 11:27:19'),
	(504, 17, 23, '2023-06-09 11:27:23'),
	(505, 7, 27, '2023-06-09 11:27:25'),
	(506, 9, 24, '2023-06-09 11:27:29'),
	(507, 6, 24, '2023-06-09 11:27:30'),
	(508, 14, 20, '2023-06-09 11:27:34'),
	(509, 8, 23, '2023-06-09 11:27:35'),
	(510, 9, 27, '2023-06-09 11:27:36'),
	(511, 7, 22, '2023-06-09 11:27:39'),
	(512, 13, 21, '2023-06-09 11:27:40'),
	(513, 9, 30, '2023-06-09 11:27:41'),
	(514, 12, 25, '2023-06-09 11:27:42'),
	(515, 17, 22, '2023-06-09 11:27:45'),
	(516, 6, 20, '2023-06-09 11:27:47'),
	(517, 11, 20, '2023-06-09 11:27:50'),
	(518, 15, 25, '2023-06-09 11:27:53'),
	(519, 15, 27, '2023-06-09 11:27:55'),
	(520, 9, 27, '2023-06-09 11:27:57'),
	(521, 2, 21, '2023-06-09 11:28:01'),
	(522, 17, 24, '2023-06-09 11:28:03'),
	(523, 10, 29, '2023-06-09 11:28:06'),
	(524, 16, 24, '2023-06-09 11:28:09'),
	(525, 5, 28, '2023-06-09 11:28:11'),
	(526, 11, 22, '2023-06-09 11:28:13'),
	(527, 13, 19, '2023-06-09 11:28:16'),
	(528, 13, 30, '2023-06-09 11:28:18'),
	(529, 5, 21, '2023-06-09 11:28:22'),
	(530, 19, 25, '2023-06-09 11:28:24'),
	(531, 1, 27, '2023-06-09 11:28:28'),
	(532, 19, 21, '2023-06-09 11:28:32'),
	(533, 7, 25, '2023-06-09 11:28:35'),
	(534, 2, 25, '2023-06-09 11:28:37'),
	(535, 18, 24, '2023-06-09 11:28:41'),
	(536, 8, 27, '2023-06-09 11:28:42'),
	(537, 9, 30, '2023-06-09 11:28:44'),
	(538, 18, 31, '2023-06-09 11:28:47'),
	(539, 4, 25, '2023-06-09 11:28:49'),
	(540, 5, 27, '2023-06-09 11:28:50'),
	(541, 4, 20, '2023-06-09 11:28:53'),
	(542, 20, 27, '2023-06-09 11:28:55'),
	(543, 7, 20, '2023-06-09 11:28:58'),
	(544, 2, 26, '2023-06-09 11:28:59'),
	(545, 8, 21, '2023-06-09 11:29:01'),
	(546, 10, 25, '2023-06-09 11:29:05'),
	(547, 11, 31, '2023-06-09 11:29:10'),
	(548, 14, 22, '2023-06-09 11:29:11'),
	(549, 5, 31, '2023-06-09 11:29:15'),
	(550, 5, 21, '2023-06-09 11:29:19'),
	(551, 8, 29, '2023-06-09 11:29:22'),
	(552, 12, 30, '2023-06-09 11:29:26'),
	(553, 8, 22, '2023-06-09 11:29:27'),
	(554, 5, 28, '2023-06-09 11:29:29'),
	(555, 4, 23, '2023-06-09 11:29:32'),
	(556, 12, 21, '2023-06-09 11:29:35'),
	(557, 14, 23, '2023-06-09 11:29:36'),
	(558, 10, 26, '2023-06-09 11:29:38'),
	(559, 2, 31, '2023-06-09 11:29:42'),
	(560, 18, 22, '2023-06-09 11:29:44'),
	(561, 3, 22, '2023-06-09 11:29:45'),
	(562, 2, 31, '2023-06-09 11:29:47'),
	(563, 6, 21, '2023-06-09 11:29:51'),
	(564, 5, 30, '2023-06-09 11:29:55'),
	(565, 5, 24, '2023-06-09 11:29:56'),
	(566, 6, 24, '2023-06-09 11:30:00'),
	(567, 14, 25, '2023-06-09 11:30:03'),
	(568, 8, 20, '2023-06-09 11:30:05'),
	(569, 12, 20, '2023-06-09 11:30:08'),
	(570, 5, 20, '2023-06-09 11:30:10'),
	(571, 20, 24, '2023-06-09 11:30:14'),
	(572, 8, 22, '2023-06-09 11:30:16'),
	(573, 2, 24, '2023-06-09 11:30:20'),
	(574, 14, 20, '2023-06-09 11:30:22'),
	(575, 1, 30, '2023-06-09 11:30:25'),
	(576, 13, 31, '2023-06-09 11:30:26'),
	(577, 4, 21, '2023-06-09 11:30:30'),
	(578, 11, 27, '2023-06-09 11:30:31'),
	(579, 19, 20, '2023-06-09 11:30:32'),
	(580, 13, 28, '2023-06-09 11:30:36'),
	(581, 6, 22, '2023-06-09 11:30:38'),
	(582, 10, 23, '2023-06-09 11:30:42'),
	(583, 11, 27, '2023-06-09 11:30:43'),
	(584, 5, 25, '2023-06-09 11:30:46'),
	(585, 2, 20, '2023-06-09 11:30:47'),
	(586, 1, 21, '2023-06-09 11:30:49'),
	(587, 11, 27, '2023-06-09 11:30:51'),
	(588, 11, 23, '2023-06-09 11:30:56'),
	(589, 7, 20, '2023-06-09 11:30:59'),
	(590, 10, 24, '2023-06-09 11:31:03'),
	(591, 7, 20, '2023-06-09 11:31:05'),
	(592, 17, 21, '2023-06-09 11:31:06'),
	(593, 17, 20, '2023-06-09 11:31:08'),
	(594, 5, 21, '2023-06-09 11:31:09'),
	(595, 16, 29, '2023-06-09 11:31:10'),
	(596, 2, 20, '2023-06-09 11:31:14'),
	(597, 4, 25, '2023-06-09 11:31:15'),
	(598, 11, 19, '2023-06-09 11:31:16'),
	(599, 5, 30, '2023-06-09 11:31:20'),
	(600, 4, 26, '2023-06-09 11:31:23'),
	(601, 7, 23, '2023-06-09 11:31:24'),
	(602, 17, 24, '2023-06-09 11:31:25'),
	(603, 2, 25, '2023-06-09 11:31:26'),
	(604, 19, 21, '2023-06-09 11:31:30'),
	(605, 16, 19, '2023-06-09 11:31:32'),
	(606, 17, 26, '2023-06-09 11:31:33'),
	(607, 3, 25, '2023-06-09 11:31:37'),
	(608, 12, 20, '2023-06-09 11:31:39'),
	(609, 17, 29, '2023-06-09 11:31:41'),
	(610, 3, 30, '2023-06-09 11:31:44'),
	(611, 3, 19, '2023-06-09 11:31:47'),
	(612, 13, 29, '2023-06-09 11:31:51'),
	(613, 9, 29, '2023-06-09 11:31:52'),
	(614, 7, 22, '2023-06-09 11:31:56'),
	(615, 11, 28, '2023-06-09 11:31:57'),
	(616, 7, 22, '2023-06-09 11:32:00'),
	(617, 11, 28, '2023-06-09 11:32:04'),
	(618, 7, 29, '2023-06-09 11:32:05'),
	(619, 14, 29, '2023-06-09 11:32:09'),
	(620, 17, 19, '2023-06-09 11:32:10'),
	(621, 17, 22, '2023-06-09 11:32:11'),
	(622, 8, 19, '2023-06-09 11:32:12'),
	(623, 7, 28, '2023-06-09 11:32:14'),
	(624, 1, 26, '2023-06-09 11:32:17'),
	(625, 14, 30, '2023-06-09 11:32:20'),
	(626, 5, 28, '2023-06-09 11:32:22'),
	(627, 7, 31, '2023-06-09 11:32:24'),
	(628, 8, 23, '2023-06-09 11:32:28'),
	(629, 11, 20, '2023-06-09 11:32:29'),
	(630, 13, 19, '2023-06-09 11:32:31'),
	(631, 9, 19, '2023-06-09 11:32:32'),
	(632, 1, 19, '2023-06-09 11:32:35'),
	(633, 12, 31, '2023-06-09 11:32:38'),
	(634, 11, 30, '2023-06-09 11:32:40'),
	(635, 1, 22, '2023-06-09 11:32:42'),
	(636, 4, 20, '2023-06-09 11:32:45'),
	(637, 18, 23, '2023-06-09 11:32:49'),
	(638, 12, 19, '2023-06-09 11:32:51'),
	(639, 19, 25, '2023-06-09 11:32:52'),
	(640, 3, 30, '2023-06-09 11:32:53'),
	(641, 17, 27, '2023-06-09 11:32:54'),
	(642, 4, 31, '2023-06-09 11:32:55'),
	(643, 10, 19, '2023-06-09 11:32:57'),
	(644, 15, 25, '2023-06-09 11:32:58'),
	(645, 17, 31, '2023-06-09 11:33:01'),
	(646, 19, 27, '2023-06-09 11:33:05'),
	(647, 4, 28, '2023-06-09 11:33:09'),
	(648, 16, 23, '2023-06-09 11:33:12'),
	(649, 7, 26, '2023-06-09 11:33:14'),
	(650, 19, 24, '2023-06-09 11:33:17'),
	(651, 4, 27, '2023-06-09 11:33:20'),
	(652, 10, 26, '2023-06-09 11:33:23'),
	(653, 14, 21, '2023-06-09 11:33:26'),
	(654, 16, 31, '2023-06-09 11:33:29'),
	(655, 16, 23, '2023-06-09 11:33:33'),
	(656, 8, 27, '2023-06-09 11:33:34'),
	(657, 9, 20, '2023-06-09 11:33:36'),
	(658, 10, 20, '2023-06-09 11:33:40'),
	(659, 7, 20, '2023-06-09 11:33:41'),
	(660, 13, 31, '2023-06-09 11:33:44'),
	(661, 15, 29, '2023-06-09 11:33:48'),
	(662, 15, 27, '2023-06-09 11:33:51'),
	(663, 3, 24, '2023-06-09 11:33:52'),
	(664, 8, 27, '2023-06-09 11:33:55'),
	(665, 7, 29, '2023-06-09 11:33:58'),
	(666, 7, 26, '2023-06-09 11:33:59'),
	(667, 1, 31, '2023-06-09 11:34:00'),
	(668, 7, 28, '2023-06-09 11:34:03'),
	(669, 7, 20, '2023-06-09 11:34:07'),
	(670, 2, 28, '2023-06-09 11:34:09'),
	(671, 5, 31, '2023-06-09 11:34:10'),
	(672, 13, 26, '2023-06-09 11:34:13'),
	(673, 18, 25, '2023-06-09 11:34:16'),
	(674, 4, 29, '2023-06-09 11:34:20'),
	(675, 18, 27, '2023-06-09 11:34:22'),
	(676, 5, 27, '2023-06-09 11:34:24'),
	(677, 1, 29, '2023-06-09 11:34:25'),
	(678, 14, 19, '2023-06-09 11:34:27'),
	(679, 17, 22, '2023-06-09 11:34:29'),
	(680, 5, 24, '2023-06-09 11:34:32'),
	(681, 4, 23, '2023-06-09 11:34:35'),
	(682, 16, 25, '2023-06-09 11:34:37'),
	(683, 12, 28, '2023-06-09 11:34:39'),
	(684, 5, 22, '2023-06-09 11:34:43'),
	(685, 12, 27, '2023-06-09 11:34:47'),
	(686, 5, 25, '2023-06-09 11:34:51'),
	(687, 1, 22, '2023-06-09 11:34:52'),
	(688, 14, 31, '2023-06-09 11:34:54'),
	(689, 7, 20, '2023-06-09 11:34:56'),
	(690, 20, 30, '2023-06-09 11:35:00'),
	(691, 3, 28, '2023-06-09 11:35:03'),
	(692, 10, 23, '2023-06-09 11:35:04'),
	(693, 9, 31, '2023-06-09 11:35:07'),
	(694, 10, 23, '2023-06-09 11:35:08'),
	(695, 2, 30, '2023-06-09 11:35:12'),
	(696, 11, 24, '2023-06-09 11:35:13'),
	(697, 12, 29, '2023-06-09 11:35:15'),
	(698, 15, 28, '2023-06-09 11:35:17'),
	(699, 19, 28, '2023-06-09 11:35:18'),
	(700, 14, 25, '2023-06-09 11:35:20'),
	(701, 12, 31, '2023-06-09 11:35:21'),
	(702, 4, 30, '2023-06-09 11:35:22'),
	(703, 12, 22, '2023-06-09 11:35:24'),
	(704, 18, 27, '2023-06-09 11:35:26'),
	(705, 8, 21, '2023-06-09 11:35:29'),
	(706, 12, 27, '2023-06-09 11:35:31'),
	(707, 2, 26, '2023-06-09 11:35:33'),
	(708, 18, 26, '2023-06-09 11:35:35'),
	(709, 15, 30, '2023-06-09 11:35:38'),
	(710, 7, 26, '2023-06-09 11:35:40'),
	(711, 9, 27, '2023-06-09 11:35:43'),
	(712, 3, 29, '2023-06-09 11:35:45'),
	(713, 13, 29, '2023-06-09 11:35:47'),
	(714, 12, 20, '2023-06-09 11:35:49'),
	(715, 1, 19, '2023-06-09 11:35:50'),
	(716, 4, 22, '2023-06-09 11:35:51'),
	(717, 16, 19, '2023-06-09 11:35:54'),
	(718, 12, 28, '2023-06-09 11:35:57'),
	(719, 13, 23, '2023-06-09 11:35:58'),
	(720, 17, 23, '2023-06-09 11:35:59'),
	(721, 11, 24, '2023-06-09 11:36:03'),
	(722, 20, 22, '2023-06-09 11:36:05'),
	(723, 20, 23, '2023-06-09 11:36:08'),
	(724, 13, 28, '2023-06-09 11:36:09'),
	(725, 8, 22, '2023-06-09 11:36:10'),
	(726, 12, 20, '2023-06-09 11:36:13'),
	(727, 2, 29, '2023-06-09 11:36:15'),
	(728, 4, 22, '2023-06-09 11:36:18'),
	(729, 20, 25, '2023-06-09 11:36:23'),
	(730, 17, 20, '2023-06-09 11:36:24'),
	(731, 17, 26, '2023-06-09 11:36:27'),
	(732, 3, 27, '2023-06-09 11:36:28'),
	(733, 4, 21, '2023-06-09 11:36:32'),
	(734, 14, 26, '2023-06-09 11:36:33'),
	(735, 17, 21, '2023-06-09 11:36:37'),
	(736, 18, 23, '2023-06-09 11:36:41'),
	(737, 19, 28, '2023-06-09 11:36:45'),
	(738, 19, 26, '2023-06-09 11:36:47'),
	(739, 10, 30, '2023-06-09 11:36:49'),
	(740, 16, 25, '2023-06-09 11:36:53'),
	(741, 1, 22, '2023-06-09 11:36:57'),
	(742, 2, 29, '2023-06-09 11:37:00'),
	(743, 7, 27, '2023-06-09 11:37:03'),
	(744, 19, 27, '2023-06-09 11:37:05'),
	(745, 9, 26, '2023-06-09 11:37:08'),
	(746, 4, 25, '2023-06-09 11:37:11'),
	(747, 1, 27, '2023-06-09 11:37:13'),
	(748, 4, 26, '2023-06-09 11:37:14'),
	(749, 6, 22, '2023-06-09 11:37:17'),
	(750, 4, 22, '2023-06-09 11:37:19'),
	(751, 3, 27, '2023-06-09 11:37:23'),
	(752, 7, 26, '2023-06-09 11:37:27'),
	(753, 13, 23, '2023-06-09 11:37:30'),
	(754, 6, 20, '2023-06-09 11:37:32'),
	(755, 16, 23, '2023-06-09 11:37:33'),
	(756, 20, 29, '2023-06-09 11:37:35'),
	(757, 16, 23, '2023-06-09 11:37:37'),
	(758, 14, 29, '2023-06-09 11:37:38'),
	(759, 5, 19, '2023-06-09 11:37:40'),
	(760, 8, 27, '2023-06-09 11:37:41'),
	(761, 14, 22, '2023-06-09 11:37:44'),
	(762, 19, 26, '2023-06-09 11:37:46'),
	(763, 20, 21, '2023-06-09 11:37:48'),
	(764, 14, 25, '2023-06-09 11:37:51'),
	(765, 2, 22, '2023-06-09 11:37:54'),
	(766, 18, 28, '2023-06-09 11:37:56'),
	(767, 15, 28, '2023-06-09 11:37:57'),
	(768, 19, 26, '2023-06-09 11:37:58'),
	(769, 17, 28, '2023-06-09 11:38:00'),
	(770, 15, 24, '2023-06-09 11:38:03'),
	(771, 3, 19, '2023-06-09 11:38:07'),
	(772, 3, 28, '2023-06-09 11:38:10'),
	(773, 2, 26, '2023-06-09 11:38:13'),
	(774, 20, 31, '2023-06-09 11:38:14'),
	(775, 3, 22, '2023-06-09 11:38:16'),
	(776, 12, 19, '2023-06-09 11:38:19'),
	(777, 20, 30, '2023-06-09 11:38:23'),
	(778, 9, 22, '2023-06-09 11:38:25'),
	(779, 14, 31, '2023-06-09 11:38:27'),
	(780, 19, 23, '2023-06-09 11:38:31'),
	(781, 15, 31, '2023-06-09 11:38:35'),
	(782, 20, 22, '2023-06-09 11:38:37'),
	(783, 6, 23, '2023-06-09 11:38:40'),
	(784, 8, 28, '2023-06-09 11:38:44'),
	(785, 8, 28, '2023-06-09 11:38:46'),
	(786, 12, 22, '2023-06-09 11:38:49'),
	(787, 14, 19, '2023-06-09 11:38:52'),
	(788, 6, 20, '2023-06-09 11:38:56'),
	(789, 18, 26, '2023-06-09 11:38:58'),
	(790, 7, 31, '2023-06-09 11:39:01'),
	(791, 13, 30, '2023-06-09 11:39:02'),
	(792, 2, 31, '2023-06-09 11:39:06'),
	(793, 8, 22, '2023-06-09 11:39:07'),
	(794, 3, 28, '2023-06-09 11:39:08'),
	(795, 18, 24, '2023-06-09 11:39:09'),
	(796, 14, 30, '2023-06-09 11:39:11'),
	(797, 4, 24, '2023-06-09 11:39:14'),
	(798, 3, 28, '2023-06-09 11:39:17'),
	(799, 12, 29, '2023-06-09 11:39:21'),
	(800, 11, 19, '2023-06-09 11:39:22'),
	(801, 18, 27, '2023-06-09 11:39:26'),
	(802, 15, 20, '2023-06-09 11:39:27'),
	(803, 14, 30, '2023-06-09 11:39:28'),
	(804, 6, 31, '2023-06-09 11:39:31'),
	(805, 4, 27, '2023-06-09 11:39:34'),
	(806, 10, 22, '2023-06-09 11:39:35'),
	(807, 8, 25, '2023-06-09 11:39:38'),
	(808, 19, 19, '2023-06-09 11:39:39'),
	(809, 2, 26, '2023-06-09 11:39:43'),
	(810, 12, 19, '2023-06-09 11:39:46'),
	(811, 8, 26, '2023-06-09 11:39:50'),
	(812, 10, 31, '2023-06-09 11:39:53'),
	(813, 6, 19, '2023-06-09 11:39:56'),
	(814, 2, 28, '2023-06-09 11:39:57'),
	(815, 17, 24, '2023-06-09 11:39:59'),
	(816, 17, 25, '2023-06-09 11:40:02'),
	(817, 5, 31, '2023-06-09 11:40:05'),
	(818, 5, 19, '2023-06-09 11:40:09'),
	(819, 20, 25, '2023-06-09 11:40:13'),
	(820, 20, 19, '2023-06-09 11:40:15'),
	(821, 11, 27, '2023-06-09 11:40:19'),
	(822, 18, 23, '2023-06-09 11:40:20'),
	(823, 7, 29, '2023-06-09 11:40:22'),
	(824, 8, 24, '2023-06-09 11:40:23'),
	(825, 20, 31, '2023-06-09 11:40:26'),
	(826, 15, 31, '2023-06-09 11:40:30'),
	(827, 19, 26, '2023-06-09 11:40:31'),
	(828, 8, 31, '2023-06-09 11:40:35'),
	(829, 5, 25, '2023-06-09 11:40:37'),
	(830, 13, 21, '2023-06-09 11:40:40'),
	(831, 2, 29, '2023-06-09 11:40:42'),
	(832, 1, 20, '2023-06-09 11:40:43'),
	(833, 16, 26, '2023-06-09 11:40:46'),
	(834, 3, 31, '2023-06-09 11:40:48'),
	(835, 11, 27, '2023-06-09 11:40:51'),
	(836, 5, 19, '2023-06-09 11:40:52'),
	(837, 13, 26, '2023-06-09 11:40:54'),
	(838, 9, 19, '2023-06-09 11:40:56'),
	(839, 4, 20, '2023-06-09 11:41:00'),
	(840, 18, 21, '2023-06-09 11:41:02'),
	(841, 13, 31, '2023-06-09 11:41:03'),
	(842, 3, 22, '2023-06-09 11:41:04'),
	(843, 13, 20, '2023-06-09 11:41:08'),
	(844, 1, 30, '2023-06-09 11:41:09'),
	(845, 16, 20, '2023-06-09 11:41:11'),
	(846, 9, 25, '2023-06-09 11:41:14'),
	(847, 13, 27, '2023-06-09 11:41:17'),
	(848, 9, 30, '2023-06-09 11:41:21'),
	(849, 16, 25, '2023-06-09 11:41:24'),
	(850, 5, 25, '2023-06-09 11:41:26'),
	(851, 14, 31, '2023-06-09 11:41:27'),
	(852, 7, 26, '2023-06-09 11:41:31'),
	(853, 10, 25, '2023-06-09 11:41:33'),
	(854, 1, 19, '2023-06-09 11:41:36'),
	(855, 3, 28, '2023-06-09 11:41:39'),
	(856, 1, 21, '2023-06-09 11:41:42'),
	(857, 8, 29, '2023-06-09 11:41:43'),
	(858, 13, 28, '2023-06-09 11:41:45'),
	(859, 15, 31, '2023-06-09 11:41:48'),
	(860, 20, 20, '2023-06-09 11:41:50'),
	(861, 13, 20, '2023-06-09 11:41:51'),
	(862, 1, 25, '2023-06-09 11:41:54'),
	(863, 9, 19, '2023-06-09 11:41:56'),
	(864, 13, 26, '2023-06-09 11:41:59'),
	(865, 18, 26, '2023-06-09 11:42:03'),
	(866, 7, 31, '2023-06-09 11:42:06'),
	(867, 15, 19, '2023-06-09 11:42:10'),
	(868, 9, 20, '2023-06-09 11:42:12'),
	(869, 19, 25, '2023-06-09 11:42:14'),
	(870, 8, 19, '2023-06-09 11:42:15'),
	(871, 19, 22, '2023-06-09 11:42:18'),
	(872, 5, 25, '2023-06-09 11:42:20'),
	(873, 2, 24, '2023-06-09 11:42:21'),
	(874, 15, 20, '2023-06-09 11:42:23'),
	(875, 16, 24, '2023-06-09 11:42:26'),
	(876, 11, 26, '2023-06-09 11:42:30'),
	(877, 2, 22, '2023-06-09 11:42:32'),
	(878, 20, 29, '2023-06-09 11:42:33'),
	(879, 18, 29, '2023-06-09 11:42:37'),
	(880, 15, 20, '2023-06-09 11:42:38'),
	(881, 11, 20, '2023-06-09 11:42:42'),
	(882, 11, 21, '2023-06-09 11:42:45'),
	(883, 6, 28, '2023-06-09 11:42:47'),
	(884, 16, 28, '2023-06-09 11:42:49'),
	(885, 17, 22, '2023-06-09 11:42:52'),
	(886, 7, 28, '2023-06-09 11:42:53'),
	(887, 3, 24, '2023-06-09 11:42:55'),
	(888, 1, 27, '2023-06-09 11:42:58'),
	(889, 10, 23, '2023-06-09 11:42:59'),
	(890, 5, 21, '2023-06-09 11:43:00'),
	(891, 3, 28, '2023-06-09 11:43:01'),
	(892, 16, 20, '2023-06-09 11:43:02'),
	(893, 11, 25, '2023-06-09 11:43:03'),
	(894, 5, 22, '2023-06-09 11:43:04'),
	(895, 14, 26, '2023-06-09 11:43:05'),
	(896, 20, 27, '2023-06-09 11:43:08'),
	(897, 3, 22, '2023-06-09 11:43:09'),
	(898, 5, 29, '2023-06-09 11:43:11'),
	(899, 14, 31, '2023-06-09 11:43:15'),
	(900, 16, 21, '2023-06-09 11:43:19'),
	(901, 11, 31, '2023-06-09 11:43:20'),
	(902, 16, 23, '2023-06-09 11:43:23'),
	(903, 16, 30, '2023-06-09 11:43:25'),
	(904, 10, 28, '2023-06-09 11:43:28'),
	(905, 11, 21, '2023-06-09 11:43:31'),
	(906, 14, 26, '2023-06-09 11:43:35'),
	(907, 10, 27, '2023-06-09 11:43:38'),
	(908, 3, 23, '2023-06-09 11:43:42'),
	(909, 13, 19, '2023-06-09 11:43:46'),
	(910, 11, 31, '2023-06-09 11:43:47'),
	(911, 13, 31, '2023-06-09 11:43:48'),
	(912, 17, 23, '2023-06-09 11:43:50'),
	(913, 17, 24, '2023-06-09 11:43:51'),
	(914, 4, 31, '2023-06-09 11:43:53'),
	(915, 7, 27, '2023-06-09 11:43:57'),
	(916, 19, 26, '2023-06-09 11:43:58'),
	(917, 18, 23, '2023-06-09 11:44:01'),
	(918, 16, 25, '2023-06-09 11:44:04'),
	(919, 6, 25, '2023-06-09 11:44:05'),
	(920, 19, 31, '2023-06-09 11:44:08'),
	(921, 20, 25, '2023-06-09 11:44:09'),
	(922, 14, 25, '2023-06-09 11:44:12'),
	(923, 17, 29, '2023-06-09 11:44:16'),
	(924, 19, 20, '2023-06-09 11:44:20'),
	(925, 15, 24, '2023-06-09 11:44:21'),
	(926, 8, 22, '2023-06-09 11:44:25'),
	(927, 13, 29, '2023-06-09 11:44:27'),
	(928, 5, 29, '2023-06-09 11:44:29'),
	(929, 2, 19, '2023-06-09 11:44:34'),
	(930, 5, 26, '2023-06-09 11:44:38'),
	(931, 20, 25, '2023-06-09 11:44:40'),
	(932, 3, 19, '2023-06-09 11:44:43'),
	(933, 14, 28, '2023-06-09 11:44:45'),
	(934, 14, 29, '2023-06-09 11:44:46'),
	(935, 1, 20, '2023-06-09 11:44:49'),
	(936, 1, 27, '2023-06-09 11:44:51'),
	(937, 10, 27, '2023-06-09 11:44:55'),
	(938, 18, 29, '2023-06-09 11:44:56'),
	(939, 1, 28, '2023-06-09 11:44:57'),
	(940, 16, 22, '2023-06-09 11:44:59'),
	(941, 7, 22, '2023-06-09 11:45:02'),
	(942, 11, 30, '2023-06-09 11:45:06'),
	(943, 18, 31, '2023-06-09 11:45:07'),
	(944, 12, 22, '2023-06-09 11:45:11'),
	(945, 13, 29, '2023-06-09 11:45:15'),
	(946, 17, 26, '2023-06-09 11:45:19'),
	(947, 7, 26, '2023-06-09 11:45:22'),
	(948, 1, 19, '2023-06-09 11:45:24'),
	(949, 4, 31, '2023-06-09 11:45:27'),
	(950, 5, 26, '2023-06-09 11:45:29'),
	(951, 14, 26, '2023-06-09 11:45:33'),
	(952, 17, 24, '2023-06-09 11:45:34'),
	(953, 6, 21, '2023-06-09 11:45:38'),
	(954, 5, 21, '2023-06-09 11:45:40'),
	(955, 9, 19, '2023-06-09 11:45:44'),
	(956, 12, 26, '2023-06-09 11:45:47'),
	(957, 5, 30, '2023-06-09 11:45:48'),
	(958, 3, 26, '2023-06-09 11:45:52'),
	(959, 12, 21, '2023-06-09 11:45:55'),
	(960, 13, 23, '2023-06-09 11:45:57'),
	(961, 2, 22, '2023-06-09 11:46:01'),
	(962, 10, 31, '2023-06-09 11:46:05'),
	(963, 14, 24, '2023-06-09 11:46:06'),
	(964, 15, 24, '2023-06-09 11:46:08'),
	(965, 18, 19, '2023-06-09 11:46:09'),
	(966, 16, 24, '2023-06-09 11:46:12'),
	(967, 4, 22, '2023-06-09 11:46:16'),
	(968, 11, 25, '2023-06-09 11:46:20'),
	(969, 3, 24, '2023-06-09 11:46:22'),
	(970, 20, 30, '2023-06-09 11:46:24'),
	(971, 7, 24, '2023-06-09 11:46:27'),
	(972, 14, 26, '2023-06-09 11:46:31'),
	(973, 10, 22, '2023-06-09 11:46:32'),
	(974, 8, 30, '2023-06-09 11:46:34'),
	(975, 5, 30, '2023-06-09 11:46:36'),
	(976, 4, 26, '2023-06-09 11:46:39'),
	(977, 12, 19, '2023-06-09 11:46:40'),
	(978, 9, 23, '2023-06-09 11:46:41'),
	(979, 13, 22, '2023-06-09 11:46:43'),
	(980, 12, 29, '2023-06-09 11:46:45'),
	(981, 12, 22, '2023-06-09 11:46:47'),
	(982, 4, 30, '2023-06-09 11:46:51'),
	(983, 11, 19, '2023-06-09 11:46:54'),
	(984, 9, 24, '2023-06-09 11:46:56'),
	(985, 10, 20, '2023-06-09 11:46:59'),
	(986, 10, 19, '2023-06-09 11:47:01'),
	(987, 16, 25, '2023-06-09 11:47:03'),
	(988, 17, 25, '2023-06-09 11:47:05'),
	(989, 10, 26, '2023-06-09 11:47:09'),
	(990, 15, 25, '2023-06-09 11:47:12'),
	(991, 20, 24, '2023-06-09 11:47:16'),
	(992, 10, 25, '2023-06-09 11:47:20'),
	(993, 10, 31, '2023-06-09 11:47:24'),
	(994, 19, 19, '2023-06-09 11:47:25'),
	(995, 8, 29, '2023-06-09 11:47:28'),
	(996, 19, 27, '2023-06-09 11:47:32'),
	(997, 15, 31, '2023-06-09 11:47:35'),
	(998, 10, 24, '2023-06-09 11:47:39'),
	(999, 19, 20, '2023-06-09 11:47:43'),
	(1000, 4, 25, '2023-06-09 11:47:45');

选中插入代码,点击执行

插入数据成功后,可以看到source_table和dimension_table中已有数据。

 

 

查询数据条数

select count(1) from source_table;

select count(1) from dimension_table;

二、​​​​​​创建session集群

使用之前的flink-sql-test-session集群即可。如若没有,安装下面步骤创建。

  • 登录实时计算控制台。
  • 在Flink全托管页签,单击目标工作空间名称对应应操作列下的控制台。
  • 在左侧导航栏,单击Session集群。
  • 单击创建Session集群。

表格中未提及的参数保持默认值即可,需要配置的参数说明请参见下表。

配置项

说明

配置示例

名称

Session集群名称。

flink-sql-test-session

状态

设置当前集群的期望运行状态:

  • STOPPED:当集群配置完成后保持停止状态,同样会停止所有在运行中的作业。
  • RUNNING:当集群配置完成后保持运行状态。

RUNNING

引擎版本

Session集群引擎版本号。

vvr-6.0.7-flink-1.15

Task Managers数量

默认与并行度保持一致。

4

  • 单击创建Session集群。

当Session集群状态(页面上方集群名称旁边)从启动中变为运行中后,可以进入后续步骤。

 

三、​​​​​​​源表查询

进入Flink开发平台,点击左侧作业开发,在demo文件夹下创建mysqlcdc-test流作业草稿,版本选择vvr-6.0.7-flink-1.15。创建源表,代码如下

CREATE TABLE mysql_source_table(
    id INT NOT NULL PRIMARY KEY NOT ENFORCED,
    record_time TIMESTAMP(3),
    good_id INT,
    amount INT,
    WATERMARK FOR record_time AS record_time-INTERVAL '5' SECOND
)WITH(
    'connector' = 'mysql',
    'hostname' = 'rm-cn-g48798978t000ca.rwlb.rds.aliyuncs.com',
    'port' = '3306',
    'username' = 'itlanson',
    'password' = 'It123',
    'database-name' = 'test',
    'table-name' = 'source_table'
);

其中hostname后是mysql的内网ip,可以在mysql实例详情的数据库连接处查看。

username和password是mysql的账号和密码。

选中代码后,点击运行,完成源表创建。

查询表数据,验证源表数据可以正常捕获。 

SELECT * FROM mysqlcdc_source_table;

选中查询代码,点击调试,选择flink-sql-test-session集群,结果如下。

查询数据条数

SELECT count(1) FROM mysql_source_table;

选择代码后,点击调试。

可以看到控制台的结果在不断增大,达到500会暂停。这是因为默认查询500条,此时需要点击左侧的绿色箭头,恢复查询。

最后结果如下,可以看到,与mysql中的对应表数据条数相同。

此时,在mysql中插入一条数据。 

INSERT INTO `source_table` (`id`, `good_id`, `amount`, `record_time`)
VALUE (1001, 1, 19, '2023-06-09 11:59:34');

插入成功后,观察flink控制台,发现数据已经发生了变化。即已经捕获了新增的数据。 

 

四、​​​​​窗口计算

接下来,我们希望对原始数据按照时间窗口进行分组计算。我们使用TUMBLE相关窗口函数结合GROUP BY,将长度 15 秒内的订单数据按照商品 ID 进行归类,并使用SUM计算其销售总额。

在Flink作业编辑页签中,输入如下代码。选中代码,点击调试,观察控制台的输出结果。

SELECT
  good_id,
  tumble_start(
    record_time, interval '15' seconds
 ) AS record_timestamp,
  sum(amount) AS total_amount
FROM
  mysql_source_table
GROUP BY
  tumble(
    record_time, interval '15' seconds
  ),
 good_id;

结果如下

在这个业务场景中,购买商品信息使用good_id记录,而商品ID到可读商品名字的映射表、每件商品的价格等信息则存储在另一张维度表(Dimension Table)中。我们同样可以使用Flink SQL连接维度表,只需在Flink作业中编写下面的语句。

首先建表

 CREATE TABLE dimension_table (
    good_id INT NOT NULL PRIMARY KEY NOT ENFORCED,
    good_name VARCHAR(256),
    good_price INT
)WITH(
    'connector' = 'mysql',
    'hostname' = 'rm-cn-g48798978t000ca.rwlb.rds.aliyuncs.com',
    'port' = '3306',
    'username' = 'itlanson',
    'password' = 'It123',
    'database-name' = 'test',
    'table-name' = 'dimension_table'
);

 查询数据条数

select count(1) from dimension_table;

查询结果,与mysql中对应表的数据条数一致。

这里,我们希望根据上一步中统计出的「每15秒商品销售量」信息,计算出每件商品的销售额。由于商品名称及商品价格数据存储在另一张维度表 dimension_table中,我们需要将结果视图和 dimension_table进行JOIN操作,并将「商品销售量」、「商品价格」相乘计算出「商品销售额」,并提取结果中的商品可读名称信息作为结果表。

需要确保 dimension_table中存在对应商品 ID 的条目。

作业代码如下。

SELECT
  record_timestamp,
  good_name,
  total_amount * good_price AS revenue
FROM
  (
    SELECT
     good_id,
     tumble_start(
        record_time, interval '15' seconds
     ) AS record_timestamp,
      sum(amount) AS total_amount
    FROM
      mysql_source_table
    GROUP BY
      tumble(
        record_time,interval '15'seconds
        ),
      good_id
  )AS tumbled_table
  LEFT JOIN dimension_table ON tumbled_table.good_id = dimension_table.good_id;

 选中代码,点击调试,结果如下

五、​​​​​​结果数据写回数据库

我们将这些实时的统计数据写回数据库,Flink SQL也可以简单地实现这一点。首先我们需要创建一张用于连接汇表的 Flink 表,代码如下所示:

 

CREATE TABLE mysql_sink_table (
    record_timestamp TIMESTAMP(3) NOT NULL PRIMARY KEY NOT ENFORCED,
    good_name VARCHAR(128),
    sell_amount INT
) WITH (
  'connector' = 'jdbc',
  'url' = 'jdbc:mysql://rm-cn-g48798978t000ca.rwlb.rds.aliyuncs.com:3306/test',
  'table-name' = 'sink_table',
  'username' = 'itlanson',
  'password' = 'It123',
  'scan.auto-commit' = 'true'
);

注意:url中//与:之间的为mysql的内网ip,根据实际进行更改。

新建mysqlcdc-insert流作业草稿,版本选择vvr-6.0.7-flink-1.15。

INSERT INTO mysql_sink_table 
SELECT 
  record_timestamp, 
  good_name, 
  total_amount * good_price AS revenue 
FROM 
  (
    SELECT 
      good_id, 
      tumble_start(
        record_time, interval '15' seconds
      ) AS record_timestamp, 
      sum(amount) AS total_amount 
    FROM 
      mysql_source_table 
    GROUP BY 
      tumble (
        record_time, interval '15' seconds
      ), 
      good_id
  ) AS tumbled_table 
  LEFT JOIN dimension_table ON tumbled_table.good_id = dimension_table.good_id;

点击右上角部署,提交上线。

进入左侧作业运维,启动新提交的作业。

等待一段时间,作业状态变成运行中。点击状态总览可以看到作业执行图。可以看到首先进行的是源表数据的捕获与窗口聚合;接着和维度表进行JOIN操作得到运算结果;最后将处理数据存入汇表。

等待数据写入后,可以在mysql对应表查看写入结果。

返回DMS的SQL Console,查询数据。

SELECT * FROM `sink_table`;

结果如下


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

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

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

相关文章

以太网接口MII 和 RMII

媒体独立接口 (MII) 是连接以太网MAC (媒体访问控制) 设备和PHY (物理层) 设备的标准化方法。其主要目的是促进以太网系统这两个基本组件之间的通信。 媒体独立接口 (MII) 介质独立接口 (MII) 是由 IEEE 802.3 标准定义的并行接口。MII 的管理接口允许配置和控制多个 PHY 设备…

安装Win11 24H2如何跳过BitLocker加密

今天来给大家分享一下在安装 Windows11 24H2 时,如何跳过BitLocker加密的小方法,Windows11 24H2版本默认自动为用户开启Bitlocker 加密,很多用户不知道自己设备已被偷偷加密,这样也可能会导致磁盘性能严重损失,特别是4…

计算机毕业设计 数字化农家乐管理平台的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

使用Diskgenius系统迁移

使用Diskgenius系统迁移 1、使用系统迁移2、注意点3、新备份的系统盘装在电脑上可能出现盘符错乱导致开机不进入桌面情况 1、使用系统迁移 参考视频: DiskGenius无损系统迁移,换硬盘无需重装系统和软件 2、注意点 1)新的硬盘里面的所有资料…

linux安装Anaconda3

先将Anaconda3安装包下载好,然后在主文件夹里新建一个文件夹,将Anaconda3安装包拖进去。 打开终端未来不出现缺东西的异常情况,我们先安装 yum install -bzip2然后进入根目录下,在进入Anaconda3文件夹下 sh包安装方式 sh Anac…

为什么用迭代器调用不了对象中的函数

没加const可以 加了const就不行 我懂了 加了const v的值就不能修改,我的那些函数都可以修改值 应该是 好像不对 有大佬会吗

vue 实现tab菜单切换

1、目标&#xff1a; 实现切换tab菜单&#xff0c;激活状态&#xff0c;按钮高亮&#xff0c;显示对应的菜单内容 2、实现 <template><div class"tan_menu"><ul class"container"><liclass"item"v-for"item in tab…

常用工具推荐!分享7款AI论文修改软件工具网站

在当今学术研究和写作领域&#xff0c;AI论文修改软件工具已经成为了不可或缺的助手。这些工具不仅能够帮助研究人员提高写作效率&#xff0c;还能确保论文的质量和原创性。以下是七款值得推荐的AI论文修改软件工具网站&#xff0c;其中特别推荐千笔-AIPassPaper。 1. 千笔-AI…

C++编程语言:基础设施:命名空间(Bjarne Stroustrup)

第 14 章 命名空间(Namespaces) 目录 14.1 组成问题(Composition Problems) 14.2 命名空间(Namespaces) 14.2.1 显式修饰(Explicit Qualification) 14.2.2 使用using 声明 14.2.3 using 指令 14.2.4 参数依赖查询 14.2.5 命名空间的开放性 14.3 模块化和接口 …

智能BI项目第五期

本期主要内容 系统问题分析异步化业务流程分析线程池讲解&#xff08;入门 原理 实战&#xff09;系统异步化改造开发 1.系统问题分析 当系统面临大量用户请求时&#xff0c;我们后端的 AI 处理能力有限&#xff0c;例如服务器的内存、CPU、网络带宽等资源有限&#xff0c…

git 本地分支误删,怎么恢复?误删本地已提交未推送的分支!

误删本地已提交未推送的分支&#xff01; 前提&#xff1a; 已提交&#xff01; 重点&#xff1a;未推送&#xff01; 要是推送了&#xff0c;再拉一下代码就行了。你也不会来搜这个帖子了。 如果你删除的分支里有你未提交的代码&#xff0c;不用往下看了&#xff0c;帮不到你…

港湾周评|2万元的三折叠手机可能与普通人无关

《港湾商业观察》李镭 三折叠手机时代正式开启&#xff0c;你准备好了吗&#xff1f; 9月20日上午&#xff0c;华为Mate XT非凡大师正式开售&#xff0c;据悉各大平台迅速售罄&#xff0c;华为商城显示&#xff0c;9月21日将再次放货。 该款手机被称为全球首款商用三折叠手机…

OpenWrt 定时重启

问题 想设置 OpenWrt 定时重启&#xff0c;避免因长期不重启导致的问题。 方法 参考 Scheduling tasks with cronopenwrt设置定时重启&#xff08;天/周/月&#xff09;定时重启openwrt (istoreos) 软路由系统 设置 cron 自启动 System - Start up - 找到 cron - 设置成自…

Java中List、ArrayList与顺序表

List、ArrayList与顺序表 List什么是List常用方法介绍List的使用 ArrayList与顺序表线性表顺序表接口的实现 ArrayList简介ArrayList的使用ArrayList的构造ArrayList的常见操作ArrayList的遍历ArrayList的扩容机制 ArrayList的具体使用杨辉三角简单的洗牌算法 ArrayList的问题及…

一个安卓鸿蒙化工具

DevEco插件&#xff0c;为已有安卓项目鸿蒙化加速。 目前支持&#xff1a; 1、安卓Vector Assets转svg&#xff1b; 2、json转ets model&#xff1b; 3、kotlin model转ets model&#xff1b; 下载地址&#xff1a;andtoharplugin1.1.0 安装&#xff1a; deveco插件安装选硬…

2024年华为杯研赛(E题)|高速公路应急车道启用建模|数学建模竞赛解题思路|完整代码论文集合

我是Tina表姐&#xff0c;毕业于中国人民大学&#xff0c;对数学建模的热爱让我在这一领域深耕多年。我的建模思路已经帮助了百余位学习者和参赛者在数学建模的道路上取得了显著的进步和成就。现在&#xff0c;我将这份宝贵的经验和知识凝练成一份全面的解题思路与代码论文集合…

智慧医院人工智能应用场景 | 智能导诊系统源码

近年来&#xff0c;智能医疗在国内外的发展热度不断提升。图像识别、深度学习、神经网络、大模型、语音等关键技术的突破带来了人工智能技术新一轮的发展。 场景一&#xff1a;智能机器人 医疗机器人是指能够在医疗领域执行特定任务或功能的机器人&#xff0c;包括手术机器人、…

从零到一:打造安全高效敦煌测评自养号体系

敦煌测评自养号是一种提升店铺销售和排名的有效策略&#xff0c;卖家可以自行注册并管理买家账号&#xff0c;通过模拟真实买家行为为自家店铺进行测评和补单。以下是一些关键技巧&#xff0c;帮助卖家快速提升销售和排名&#xff1a; 一、账号注册与养号 环境搭建&#xff1…

js 将二进制文件流,下载为excel文件

吃西瓜 现成的粒子 二进制流&#xff0c;是一种计算机文件格式&#xff0c;它的数据以二进制形式存储&#xff0c;与文本文件不同&#xff0c; 二进制文件可以包含任意类型的数据&#xff0c;例如&#xff1a;图像、音频、视频、可执行文件、压缩文件等&#xff0c;而文本文…

基于协同过滤+python+django+vue的音乐推荐系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于协同过滤pythondjangovue…