Snowpark Migration Accelerator: リリースノート¶
以下のリリースノートは、リリース日順に整理されていますのでご注意ください。アプリケーションと変換コアの両方のバージョン番号は以下に表示されます。
2025年2月5日¶
ホットフィックス: アプリケーションと CLI バージョン2.5.2¶
デスクトップアプリdesktop-app¶
サンプルプロジェクトオプションで変換する際の問題を修正しました。
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 5.3.0
2025年2月4日¶
アプリケーションと CLI バージョン2.5.1¶
デスクトップアプリdesktop-app¶
ユーザーに書き込み権限がない場合の新しいモーダルを追加しました。
ライセンス契約の更新には、承諾が必要です。
CLI cli¶
「--version」または「-v」を表示した際の CLI 画面の年号を修正しました。
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 5.3.0
追加済み¶
Added the following Python Third-Party libraries with Direct status:
about-time
affinegap
aiohappyeyeballs
alibi-detect
alive-progress
allure-nose2
allure-robotframework
anaconda-cloud-cli
anaconda-mirror
astropy-iers-data
asynch
asyncssh
autots
autoviml
aws-msk-iam-sasl-signer-python
azure-functions
backports.tarfile
blas
bottle
bson
cairo
capnproto
captum
categorical-distance
census
clickhouse-driver
clustergram
cma
conda-anaconda-telemetry
configspace
cpp-expected
dask-expr
data-science-utils
databricks-sdk
datetime-distance
db-dtypes
dedupe
dedupe-variable-datetime
dedupe_lehvenshtein_search
dedupe_levenshtein_search
diff-cover
diptest
dmglib
docstring_parser
doublemetaphone
dspy-ai
econml
emcee
emoji
environs
eth-abi
eth-hash
eth-typing
eth-utils
expat
filetype
fitter
flask-cors
fpdf2
frozendict
gcab
geojson
gettext
glib-tools
google-ads
google-ai-generativelanguage
google-api-python-client
google-auth-httplib2
google-cloud-bigquery
google-cloud-bigquery-core
google-cloud-bigquery-storage
google-cloud-bigquery-storage-core
google-cloud-resource-manager
google-generativeai
googlemaps
grapheme
graphene
graphql-relay
gravis
greykite
grpc-google-iam-v1
harfbuzz
hatch-fancy-pypi-readme
haversine
hiclass
hicolor-icon-theme
highered
hmmlearn
holidays-ext
httplib2
icu
imbalanced-ensemble
immutabledict
importlib-metadata
importlib-resources
inquirerpy
iterative-telemetry
jaraco.context
jaraco.test
jiter
jiwer
joserfc
jsoncpp
jsonpath
jsonpath-ng
jsonpath-python
kagglehub
keplergl
kt-legacy
langchain-community
langchain-experimental
langchain-snowflake
langchain-text-splitters
libabseil
libflac
libgfortran-ng
libgfortran5
libglib
libgomp
libgrpc
libgsf
libmagic
libogg
libopenblas
libpostal
libprotobuf
libsentencepiece
libsndfile
libstdcxx-ng
libtheora
libtiff
libvorbis
libwebp
lightweight-mmm
litestar
litestar-with-annotated-types
litestar-with-attrs
litestar-with-cryptography
litestar-with-jinja
litestar-with-jwt
litestar-with-prometheus
litestar-with-structlog
lunarcalendar-ext
matplotlib-venn
metricks
mimesis
modin-ray
momepy
mpg123
msgspec
msgspec-toml
msgspec-yaml
msitools
multipart
namex
nbconvert-all
nbconvert-core
nbconvert-pandoc
nlohmann_json
numba-cuda
numpyro
office365-rest-python-client
openapi-pydantic
opentelemetry-distro
opentelemetry-instrumentation
opentelemetry-instrumentation-system-metrics
optree
osmnx
pathlib
pdf2image
pfzy
pgpy
plumbum
pm4py
polars
polyfactory
poppler-cpp
postal
pre-commit
prompt-toolkit
propcache
py-partiql-parser
py_stringmatching
pyatlan
pyfakefs
pyfhel
pyhacrf-datamade
pyiceberg
pykrb5
pylbfgs
pymilvus
pymoo
pynisher
pyomo
pypdf
pypdf-with-crypto
pypdf-with-full
pypdf-with-image
pypng
pyprind
pyrfr
pysoundfile
pytest-codspeed
pytest-trio
python-barcode
python-box
python-docx
python-gssapi
python-iso639
python-magic
python-pandoc
python-zstd
pyuca
pyvinecopulib
pyxirr
qrcode
rai-sdk
ray-client
ray-observability
readline
rich-click
rouge-score
ruff
scikit-criteria
scikit-mobility
sentencepiece-python
sentencepiece-spm
setuptools-markdown
setuptools-scm
setuptools-scm-git-archive
shareplum
simdjson
simplecosine
sis-extras
slack-sdk
smac
snowflake-sqlalchemy
snowflake_legacy
socrata-py
spdlog
sphinxcontrib-images
sphinxcontrib-jquery
sphinxcontrib-youtube
splunk-opentelemetry
sqlfluff
squarify
st-theme
statistics
streamlit-antd-components
streamlit-condition-tree
streamlit-echarts
streamlit-feedback
streamlit-keplergl
streamlit-mermaid
streamlit-navigation-bar
streamlit-option-menu
strictyaml
stringdist
sybil
tensorflow-cpu
tensorflow-text
tiledb-ptorchaudio
torcheval
trio-websocket
trulens-connectors-snowflake
trulens-core
trulens-dashboard
trulens-feedback
trulens-otel-semconv
trulens-providers-cortex
tsdownsample
typing
typing-extensions
typing_extensions
unittest-xml-reporting
uritemplate
us
uuid6
wfdb
wsproto
zlib
zope.index
Added the following Python BuiltIn libraries with Direct status:
aifc
配列
ast
asynchat
asyncio
asyncore
atexit
audioop
base64
bdb
binascii
bitsect
builtins
bz2
calendar
cgi
cgitb
chunk
cmath
cmd
code
codecs
codeop
colorsys
compileall
concurrent
contextlib
contextvars
copy
copyreg
cprofile
crypt
csv
ctypes
curses
dbm
difflib
dis
distutils
doctest
email
ensurepip
enum
errno
faulthandler
fcntl
filecmp
fileinput
fnmatch
fractions
ftplib
functools
gc
getopt
getpass
gettext
graphlib
grp
gzip
hashlib
heapq
hmac
html
http
idlelib
imaplib
imghdr
imp
importlib
inspect
ipaddress
itertools
keyword
linecache
locale
lzma
mailbox
mailcap
marshal
math
mimetypes
mmap
modulefinder
msilib
multiprocessing
netrc
nis
nntplib
numbers
operator
optparse
ossaudiodev
pdb
pickle
pickletools
pipes
pkgutil
platform
plistlib
poplib
posix
pprint
profile
pstats
pty
pwd
py_compile
pyclbr
pydoc
queue
quopri
random
re
reprlib
resource
rlcompleter
runpy
sched
シークレット
select
selectors
shelve
shlex
signal
site
sitecustomize
smtpd
smtplib
sndhdr
socket
socketserver
spwd
sqlite3
ssl
stat
文字列
stringprep
struct
subprocess
sunau
symtable
sysconfig
syslog
tabnanny
tarfile
telnetlib
tempfile
termios
test
textwrap
threading
timeit
tkinter
トークン
tokenize
tomllib
trace
traceback
tracemalloc
tty
turtle
turtledemo
types
unicodedata
urllib
uu
uuid
venv
warnings
wave
weakref
webbrowser
wsgiref
xdrlib
xml
xmlrpc
zipapp
zipfile
zipimport
zoneinfo
Added the following Python BuiltIn libraries with NotSupported status:
msvcrt
winreg
winsound
変更済み¶
.NET バージョンをv9.0.0に更新。
EWI SPRKPY1068 を改善。
SMA でサポートされるSnowpark Python API のバージョンを1.24.0 から 1.25.0に引き上げました。
パンダのSnowparkバージョンを追加しました。
以下のライブラリを ThirdPartyLib から BuiltIn に変更。
configparser
dataclasses
pathlib
readline
statistics
zlib
Updated the mapping status for the following Pandas elements, from Direct to Partial:
pandas.core.frame.DataFrame.add
pandas.core.frame.DataFrame.aggregate
pandas.core.frame.DataFrame.all
pandas.core.frame.DataFrame.apply
pandas.core.frame.DataFrame.astype
pandas.core.frame.DataFrame.cumsum
pandas.core.frame.DataFrame.div
pandas.core.frame.DataFrame.dropna
pandas.core.frame.DataFrame.eq
pandas.core.frame.DataFrame.ffill
pandas.core.frame.DataFrame.fillna
pandas.core.frame.DataFrame.floordiv
pandas.core.frame.DataFrame.ge
pandas.core.frame.DataFrame.groupby
pandas.core.frame.DataFrame.gt
pandas.core.frame.DataFrame.idxmax
pandas.core.frame.DataFrame.idxmin
pandas.core.frame.DataFrame.inf
pandas.core.frame.DataFrame.join
pandas.core.frame.DataFrame.le
pandas.core.frame.DataFrame.loc
pandas.core.frame.DataFrame.lt
pandas.core.frame.DataFrame.mask
pandas.core.frame.DataFrame.merge
pandas.core.frame.DataFrame.mod
pandas.core.frame.DataFrame.mul
pandas.core.frame.DataFrame.ne
pandas.core.frame.DataFrame.nunique
pandas.core.frame.DataFrame.pivot_table
pandas.core.frame.DataFrame.pow
pandas.core.frame.DataFrame.radd
pandas.core.frame.DataFrame.rank
pandas.core.frame.DataFrame.rdiv
pandas.core.frame.DataFrame.rename
pandas.core.frame.DataFrame.replace
pandas.core.frame.DataFrame.resample
pandas.core.frame.DataFrame.rfloordiv
pandas.core.frame.DataFrame.rmod
pandas.core.frame.DataFrame.rmul
pandas.core.frame.DataFrame.rolling
pandas.core.frame.DataFrame.round
pandas.core.frame.DataFrame.rpow
pandas.core.frame.DataFrame.rsub
pandas.core.frame.DataFrame.rtruediv
pandas.core.frame.DataFrame.shift
pandas.core.frame.DataFrame.skew
pandas.core.frame.DataFrame.sort_index
pandas.core.frame.DataFrame.sort_values
pandas.core.frame.DataFrame.sub
pandas.core.frame.DataFrame.to_dict
pandas.core.frame.DataFrame.transform
pandas.core.frame.DataFrame.transpose
pandas.core.frame.DataFrame.truediv
pandas.core.frame.DataFrame.var
pandas.core.indexes.datetimes.date_range
pandas.core.reshape.concat.concat
pandas.core.reshape.melt.melt
pandas.core.reshape.merge.merge
pandas.core.reshape.pivot.pivot_table
pandas.core.reshape.tile.cut
pandas.core.series.Series.add
pandas.core.series.Series.aggregate
pandas.core.series.Series.all
pandas.core.series.Series.any
pandas.core.series.Series.cumsum
pandas.core.series.Series.div
pandas.core.series.Series.dropna
pandas.core.series.Series.eq
pandas.core.series.Series.ffill
pandas.core.series.Series.fillna
pandas.core.series.Series.floordiv
pandas.core.series.Series.ge
pandas.core.series.Series.gt
pandas.core.series.Series.lt
pandas.core.series.Series.mask
pandas.core.series.Series.mod
pandas.core.series.Series.mul
pandas.core.series.Series.multiply
pandas.core.series.Series.ne
pandas.core.series.Series.pow
pandas.core.series.Series.quantile
pandas.core.series.Series.radd
pandas.core.series.Series.rank
pandas.core.series.Series.rdiv
pandas.core.series.Series.rename
pandas.core.series.Series.replace
pandas.core.series.Series.resample
pandas.core.series.Series.rfloordiv
pandas.core.series.Series.rmod
pandas.core.series.Series.rmul
pandas.core.series.Series.rolling
pandas.core.series.Series.rpow
pandas.core.series.Series.rsub
pandas.core.series.Series.rtruediv
pandas.core.series.Series.sample
pandas.core.series.Series.shift
pandas.core.series.Series.skew
pandas.core.series.Series.sort_index
pandas.core.series.Series.sort_values
pandas.core.series.Series.std
pandas.core.series.Series.sub
pandas.core.series.Series.subtract
pandas.core.series.Series.truediv
pandas.core.series.Series.value_counts
pandas.core.series.Series.var
pandas.core.series.Series.where
pandas.core.tools.numeric.to_numeric
Updated the mapping status for the following Pandas elements, from NotSupported to Direct:
pandas.core.frame.DataFrame.attrs
pandas.core.indexes.base.Index.to_numpy
pandas.core.series.Series.str.len
pandas.io.html.read_html
pandas.io.xml.read_xml
pandas.core.indexes.datetimes.DatetimeIndex.mean
pandas.core.resample.Resampler.indices
pandas.core.resample.Resampler.nunique
pandas.core.series.Series.items
pandas.core.tools.datetimes.to_datetime
pandas.io.sas.sasreader.read_sas
pandas.core.frame.DataFrame.attrs
pandas.core.frame.DataFrame.style
pandas.core.frame.DataFrame.items
pandas.core.groupby.generic.DataFrameGroupBy.head
pandas.core.groupby.generic.DataFrameGroupBy.median
pandas.core.groupby.generic.DataFrameGroupBy.min
pandas.core.groupby.generic.DataFrameGroupBy.nunique
pandas.core.groupby.generic.DataFrameGroupBy.tail
pandas.core.indexes.base.Index.is_boolean
pandas.core.indexes.base.Index.is_floating
pandas.core.indexes.base.Index.is_integer
pandas.core.indexes.base.Index.is_monotonic_decreasing
pandas.core.indexes.base.Index.is_monotonic_increasing
pandas.core.indexes.base.Index.is_numeric
pandas.core.indexes.base.Index.is_object
pandas.core.indexes.base.Index.max
pandas.core.indexes.base.Index.min
pandas.core.indexes.base.Index.name
pandas.core.indexes.base.Index.names
pandas.core.indexes.base.Index.rename
pandas.core.indexes.base.Index.set_names
pandas.core.indexes.datetimes.DatetimeIndex.day_name
pandas.core.indexes.datetimes.DatetimeIndex.month_name
pandas.core.indexes.datetimes.DatetimeIndex.time
pandas.core.indexes.timedeltas.TimedeltaIndex.ceil
pandas.core.indexes.timedeltas.TimedeltaIndex.days
pandas.core.indexes.timedeltas.TimedeltaIndex.floor
pandas.core.indexes.timedeltas.TimedeltaIndex.microseconds
pandas.core.indexes.timedeltas.TimedeltaIndex.nanoseconds
pandas.core.indexes.timedeltas.TimedeltaIndex.round
pandas.core.indexes.timedeltas.TimedeltaIndex.seconds
pandas.core.reshape.pivot.crosstab
pandas.core.series.Series.dt.round
pandas.core.series.Series.dt.time
pandas.core.series.Series.dt.weekday
pandas.core.series.Series.is_monotonic_decreasing
pandas.core.series.Series.is_monotonic_increasing
Updated the mapping status for the following Pandas elements, from NotSupported to Partial:
pandas.core.frame.DataFrame.align
pandas.core.series.Series.align
pandas.core.frame.DataFrame.tz_convert
pandas.core.frame.DataFrame.tz_localize
pandas.core.groupby.generic.DataFrameGroupBy.fillna
pandas.core.groupby.generic.SeriesGroupBy.fillna
pandas.core.indexes.datetimes.bdate_range
pandas.core.indexes.datetimes.DatetimeIndex.std
pandas.core.indexes.timedeltas.TimedeltaIndex.mean
pandas.core.resample.Resampler.asfreq
pandas.core.resample.Resampler.quantile
pandas.core.series.Series.map
pandas.core.series.Series.tz_convert
pandas.core.series.Series.tz_localize
pandas.core.window.expanding.Expanding.count
pandas.core.window.rolling.Rolling.count
pandas.core.groupby.generic.DataFrameGroupBy.aggregate
pandas.core.groupby.generic.SeriesGroupBy.aggregate
pandas.core.frame.DataFrame.applymap
pandas.core.series.Series.apply
pandas.core.groupby.generic.DataFrameGroupBy.bfill
pandas.core.groupby.generic.DataFrameGroupBy.ffill
pandas.core.groupby.generic.SeriesGroupBy.bfill
pandas.core.groupby.generic.SeriesGroupBy.ffill
pandas.core.frame.DataFrame.backfill
pandas.core.frame.DataFrame.bfill
pandas.core.frame.DataFrame.compare
pandas.core.frame.DataFrame.unstack
pandas.core.frame.DataFrame.asfreq
pandas.core.series.Series.backfill
pandas.core.series.Series.bfill
pandas.core.series.Series.compare
pandas.core.series.Series.unstack
pandas.core.series.Series.asfreq
pandas.core.series.Series.argmax
pandas.core.series.Series.argmin
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.microsecond
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.nanosecond
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.day_name
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_name
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_start
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.month_end
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_start
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_year_end
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_start
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_quarter_end
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.is_leap_year
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.floor
pandas.core.indexes.accessors.CombinedDatetimelikeProperties.ceil
pandas.core.groupby.generic.DataFrameGroupBy.idxmax
pandas.core.groupby.generic.DataFrameGroupBy.idxmin
pandas.core.groupby.generic.DataFrameGroupBy.std
pandas.core.indexes.timedeltas.TimedeltaIndex.mean
pandas.core.tools.timedeltas.to_timedelta
既知の問題¶
このバージョンでは、サンプルプロジェクトを変換する際に動作しない問題が含まれています。 次のリリースで修正される予定です
2025年1月9日¶
アプリケーションと CLI バージョン2.4.3¶
デスクトップアプリdesktop-app¶
クラッシュレポートモーダル内にトラブルシューティングガイドへのリンクを追加しました。
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 4.15.0
追加済み¶
ConversionStatusPySpark.csvファイルに
NotSupported
として以下の PySpark 要素を追加しましたpyspark.sql.streaming.readwriter.DataStreamReader.table
pyspark.sql.streaming.readwriter.DataStreamReader.schema
pyspark.sql.streaming.readwriter.DataStreamReader.options
pyspark.sql.streaming.readwriter.DataStreamReader.option
pyspark.sql.streaming.readwriter.DataStreamReader.load
pyspark.sql.streaming.readwriter.DataStreamReader.format
pyspark.sql.streaming.query.StreamingQuery.awaitTermination
pyspark.sql.streaming.readwriter.DataStreamWriter.partitionBy
pyspark.sql.streaming.readwriter.DataStreamWriter.toTable
pyspark.sql.streaming.readwriter.DataStreamWriter.trigger
pyspark.sql.streaming.readwriter.DataStreamWriter.queryName
pyspark.sql.streaming.readwriter.DataStreamWriter.outputMode
pyspark.sql.streaming.readwriter.DataStreamWriter.format
pyspark.sql.streaming.readwriter.DataStreamWriter.option
pyspark.sql.streaming.readwriter.DataStreamWriter.foreachBatch
pyspark.sql.streaming.readwriter.DataStreamWriter.start
変更済み¶
Hive SQL EWIs 形式を更新しました。
SPRKHVSQL1001
SPRKHVSQL1002
SPRKHVSQL1003
SPRKHVSQL1004
SPRKHVSQL1005
SPRKHVSQL1006
Spark SQL EWIs 形式を更新しました。
SPRKSPSQL1001
SPRKSPSQL1002
SPRKSPSQL1003
SPRKSPSQL1004
SPRKSPSQL1005
SPRKSPSQL1006
修正済み¶
ツールによって識別されない PySpark 要素があったバグを修正しました。
ThirdParty が識別した呼び出しと ThirdParty のインポート呼び出し番号との不一致を修正しました。
2024年12月13日¶
アプリケーションと CLI バージョン2.4.2 version-2.4.2-prpr-dic-12-2024¶
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 4.14.0
追加済み¶
ConversionStatusPySpark.csvに以下のSpark要素を追加しました。
pyspark.broadcast.Broadcast.value
pyspark.conf.SparkConf.getAll
pyspark.conf.SparkConf.setAll
pyspark.conf.SparkConf.setMaster
pyspark.context.SparkContext.addFile
pyspark.context.SparkContext.addPyFile
pyspark.context.SparkContext.binaryFiles
pyspark.context.SparkContext.setSystemProperty
pyspark.context.SparkContext.version
pyspark.files.SparkFiles
pyspark.files.SparkFiles.get
pyspark.rdd.RDD.count
pyspark.rdd.RDD.distinct
pyspark.rdd.RDD.reduceByKey
pyspark.rdd.RDD.saveAsTextFile
pyspark.rdd.RDD.take
pyspark.rdd.RDD.zipWithIndex
pyspark.sql.context.SQLContext.udf
pyspark.sql.types.StructType.simpleString
変更済み¶
Pandas EWIs、
PNDSPY1001
、PNDSPY1002
、PNDSPY1003
、およびSPRKSCL1137
のドキュメントを更新し、標準化された形式に合わせることで、すべての EWIs の一貫性と明瞭性を確保しました。以下のScala EWIs のドキュメントを更新しました:
SPRKSCL1106
とSPRKSCL1107
。標準形式に合わせることで、すべての EWIs で一貫性と明瞭性を確保。
修正済み¶
UserDefined シンボルがサードパーティの使用インベントリに表示されるバグを修正しました。
2024年12月4日¶
アプリケーションと CLI バージョン2.4.1 version-2.3.1-prpr-nov-14-2024¶
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 4.13.1
コマンドラインインターフェイス¶
変更済み
出力フォルダーにタイムスタンプを追加しました。
Snowpark Conversion Core 4.13.1¶
追加済み¶
ライブラリマッピングテーブルに「Source Language」列を追加しました
DetailedReport.docxのPandas API 概要テーブルに新しいカテゴリとして
Others
を追加しました。
変更済み¶
Python EWI
SPRKPY1058
のドキュメントを更新しました。pandas EWI
PNDSPY1002
のメッセージを更新し、関連するpandas要素を表示するようにしました。.csvレポートの作成方法が更新され、2回目の実行で上書きされるようになりました。
修正済み¶
Notebooksファイルが出力されない原因となっていたバグを修正しました。
pyspark.sql.conf.RuntimeConfig
からget
、set
メソッドのリプレイサーを修正しました。リプレイサーが正しいフルネームと一致するようになりました。クエリタグのバージョンが間違っていたのを修正しました。
ThirdPartyLib として報告された UserDefined パッケージを修正。
\
2024年11月14日¶
アプリケーションと CLI バージョン2.3.1 version-2.3.1-prpr-nov-14-2024¶
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 4.12.0
デスクトップアプリdesktop-app¶
修正済み
--sqlオプションの大文字と小文字を区別する問題を修正。
削除済み
show-acメッセージからプラットフォーム名を削除。
Snowpark Conversion Core 4.12.0¶
追加済み¶
Snowpark Python 1.23.0と1.24.0のサポートを追加しました。
pyspark.sql.dataframe.DataFrame.writeTo
関数の新しい EWI を追加しました。この関数の使用すべてに EWI SPRKPY1087 が指定されるようになりました。
変更済み¶
Scala EWIs のドキュメントを
SPRKSCL1137
からSPRKSCL1156
に更新して標準化された形式に合わせることで、すべての EWIs で一貫性と明瞭性を確保しました。Scala EWIs のドキュメントを
SPRKSCL1117
からSPRKSCL1136
に更新して標準化された形式に合わせることで、すべての EWIs で一貫性と明瞭性を確保しました。以下の EWIs に表示されるメッセージを更新しました。
SPRKPY1082
SPRKPY1083
Scala EWIs のドキュメントを
SPRKSCL1100
からSPRKSCL1105
に、SPRKSCL1108
からSPRKSCL1116
に、SPRKSCL1157
からSPRKSCL1175
に更新して標準化された形式に合わせることで、すべての EWIs で一貫性と明瞭性を確保しました。以下の PySpark 要素のマッピングステータスを、 EWI を使用して NotSupported から Direct に更新しました。
pyspark.sql.readwriter.DataFrameWriter.option
=>snowflake.snowpark.DataFrameWriter.option
: この関数の使用はすべて EWI SPRKPY1088 を使用するようになりましたpyspark.sql.readwriter.DataFrameWriter.options
=>snowflake.snowpark.DataFrameWriter.options
: この関数の使用は全て EWI SPRKPY1089 を使用するようになりました
以下の PySpark 要素のマッピングステータスを Workaround から Rename に更新しました。
pyspark.sql.readwriter.DataFrameWriter.partitionBy
=>snowflake.snowpark.DataFrameWriter.partition_by
EWI ドキュメントを更新しました: SPRKSCL1000、 SPRKSCL1001、 SPRKSCL1002、 SPRKSCL1100、 SPRKSCL1101、 SPRKSCL1102、 SPRKSCL1103、 SPRKSCL1104、 SPRKSCL1105。
削除済み¶
pyspark.sql.dataframe.DataFrameStatFunctions.writeTo
要素を変換ステータスから削除しました。この要素は存在しません。
非推奨¶
以下の EWI コードを非推奨としました:
SPRKPY1081
SPRKPY1084
2024年10月30日¶
アプリケーションと CLI バージョン2.3.0¶
Snowpark Conversion Core 4.11.0
Snowpark Conversion Core 4.11.0¶
追加済み¶
Issues.csv
ファイルに、対応する EWI ドキュメントにリダイレクトするUrl
という新しい列を追加しました。以下のSpark要素に新しい EWIs を追加しました:
[SPRKPY1082] pyspark.sql.readwriter.DataFrameReader.load
[SPRKPY1083] pyspark.sql.readwriter.DataFrameWriter.save
[SPRKPY1084] pyspark.sql.readwriter.DataFrameWriter.option
[SPRKPY1085] pyspark.ml.feature.VectorAssembler
[SPRKPY1086] pyspark.ml.linalg.VectorUDT
38の新しいPandas要素を追加しました:
pandas.core.frame.DataFrame.select
andas.core.frame.DataFrame.str
pandas.core.frame.DataFrame.str.replace
pandas.core.frame.DataFrame.str.upper
pandas.core.frame.DataFrame.to_list
pandas.core.frame.DataFrame.tolist
pandas.core.frame.DataFrame.unique
pandas.core.frame.DataFrame.values.tolist
pandas.core.frame.DataFrame.withColumn
pandas.core.groupby.generic._SeriesGroupByScalar
pandas.core.groupby.generic._SeriesGroupByScalar[S1].agg
pandas.core.groupby.generic._SeriesGroupByScalar[S1].aggregate
pandas.core.indexes.datetimes.DatetimeIndex.year
pandas.core.series.Series.columns
pandas.core.tools.datetimes.to_datetime.date
pandas.core.tools.datetimes.to_datetime.dt.strftime
pandas.core.tools.datetimes.to_datetime.strftime
pandas.io.parsers.readers.TextFileReader.apply
pandas.io.parsers.readers.TextFileReader.astype
pandas.io.parsers.readers.TextFileReader.columns
pandas.io.parsers.readers.TextFileReader.copy
pandas.io.parsers.readers.TextFileReader.drop
pandas.io.parsers.readers.TextFileReader.drop_duplicates
pandas.io.parsers.readers.TextFileReader.fillna
pandas.io.parsers.readers.TextFileReader.groupby
pandas.io.parsers.readers.TextFileReader.head
pandas.io.parsers.readers.TextFileReader.iloc
pandas.io.parsers.readers.TextFileReader.isin
pandas.io.parsers.readers.TextFileReader.iterrows
pandas.io.parsers.readers.TextFileReader.loc
pandas.io.parsers.readers.TextFileReader.merge
pandas.io.parsers.readers.TextFileReader.rename
pandas.io.parsers.readers.TextFileReader.shape
pandas.io.parsers.readers.TextFileReader.to_csv
pandas.io.parsers.readers.TextFileReader.to_excel
pandas.io.parsers.readers.TextFileReader.unique
pandas.io.parsers.readers.TextFileReader.values
pandas.tseries.offsets
2024年10月24日¶
アプリケーションバージョン2.2.3 version-2.2.16-prpr-oct-22-2024¶
含まれる SMA コアバージョンincluded-sma-core-versions¶
Snowpark Conversion Core 4.10.0
デスクトップアプリdesktop-app¶
修正済み
Windowsバージョンのメニューバーで、 SMA に Snowpark Migration Accelerator ではなく SnowConvert というラベルが表示される原因となっていたバグを修正しました。
macOS の
.config
ディレクトリ、およびWindowsのAppData
ディレクトリに対する読み取り権限と書き込み権限がない場合に、 SMA がクラッシュする原因となっていたバグを修正しました。
コマンドラインインターフェイス¶
変更済み
CLI の実行ファイル名を
snowct
からsma
に変更しました。ソース言語の引数が削除され、PythonかScalaの評価/変換を実行するかどうかを指定する必要がなくなりました。
以下の新しい引数を追加することにより、 CLI がサポートするコマンドライン引数を拡張しました:
--enableJupyter
|-j
: DatabricksノートブックのJupyterへの変換を有効にするかどうかを示すフラグ。--sql
|-f
: SQL コマンドが検出されたときに使用されるデータベースエンジンの構文。--customerEmail
|-e
: 顧客メールを構成します。--customerCompany
|-c
: 顧客企業を構成します。--projectName
|-p
: 顧客プロジェクトを構成します。
アプリケーションの正しい名称を反映し、すべてのメッセージの一貫性と明瞭性を確保するために、一部のテキストを更新しました。
アプリケーションの利用規約を更新しました。
CLI のドキュメントを更新および拡充し、最新の機能、拡張、変更を反映させました。
SMA の実行に移る前に表示されるテキストを更新しました。
CLI を更新し、 「Yes」 を有効な引数として受け付けるようにしました。
引数
-y
または--yes
を指定することで、ユーザーの操作を待たずに CLI の実行を継続できるようにしました。--sql
引数のヘルプ情報を更新し、この引数が期待する値を表示するようにしました。
Snowpark Conversion Core Version 4.10.0¶
追加済み¶
pyspark.sql.readwriter.DataFrameWriter.partitionBy
関数の新しい EWI を追加しました。この関数の使用すべてに EWI SPRKPY1081 が指定されるようになりました。ImportUsagesInventory.csv
ファイルに、Technology
という新しい列を追加しました。
変更済み¶
サードパーティライブラリのレディネススコアが更新され、
Unknown
ライブラリも考慮されるようになりました。AssessmentFiles.zip
ファイルを更新し、.pam
ファイルの代わりに.json
ファイルを含めるようにしました。CSV から JSON への変換メカニズムを改善し、在庫処理のパフォーマンスを向上しました。
以下の EWIs のドキュメントを改善しました:
SPRKPY1029
SPRKPY1054
SPRKPY1055
SPRKPY1063
SPRKPY1075
SPRKPY1076
以下のSpark Scala要素のマッピングステータスを
Direct
からRename
に更新しました。org.apache.spark.sql.functions.shiftLeft
=>com.snowflake.snowpark.functions.shiftleft
org.apache.spark.sql.functions.shiftRight
=>com.snowflake.snowpark.functions.shiftright
以下のSpark Scala要素のマッピングステータスを
Not Supported
からDirect
に更新しました。org.apache.spark.sql.functions.shiftleft
=>com.snowflake.snowpark.functions.shiftleft
org.apache.spark.sql.functions.shiftright
=>com.snowflake.snowpark.functions.shiftright
修正済み¶
ImportUsagesInventory.csv
ファイルのOrigin
列に SMA が正しく入力されない原因となっていたバグを修正しました。SMA が
io
、json
、logging
、およびunittest
のライブラリのインポートをPython組み込みインポートとしてImportUsagesInventory.csv
ファイルとDetailedReport.docx
ファイルで分類しない原因となっていたバグを修正しました
2024年10月11日¶
アプリケーションバージョン2.2.2¶
機能アップデートは以下の通りです:
Snowpark Conversion Core 4.8.0
Snowpark Conversion Core バージョン4.8.0¶
追加済み¶
EwiCatalog.csv
と.mdファイルを追加し、ドキュメントを再編成しました。pyspark.sql.functions.ln
Directのマッピングステータスを追加しました。pyspark.context.SparkContext.getOrCreate
用の変換を追加しました。詳細は EWI SPRKPY1080 をご確認ください。
関数内のパラメーターの型推論、 SymbolTable を改善しました。
静的メソッドの SymbolTable サポートを追加し、最初のパラメーターが自身であると仮定しないように動作を更新しました。
不足していた EWIs のドキュメントを追加しました。
SPRKHVSQL1005
SPRKHVSQL1006
SPRKSPSQL1005
SPRKSPSQL1006
SPRKSCL1002
SPRKSCL1170
SPRKSCL1171
SPRKPY1057
SPRKPY1058
SPRKPY1059
SPRKPY1060
SPRKPY1061
SPRKPY1064
SPRKPY1065
SPRKPY1066
SPRKPY1067
SPRKPY1069
SPRKPY1070
SPRKPY1077
SPRKPY1078
SPRKPY1079
SPRKPY1101
変更済み¶
以下のマッピングステータスを更新しました:
pyspark.sql.functions.array_remove
をNotSupported
からDirect
へ。
修正済み¶
詳細レポートのCode File Sizingテーブルを修正し、.sqlと.hqlファイルを除外し、テーブルにExtra Large行を追加しました。
SparkSession
がPython
で複数行に定義されている場合にupdate_query_tag
が欠落していたのを修正しました。SparkSession
がScala
で複数行に定義されている場合にupdate_query_tag
が欠落していたのを修正しました。いくつかの SQL ステートメントで解析エラーが発生した場合に、 EWI
SPRKHVSQL1001
が欠落していたのを修正しました。文字列リテラル内の改行値を保持するように修正しました
File Type Summaryテーブルに表示されるコード行数を修正しました
ファイル認識に成功した場合、解析スコアが0と表示されていた問題を修正しました
Databricks Magic SQL セルのセルインベントリで LOC のカウントを修正しました。
2024年9月26日¶
アプリケーションバージョン2.2.0 version-2.2.0-prpr-sept-16-2024¶
機能アップデートは以下の通りです:
Snowpark Conversion Core 4.6.0
Snowpark Conversion Core Version 4.6.0¶
追加済み¶
pyspark.sql.readwriter.DataFrameReader.parquet
の変換を追加。pyspark.sql.readwriter.DataFrameReader.option
がParquetメソッドである場合の変換を追加しました。
変更済み¶
以下のマッピングステータスを更新しました:
pyspark.sql.types.StructType.fields
をNotSupported
からDirect
へ。pyspark.sql.types.StructType.names
をNotSupported
からDirect
へ。pyspark.context.SparkContext.setLogLevel
をWorkaround
からTransformation
へ。詳細は EWIs SPRKPY1078 および SPRKPY1079 をご覧ください
org.apache.spark.sql.functions.round
をWorkAround
からDirect
へ。org.apache.spark.sql.functions.udf
をNotDefined
からTransformation
へ。詳細は EWIs SPRKSCL1174 および SPRKSCL1175 をご覧ください
以下のSpark要素のマッピングステータスを
DirectHelper
からDirect
に更新しました:org.apache.spark.sql.functions.hex
org.apache.spark.sql.functions.unhex
org.apache.spark.sql.functions.shiftleft
org.apache.spark.sql.functions.shiftright
org.apache.spark.sql.functions.reverse
org.apache.spark.sql.functions.isnull
org.apache.spark.sql.functions.unix_timestamp
org.apache.spark.sql.functions.randn
org.apache.spark.sql.functions.signum
org.apache.spark.sql.functions.sign
org.apache.spark.sql.functions.collect_list
org.apache.spark.sql.functions.log10
org.apache.spark.sql.functions.log1p
org.apache.spark.sql.functions.base64
org.apache.spark.sql.functions.unbase64
org.apache.spark.sql.functions.regexp_extract
org.apache.spark.sql.functions.expr
org.apache.spark.sql.functions.date_format
org.apache.spark.sql.functions.desc
org.apache.spark.sql.functions.asc
org.apache.spark.sql.functions.size
org.apache.spark.sql.functions.locate
org.apache.spark.sql.functions.ntile
修正済み¶
Pandas Api全体のパーセンテージに表示される値を修正しました
DetailReport の ImportCalls テーブルの合計パーセンテージを修正しました
非推奨¶
以下の EWI コードは非推奨となりました:
SPRKSCL1115
2024年9月12日¶
アプリケーションバージョン2.1.7¶
機能アップデートは以下の通りです:
Snowpark Conversion Core 4.5.7
Snowpark Conversion Core 4.5.2
Snowpark Conversion Core Version 4.5.7¶
ホットフィックスで修正済み¶
Spark Usages Summariesにおいて、使用数がない場合に合計行が追加される問題を修正しました。
Pythonアセンブリのバージョンを
1.3.111
にバンプしました複数行引数の後続カンマの解析
Snowpark Conversion Core Version 4.5.2¶
追加済み¶
pyspark.sql.readwriter.DataFrameReader.option
用の変換を追加しました:チェーンが CSV メソッド呼び出しからの場合。
チェーンが JSON メソッド呼び出しからの場合。
pyspark.sql.readwriter.DataFrameReader.json
用の変換を追加しました。
変更済み¶
Python/Scala関数に渡された SQL 文字列に対して SMA を実行しました
Scala/Pythonで AST を作成し、仮の SQL ユニットを生成
SqlEmbeddedUsages.csvインベントリを作成
SqlStatementsInventroy.csvおよび SqlExtractionInventory.csvを廃止
SQL リテラルが処理できなかった場合に EWI を統合
SQL が埋め込まれたコードを処理する新しいタスクを作成
Pythonで SqlEmbeddedUsages.csvインベントリの情報を収集
Pythonで SQL 変換コードをリテラルに置換
実装後のテストケースを更新
SqlEmbeddedUsages インベントリにテレメトリー用のテーブルと表示を作成
Scalaで SqlEmbeddedUsages.csvレポートの情報を収集
Scalaで SQL 変換コードをリテラルに置換
埋め込み SQL レポートの行番号順を確認
SqlFunctionsInfo.csv
に、 SparkSQL と HiveSQL に対して文書化された SQL 関数を追加次のマッピングステータスを更新しました:
org.apache.spark.sql.SparkSession.sparkContext
を NotSupported からTransformationへ。org.apache.spark.sql.Builder.config
をNotSupported
からTransformation
へ。この新しいマッピングステータスにより、 SMA はソースコードからこの関数の使用をすべて除します。
2024年9月5日¶
アプリケーションバージョン2.1.6¶
Snowpark Engines Core version 4.5.1に対するホットフィックスの変更
Spark Conversion Core Version 4.5.1¶
ホットフィックス
エクスポートされたDatabricksノートブックに、 SMA によって生成された一時的なDatabricksノートブックを変換するメカニズムを追加しました
2024年8月29日¶
アプリケーションバージョン2.1.5¶
機能アップデートは以下の通りです:
Spark Conversion Coreの更新: 4.3.2
Spark Conversion Core Version 4.3.2¶
追加済み¶
ノートブックセルで識別された要素の行と列を取得する(装飾による)メカニズムを追加しました。
pyspark.sql.functions.from_jsonの EWI を追加しました。
pyspark.sql.readwriter.DataFrameReader.csvの変換を追加しました。
Scalaファイルのクエリタグメカニズムを有効にしました。
コード分析スコアと詳細レポートへのリンクを追加しました。
InputFilesInventory.csvに OriginFilePath 列を追加しました。
変更済み¶
pyspark.sql.functions.from_jsonのマッピングステータスをNot SupportedからTransformationに更新しました。
以下のSpark要素のマッピングステータスをWorkaroundからDirectに更新しました:
org.apache.spark.sql.functions.countDistinct
org.apache.spark.sql.functions.max
org.apache.spark.sql.functions.min
org.apache.spark.sql.functions.mean
非推奨¶
以下の EWI コードを非推奨としました:
SPRKSCL1135
SPRKSCL1136
SPRKSCL1153
SPRKSCL1155
修正済み¶
Spark API スコアの計算に誤りがあったバグを修正しました。
出力フォルダー内の SQL の空のファイルやコメント付きファイルのコピーを回避するエラーを修正しました。
ノートブックの統計 LOC とセル数が正確でなかった DetailedReport のバグを修正しました。
2024年8月14日id-4.2.0---2024-08-06¶
アプリケーションバージョン2.1.2¶
機能アップデートは以下の通りです:
Spark Conversion Coreの更新: 4.2.0
Spark Conversion Core Version 4.2.0¶
追加済み¶
技術列を SparkUsagesInventory に追加
定義されていない SQL 要素に対して EWI を追加しました。
SqlFunctions インベントリを追加しました
SqlFunctions インベントリの情報を収集
変更済み¶
このエンジンは、元のファイルを修正せずに残す代わりに、部分的に解析されたPythonファイルを処理して表示するようになりました。
Pythonノートブックのセルの解析エラーも処理され、表示されます。
修正済み¶
pandas.core.indexes.datetimes.DatetimeIndex.strftime
が誤って報告されていたのを修正しました。サポートステータス別の SQL レディネススコアと SQL 使用状況の不一致を修正。
SMA が
pandas.core.series.Series.empty
を不正なマッピングステータスで報告する原因となっていたバグを修正しました。DetailedReport.docxのSpark API Usages Ready for ConversionとAssessment.jsonの UsagesReadyForConversion 行の不一致を修正しました。
2024年8月8日¶
アプリケーションバージョン2.1.1¶
機能アップデートは以下の通りです:
Spark Conversion Coreの更新: 4.1.0
Spark Conversion Core バージョン 4.1.0¶
追加済み¶
AssessmentReport.json
ファイルに以下の情報を追加しました。サードパーティライブラリのレディネススコア。
識別されたサードパーティライブラリ呼び出しの数。
Snowparkでサポートされているサードパーティライブラリの呼び出しの数。
サードパーティレディネススコア、Spark API レディネススコア、 SQL レディネススコアに関連付けられた色コード。
Sparkで
SqlSimpleDataType
を変換するとテーブルが作成されます。pyspark.sql.functions.get
のマッピングをDirectとして追加しました。pyspark.sql.functions.to_varchar
のマッピングをDirectとして追加しました。統一後の変更の一部として、ツールはエンジンに実行情報ファイルを生成するようになりました。
pyspark.sql.SparkSession.builder.appName
のリプレイサーを追加しました。
変更済み¶
以下のSpark要素のマッピングステータスを更新しました。
Not SupportedからDirectマッピングへ:
pyspark.sql.functions.sign
pyspark.sql.functions.signum
Notebooks Cells Inventory(ノートブックセルインベントリ)レポートを変更し、Element(要素)列内のすべてのセルのコンテンツの種類を示すようにしました。
Scalaファイル内のSpark API への参照のみに関連するレディネススコアを報告する
SCALA_READINESS_SCORE
列を追加しました。ALTER TABLE
およびALTER VIEW
でテーブルプロパティを変換する部分サポートSparkt create tablesでノード
SqlSimpleDataType
の変換ステータスを保留中から変換に更新しましたSMA のSnowpark Scala API 対応バージョンを
1.7.0
から1.12.1
に更新しました以下のマッピングステータスを更新しました:
org.apache.spark.sql.SparkSession.getOrCreate
をRenameからDirectへorg.apache.spark.sql.functions.sum
をWorkaroundからDirectへ
SMA のSnowpark Python API 対応バージョンを
1.15.0
から1.20.0
に更新しました以下のマッピングステータスを更新しました:
pyspark.sql.functions.arrays_zip
をNot SupportedからDirectへ
以下のPandas要素のマッピングステータスを更新しました:
Directマッピング:
pandas.core.frame.DataFrame.any
pandas.core.frame.DataFrame.applymap
以下のPandas要素のマッピングステータスを更新しました:
Not SupportedからDirectマッピングへ:
pandas.core.frame.DataFrame.groupby
pandas.core.frame.DataFrame.index
pandas.core.frame.DataFrame.T
pandas.core.frame.DataFrame.to_dict
Not SupportedからRenameマッピングへ
pandas.core.frame.DataFrame.map
以下のPandas要素のマッピングステータスを更新しました:
Directマッピング:
pandas.core.frame.DataFrame.where
pandas.core.groupby.generic.SeriesGroupBy.agg
pandas.core.groupby.generic.SeriesGroupBy.aggregate
pandas.core.groupby.generic.DataFrameGroupBy.agg
pandas.core.groupby.generic.DataFrameGroupBy.aggregate
pandas.core.groupby.generic.DataFrameGroupBy.apply
Not Supportedマッピング:
pandas.core.frame.DataFrame.to_parquet
pandas.core.generic.NDFrame.to_csv
pandas.core.generic.NDFrame.to_excel
pandas.core.generic.NDFrame.to_sql
以下のPandas要素のマッピングステータスを更新しました:
Directマッピング:
pandas.core.series.Series.empty
pandas.core.series.Series.apply
pandas.core.reshape.tile.qcut
EWI を使ったDirectマッピング:
pandas.core.series.Series.fillna
pandas.core.series.Series.astype
pandas.core.reshape.melt.melt
pandas.core.reshape.tile.cut
pandas.core.reshape.pivot.pivot_table
以下のPandas要素のマッピングステータスを更新しました:
Directマッピング:
pandas.core.series.Series.dt
pandas.core.series.Series.groupby
pandas.core.series.Series.loc
pandas.core.series.Series.shape
pandas.core.tools.datetimes.to_datetime
pandas.io.excel._base.ExcelFile
Not Supportedマッピング:
pandas.core.series.Series.dt.strftime
以下のPandas要素のマッピングステータスを更新しました:
Not SupportedからDirectマッピングへ:
pandas.io.parquet.read_parquet
pandas.io.parsers.readers.read_csv
以下のPandas要素のマッピングステータスを更新しました:
Not SupportedからDirectマッピングへ:
pandas.io.pickle.read_pickle
pandas.io.sql.read_sql
pandas.io.sql.read_sql_query
「SQL レディネススコアの理解」の説明を更新しました。
PyProgramCollector
を更新し、Pythonソースコードからパッケージを収集し、現在のパッケージインベントリにデータを入力するようにしました。pyspark.sql.SparkSession.builder.appName
のマッピングステータスをRenameからTransformationに更新しました。以下のScala統合テストを削除しました。
AssesmentReportTest_AssessmentMode.ValidateReports_AssessmentMode
AssessmentReportTest_PythonAndScala_Files.ValidateReports_PythonAndScala
AssessmentReportTestWithoutSparkUsages.ValidateReports_WithoutSparkUsages
pandas.core.generic.NDFrame.shape
のマッピングステータスをNot SupportedからDirectに更新しました。pandas.core.series
のマッピングステータスをNot SupportedからDirectに更新しました。
非推奨¶
org.apache.spark.sql.functions.sum
がDirectマッピングになったため、 EWI コードSPRKSCL1160
を非推奨としました。
修正済み¶
Jupyter Notebookのセルで引数のないカスタムマジックをサポートしないバグを修正しました。
解析エラーが発生した場合に、issues.csvレポートの EWIs が正しく生成されない問題を修正しました。
SMA がDatabricksノートブックとしてDatabricksがエクスポートしたノートブックを処理しない原因となっていたバグを修正しました
パッケージオブジェクトの内部で作成された宣言のタイプ名が衝突する処理中のスタックオーバーフローエラーを修正しました。
例えば
def func[X,Y](f: (Map[Option[X], Y] => Map[Y, X]))...
など、ジェネリックを含む複雑なラムダ型名の処理を修正しましたまだ認識されていないPandas要素に SMA がPandas EWI コードではなく PySpark EWI コードを追加してしまうバグを修正しました。
詳細レポートのテンプレートのタイプミスを修正しました。列の名前を「Percentage of all Python Files」から「Percentage of all files」に変更しました。
pandas.core.series.Series.shape
が誤って報告されるバグを修正しました。