Project Polarisの一環で、ファイル系に続き、データベース系データソースに関しても、エンジン変更に伴う仕様変更を実施いたします。
変更は2026年6月4日にリリース予定です。
下記のデータベース系データソースが対象です。
MySQL
PostgreSQL
SQL Server
BigQuery
Amazon Athena
Amazon Redshift
Snowflake
Treasure Data
リリース後新規作成、およびリリース前作成済み、の全てのデータソースが影響を受けます。
影響を受ける操作は、データソースの「読み込み」「読み込んで保存」操作です。
データソースの更新操作と同義であるスケジュールでの更新も同様に影響を受けます。
nullを含む整数列の型が変わります
nullを含む整数列が、浮動小数点型(Float64)ではなく整数型(Int64)として正確に読み込まれるようになります。
変更前: null を含む整数列 → Float64 に変換(科学記数法で表示、精度損失の可能性あり)
変更後: null を含む整数列 → Int64 のまま保持(正確な整数値)
例:
データベースの値: 9223372036854775807, null
変更前(Pandas): 9.223372036854776e+18, None ← 精度損失あり
変更後(Polars): 9223372036854775807, None ← 正確な値
補足: null を含まない整数列は、変更前後とも Int64 で読み込まれるため影響ありません。
データベースの JSON 型・JSONB 型・ARRAY 型のデータが、標準 JSON 形式(RFC 8259 準拠)の文字列に統一されます。
JSON文字列として後続処理で扱う場合は、ダブルクォート・スペースなしの形式を前提としてください。
分析プロジェクト内で文字列マッチングや分割処理を行っている場合は、パターンの見直しが必要になることがあります。
JSON配列の表記形式が変わります
変更前: `['Python', 'Java', 'JavaScript']`(シングルクォート、スペース付き)
変更後: `["Python","Java","JavaScript"]`(ダブルクォート、スペースなし)
JSONオブジェクトの表記形式が変わります
変更前(MySQL): `{"name": "Tanaka", "age": 30}`(スペース付き)
変更前(PostgreSQL): `{'name': 'Tanaka', 'age': 30}`(シングルクォート)
変更後(共通): `{"name":"Tanaka","age":30}`(ダブルクォート、スペースなし)
補足: 変更前はデータベースの種類によって表記が異なっていましたが、変更後はデータベースの種類を問わず統一された形式になります。
null値の表記が変わります
変更前(PostgreSQL): `None`(Python表記)
変更後: `null`(標準JSON表記)
入れ子のJSON(配列・オブジェクト)も同様に変わります
変更前: `[['a', 'b'], ['c', 'd']]` または `[["a", "b"], ["c", "d"]]`
変更後: `[["a","b"],["c","d"]]`
ARRAY型(PostgreSQL等)の表記形式が変わります
ARRAY型のデータも JSON 配列形式の文字列として読み込まれるようになります。
変更前: `[1, 2, 3]`(Pythonのlist型)
変更後: `[1,2,3]`(JSON形式の文字列型)