OpenMythosのサンプルプログラムを動かしました

1.概要 前回、OpenMythosの環境構築まで実現したので、GitHubにあるサンプルプログラム(Usage)を動かしてみました。一部エラーが発生しましたが、結果出力部分なので修正をしました。その内容を記述します。 2.詳細 Usageに記載されているPythonプログラムをopenmythos_usage.pyとして作成します。 $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py 下記エラーとなります [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) Traceback (most recent call last):   File "/home/nakasima/openmythos/openmythos_usage.py", line 48, in <module>     rho = torch.linalg.eigvals(A).abs().max().item()           ^^^^^^^^^^^^^^^^^^^^^^^ RuntimeError: linalg.eig: The input tensor A must have at least 2 dimensions. コードの下記部分を修正します #rho = torch.linalg.eigvals(A).abs().max().item() rho = A.abs().max().item() $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) [MLA] Spectral radius ρ(A) = 0.3679 (mus...

grafanaとmariadbの組合せにcsvデータをinsertしました

1.概要

csvをmariadbにimportするload dataを試して、ハマったので、その内容を記述します。insert処理をcsvからload dataを利用してimportしてみました。結果的に作成したcsvの形式が悪く、timestampフィールドがゼロになる問題が発生して、悩みました。

2.詳細

insert data部分を変更します。

(a) insertのsqlからcsvを作成( copy_data.csv )

'1001','2023-10-01 00:00:00',1000
'1001','2023-10-01 01:00:00',1010
'1001','2023-10-01 02:00:00',1020
'1001','2023-10-01 03:00:00',1030
'1001','2023-10-01 04:00:00',1040
'1001','2023-10-01 05:00:00',1050
'1001','2023-10-01 06:00:00',1060
'1001','2023-10-01 07:00:00',1070
'1001','2023-10-01 08:00:00',1080
'1001','2023-10-01 09:00:00',1090
'1001','2023-10-01 10:00:00',1100
'1001','2023-10-01 11:00:00',1110
'1001','2023-10-01 12:00:00',1120
'1002','2023-10-01 00:00:00',1120
'1002','2023-10-01 01:00:00',1110
'1002','2023-10-01 02:00:00',1100
'1002','2023-10-01 03:00:00',1090
'1002','2023-10-01 04:00:00',1080
'1002','2023-10-01 05:00:00',1070
'1002','2023-10-01 06:00:00',1060
'1002','2023-10-01 07:00:00',1050
'1002','2023-10-01 08:00:00',1040
'1002','2023-10-01 09:00:00',1030
'1002','2023-10-01 10:00:00',1020
'1002','2023-10-01 11:00:00',1010
'1002','2023-10-01 12:00:00',1000

結果的には、このcsvが誤りでしたが、説明を続けます。

(b) dockerコンテナ内にCopy

docker ps でmariadbコンテナのIDを調べます。ここでは、1234567890abとします。

docker cp copy_data.csv 1234567890ab:/home/username/copy_data.csv

(c) load data

load data local infile 'copy_data.csv'
    into table sample_table
    fields terminated by ','
    enclosed by "'";
    
実行するとtimestampがゼロとなり、エラーです。

Query OK, 2 rows affected, 50 warnings (0.013 sec)   
Records: 26  Deleted: 0  Skipped: 24  Warnings: 50

MariaDB> select * from sample_table;
+------+---------------------+------------+
| id   | data_time           | data_value |
+------+---------------------+------------+
| 1001 | 0000-00-00 00:00:00 |       1000 |
| 1002 | 0000-00-00 00:00:00 |       1120 |
+------+---------------------+------------+
2 rows in set (0.000 sec)

ここで原因がわからずに悩みました。

(d) csvを修正( copy_data.csv )

csvはカンマ区切りで分かれているので、シングルクォートを削除しました。

1001,2023-10-01 00:00:00,1000
1001,2023-10-01 01:00:00,1010
1001,2023-10-01 02:00:00,1020
1001,2023-10-01 03:00:00,1030
1001,2023-10-01 04:00:00,1040
1001,2023-10-01 05:00:00,1050
1001,2023-10-01 06:00:00,1060
1001,2023-10-01 07:00:00,1070
1001,2023-10-01 08:00:00,1080
1001,2023-10-01 09:00:00,1090
1001,2023-10-01 10:00:00,1100
1001,2023-10-01 11:00:00,1110
1001,2023-10-01 12:00:00,1120
1002,2023-10-01 00:00:00,1120
1002,2023-10-01 01:00:00,1110
1002,2023-10-01 02:00:00,1100
1002,2023-10-01 03:00:00,1090
1002,2023-10-01 04:00:00,1080
1002,2023-10-01 05:00:00,1070
1002,2023-10-01 06:00:00,1060
1002,2023-10-01 07:00:00,1050
1002,2023-10-01 08:00:00,1040
1002,2023-10-01 09:00:00,1030
1002,2023-10-01 10:00:00,1020
1002,2023-10-01 11:00:00,1010
1002,2023-10-01 12:00:00,1000

再度、docker cpでコンテナにコピー

(e) load data

load data local infile 'copy_data.csv'
    into table sample_table
    fields terminated by ',';

Query OK, 26 rows affected (0.017 sec)               
Records: 26  Deleted: 0  Skipped: 0  Warnings: 0

enclosed by "'"も削除して、問題解決です。

MariaDB > select * from sample_table;
+------+---------------------+------------+
| id   | data_time           | data_value |
+------+---------------------+------------+
| 1001 | 2023-10-01 00:00:00 |       1000 |
| 1001 | 2023-10-01 01:00:00 |       1010 |
| 1001 | 2023-10-01 02:00:00 |       1020 |
| 1001 | 2023-10-01 03:00:00 |       1030 |
| 1001 | 2023-10-01 04:00:00 |       1040 |
| 1001 | 2023-10-01 05:00:00 |       1050 |
| 1001 | 2023-10-01 06:00:00 |       1060 |
| 1001 | 2023-10-01 07:00:00 |       1070 |
| 1001 | 2023-10-01 08:00:00 |       1080 |
| 1001 | 2023-10-01 09:00:00 |       1090 |
| 1001 | 2023-10-01 10:00:00 |       1100 |
| 1001 | 2023-10-01 11:00:00 |       1110 |
| 1001 | 2023-10-01 12:00:00 |       1120 |
| 1002 | 2023-10-01 00:00:00 |       1120 |
| 1002 | 2023-10-01 01:00:00 |       1110 |
| 1002 | 2023-10-01 02:00:00 |       1100 |
| 1002 | 2023-10-01 03:00:00 |       1090 |
| 1002 | 2023-10-01 04:00:00 |       1080 |
| 1002 | 2023-10-01 05:00:00 |       1070 |
| 1002 | 2023-10-01 06:00:00 |       1060 |
| 1002 | 2023-10-01 07:00:00 |       1050 |
| 1002 | 2023-10-01 08:00:00 |       1040 |
| 1002 | 2023-10-01 09:00:00 |       1030 |
| 1002 | 2023-10-01 10:00:00 |       1020 |
| 1002 | 2023-10-01 11:00:00 |       1010 |
| 1002 | 2023-10-01 12:00:00 |       1000 |
+------+---------------------+------------+
26 rows in set (0.001 sec)

参考
[外部サイト参照]
【MySQL】csvファイルをDBにインポートする方法

コメント

このブログの人気の投稿

miniPCのBMAXでWindows11のsecure boot設定漏れでトラブル発生

LinuxMint-22.3にWine 11.6をサクッと入れてみました

LinuxMint 21.3にWinBoat導入を試してみました