å€ãã® AWS ã®ã客æ§ã¯ãã¢ãŒããã¯ãã£ãã¢ããã€ãºãããªãŒãã³ãœãŒã¹ããŒã¿ããŒã¹ã«ç§»è¡ãå§ããŠããŸãã Babelfish for Aurora PostgreSQL ã䜿çšãããšãSQL Server ãã Amazon Aurora PostgreSQL Compatible ãšãã£ã·ã§ã³ ãžã®ã¢ããªã±ãŒã·ã§ã³ã®ç§»è¡ã容æã«ãªããŸããBabelfish ã§ã¯ãAurora PostgreSQL Compatible ã¯äžè¬çã«äœ¿çšããã T-SQL èšèªãšã»ãã³ãã£ã¯ã¹ããµããŒããããããã¢ããªã±ãŒã·ã§ã³å
ã®ããŒã¿ããŒã¹åŒã³åºãã«é¢é£ããã³ãŒã倿Žã®éãæžããããšãã§ããŸãã ãã®æçš¿ã§ã¯ã AWS Database Migration Service (AWS DMS) ã䜿çšããããŒã¿ç§»è¡ãå«ããMicrosoft SQL Server ããŒã¿ããŒã¹ã Babelfish ã«ç§»è¡ããæ¹æ³ã瀺ããç§»è¡ã«ã¯ SQL Server Northwind ãµã³ãã«ããŒã¿ããŒã¹ ã䜿çšããŸããããã«ãããã€ãã®äžè¬çãªåé¡ãšãã®è§£æ±ºæ¹æ³ã«ã€ããŠãæ€èšããŸãã Babelfish æŠèŠ æ®µéçãªç§»è¡ããã»ã¹ã説æããåã«ãBabelfish ã®ã¢ãŒããã¯ãã£ãèŠãŠã¿ãŸããããBabelfish ã¯ãT-SQL ã³ãŒããã¯ã©ã€ã¢ã³ãã®æ¥ç¶ãã©ã€ããŒãžã®å€æŽãæå°éã«æã㊠SQL Server ã¢ããªã±ãŒã·ã§ã³ã Aurora PostgreSQL Compatible ã«ç§»è¡ããããã®ç§»è¡ã¢ã¯ã»ã©ã¬ãŒã¿ãŒã§ããããã«ãããã©ã€ã»ã³ã¹ãååŸããç¬èªã®ãªã³ãã¬ãã¹ããŒã¿ããŒã¹ãããŒãžã¡ã³ãã·ã¹ãã (DBMS) ããã¯ã©ãŠãå
ã®ãªãŒãã³ãœãŒã¹ DBMS ãžã®ç§»è¡ãå¯èœã«ãªããã¢ããã€ãŒãŒã·ã§ã³ãžã®éãéããŸãã Babelfishã¯ãPostgreSQL ã SQL Server çšã«äœæãããã¢ããªã±ãŒã·ã§ã³ããã®ã¯ãšãªãçè§£ããæ©èœãæäŸããŸããBabelfish 㯠SQL Server ã¯ã€ã€ãããã³ã«ãš SQL Server ã®ã¯ãšãªèšèªã§ãã T-SQL ãçè§£ããŠããã®ã§ãããŒã¿ããŒã¹ãã©ã€ããåãæ¿ããããã¢ããªã±ãŒã·ã§ã³ã¯ãšãªããã¹ãŠæžãçŽãããããå¿
èŠã¯ãããŸãããæ¬¡ã®å³ã«ç€ºãããã«ãSQL Server æ¥ç¶ã©ã€ãã©ãªã䜿ã£ã TDS æ¥ç¶ãšæšæºã® PostgreSQL æ¥ç¶ãäœæã§ããŸãã Babelfish ã®å©ç¹ã¯æ¬¡ã®ãšããã§ãã æ¢åã®ã¯ãšãªãä¿æ â èšèªæ¡åŒµã«ãã Aurora PostgreSQL Compatible ã§ T-SQL ãšé£æºã§ããããã«ãªããŸãã ç§»è¡ãå é â ç§»è¡ãããæ©ãå®äºã§ãããããæ°ãæããæ°å¹Žã®äœæ¥ãç¯çŽã§ããŸãã ã€ãããŒã·ã§ã³ã®èªç± â T-SQL ã³ãŒãããªãŒãã³ãœãŒã¹ã®æ©èœãšäžŠè¡ããŠå®è¡ãã䜿ãæ
£ããããŒã«ã䜿çšããŠéçºãç¶ããããšãã§ããŸãã ãœãªã¥ãŒã·ã§ã³æŠèŠ Babelfish ãžã®ãã€ã°ã¬ãŒã·ã§ã³ã®å€§ãŸããªæé ã¯æ¬¡ã®ãšããã§ãã DDL ãçæãã Babelfish Compass ããŒã«ã䜿çšããŠåæãå®è¡ããŸããDDL ã¯æ¬¡ã®ãªãã·ã§ã³ã䜿çšããŠçæã§ããŸãã SQL Server Management Studio (SSMS) ã䜿çšããŠããŒã¿ããŒã¹ã¹ããŒãããšã¯ã¹ããŒãããã Babelfish Compass v.2023-08 以éã§ã¯ãåæãå¿
èŠãª SQL Server ããŒã¿ããŒã¹ã® DDL çæã Compass ããªãã·ã§ã³ã§çŽæ¥å®è¡ããããšãå¯èœã Babelfish extension ã䜿çšã㊠Aurora PostgreSQL ã€ã³ã¹ã¿ã³ã¹ãäœæããŸãã ããŒã 1433 ã«å¯Ÿã㊠DDL ã¹ã¯ãªãããå®è¡ããŠãBabelfish ã®ã¹ããŒããåäœæããŸãã AWS DMS ã䜿çšã㊠SQL Server ãã Babelfish ã«ããŒã¿ãç§»è¡ããSQL Server ã§ã¯ãªã Babelfish TDS ããŒãã«æ¥ç¶ããããã«ã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ãåèšå®ããŸãã ããã¯ãšã³ãã Babelfish ã§ãã .NET ã¢ããªã±ãŒã·ã§ã³ã®å Žåãã¢ããªã±ãŒã·ã§ã³ã³ãŒãã倿Žããå¿
èŠã¯ã»ãšãã©ãããŸããã Babelfish ã§ãµããŒããããŠããªãæ©èœ ã«ã€ããŠã¯ãã¢ããªã±ãŒã·ã§ã³ã³ãŒãã倿Žããå¿
èŠããããŸãã 以äžã®ã»ã¯ã·ã§ã³ã§ã¯ãSQL Server ãã Babelfish for Aurora PostgreSQL ã«ç§»è¡ããããã®ã¹ããããã€ã¹ãããã®è©³çްã説æããŸãã Babelfish Compass ã¢ã»ã¹ã¡ã³ãããŒã« Babelfish Compass ã¯ãWindowsãMacãLinuxã§åäœããBabelfish ãšã®äºææ§ãè©äŸ¡ããã¹ã¿ã³ãã¢ãã³ããŒã«ã§ãããã®ããŒã«ã¯ DDL ã³ãŒããš SQL ã³ãŒãã調ã¹ããµããŒããããŠããæ©èœãšãµããŒããããŠããªãæ©èœããã¹ãŠäžèŠ§è¡šç€ºãã詳现ãªã¬ããŒããæäŸããŸãã Babelfish Compass ãã€ã³ã¹ããŒã«ããŠå®è¡ããã«ã¯ãæ¬¡ã®æé ãå®è¡ããŠãã ããã Babelfish Compass ã®ææ°ããŒãžã§ã³ (.zip ãã¡ã€ã«) ã GitHub ããããŠã³ããŒãããŠãã ããã ãã¡ã€ã«ãå¿
èŠãªãã©ã«ãã«è§£åããŸãããã®ãã©ã«ããŒã«ã¯ 3 ã€ã® zip ãã¡ã€ã«ããããŸãã BabelfishCompass_V.2023-08.zip ãšãããã¡ã€ã«ãè§£åããå¿
èŠããããŸãã Babelfish Compass ã«ã¯ 64 ããã Java/JRE 8 以éãå¿
èŠã§ããCompass ã¬ããŒããå®è¡ããåã«ã€ã³ã¹ããŒã«ããå¿
èŠããããŸãã CMD (Windows) ãéããzip ãã¡ã€ã«ãè§£åãããã¹ã«ç§»åããŸãã ã€ã³ã¹ããŒã«ã確èªããã«ã¯ã -help ãªãã·ã§ã³ãæå®ã㊠BabelfishCompass ãå®è¡ããŸãã BabelfishCompass -help Bash Northwind ããŒã¿ããŒã¹ã® Compass ã¬ããŒãã®çæ Compass ããŒã«æ©èœã䜿çšããŠãCompass v.2023-08 以éã§ DDL ãçæããŸãããã®ãªãã·ã§ã³ã¯ãSQL Server ã«å€æ°ã® SQL Server ã€ã³ã¹ã¿ã³ã¹ãŸãã¯ããŒã¿ããŒã¹ãååšããå Žåã«äŸ¿å©ã§ããCompass ã« DDL çæãå®è¡ãããã«ã¯ã次ã®ã³ãã³ãã©ã€ã³ãªãã·ã§ã³ãæå®ããå¿
èŠããããŸãããã®åŸãCompass 㯠SQL Server ã«æ¥ç¶ã㊠DDL ãã¡ã€ã«ãçæããçæããããã¡ã€ã«ã«å¯Ÿã㊠Compass è§£æãå®è¡ããŸãã -sqlendpoint â SQL Server ã®ãã¹ãåãŸã㯠IP ã¢ãã¬ã¹ããªãã·ã§ã³ã§ããŒãçªå·ãæå®ããããšãã§ããŸã (ããšãã°ã10.123.45.67,1433 ã mybigbox,1433)ã -sqllogin â SQL Server ã«æ¥ç¶ããããã®ãã°ã€ã³åãDDL ãçæããæš©éãåŸãã«ã¯ãéåžžããã®ãã°ã€ã³ã sysadmin ããŒã«ã®ã¡ã³ããŒã§ããå¿
èŠããããŸãã -sqlpasswd â 察å¿ãããã¹ã¯ãŒãã -sqldblist â ããã¯ãªãã·ã§ã³ã§ããçç¥ããããall ãæå®ãããšããµãŒããŒå
ã®ãã¹ãŠã®ãŠãŒã¶ãŒããŒã¿ããŒã¹ã« DDL ãçæãããŸãããããã¯ãããŒã¿ããŒã¹åãã³ã³ãã§åºåã£ããªã¹ããæå®ããããšãã§ããŸãã DDL çæã®é床ã¯ãSQL Server ãšã®ãããã¯ãŒã¯äžã®è·é¢ã«å€§ããäŸåããŸããæéãããããããå Žåã¯ã CTRL+C ã䜿çšããŠããã»ã¹ããã£ã³ã»ã«ããSSMS ã䜿çšããŠæåã§ DDL çæãè¡ããšãåŠçãéããªãå ŽåããããŸãã BabelfishCompass Northwind-report5 -sqlendpoint < endpoint > -sqllogin < login > -sqlpasswd < password > -sqldblist Northwind -optimistic -reportoptions xref -rewrite Bash äžèšã®ã¹ã¯ãªããã¯ãBabelfish compass ã¬ããŒããçæããããã©ã«ãã§ã¯ãŠãŒã¶ãŒã® Documents\\ BabelfishCompass ãã©ã«ããŒã«ä¿åãããŸãããŸãããã®ã¹ã¯ãªããã¯ãæå®ããããŒã¿ããŒã¹ããšã«åå¥ã® DDL ãã¡ã€ã«ãçæãã以äžã®ã¹ã¯ãªãŒã³ã·ã§ããã®ããã«ã³ã³ãã¥ãŒã¿ã® TEMP ãã£ã¬ã¯ããªã«ä¿åããŸãã compass ã¬ããŒããçæããä»ã®ãªãã·ã§ã³ã¯ãæåã« SSMS ã䜿çšã㊠DDL ãçæããBabelfish compass ã³ãã³ããå®è¡ããŠã¬ããŒããçæããããšã§ãã詳现ã«ã€ããŠã¯ãã Babelfish Compass ã Deep Dive ãã ããåç
§ããŠãã ããã çµæã®åæ ç§»è¡äœæ¥å
šäœãè©äŸ¡ããã«ã¯ãæåã«ã¬ããŒãã®äžéšã«ããæŠèŠã»ã¯ã·ã§ã³ã確èªããããšã§ãããã®ã»ã¯ã·ã§ã³ã«ã¯ããªããžã§ã¯ãã®æ°ãš SQL ã³ãŒãã®è¡æ°ãå ±åãããŠããŸããããã«ãããã¢ããªã±ãŒã·ã§ã³ãã©ãã»ã©å€§ãããã©ãã ãã®åŽåãå¿
èŠããã²ãšç®ã§ããããŸãã --- Report Setup --------------------------------------------------------------- BabelfishFeatures.cfg file : v.3.2.0, Jun-2023 Target Babelfish version : v.3.2.0 (PG 15.3) Command line arguments : Northwind-report SMOTest -sqlendpoint ****** -sqllogin **** -sqlpasswd ******** -sqldblist Northwind DDL input files : Northwind_SMO_DDL_2023-Aug-10.sql DDL input files location : C:\Users\ADMINI~1\AppData\Local\Temp\2\CompassAutoDDL-2023-Aug-10-01.36.40 User .cfg file (overrides) : C:\Users\Administrator\Documents\BabelfishCompass\BabelfishCompassUser.cfg Report name : Northwind-report This report : C:\Users\Administrator\Documents\BabelfishCompass\Northwind-report\report-Northwind-report-bbf.3.2.0-2023-Aug-10-01.37.18.html Session log : log\session-log-Northwind-report-bbf.3.2.0-2023-Aug-10-01.36.40.html ================================================================================ -------------------------------------------------------------------------------- --- Executive Summary for Babelfish v.3.2.0 ------------------------------------ -------------------------------------------------------------------------------- Total #lines of SQL/DDL: 1272 #Procedures/functions/triggers/views: 23 #Tables: 13 SQL features not supported by Babelfish : 127 Estimated complexity of not-supported features: medium:127 -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- --- Applications Analyzed (1) -------------------------------------------------- -------------------------------------------------------------------------------- Back to Table of Contents Northwind (1272 lines SQL) -------------------------------------------------------------------------------- --- Assessment Summary --------------------------------------------------------- -------------------------------------------------------------------------------- Back to Table of Contents #applications : 1 #input files : 1 #SQL batches : 350 #lines SQL/DDL processed : 1272 #lines SQL in objects : 208 (procedures/functions/triggers/views) total #SQL features : 1208 Supported : 750 Not Supported : 0 Review Semantics : 45 Ignored : 413 Overridden by user .cfg file (C:\Users\Administrator\Documents\BabelfishCompass\BabelfishCompassUser.Optimistic.cfg): Ignored (was: Not Supported) : 129 -------------------------------------------------------------------------------- --- Object Count --------------------------------------------------------------- -------------------------------------------------------------------------------- Back to Table of Contents DATABASE : 1 LOGIN : 51 PROCEDURE : 7 (72 lines SQL) without issues: 7 of 7: list TABLE : 13 (144 columns) without issues: 13 of 13: list VIEW : 16 (136 lines SQL) without issues: 16 of 16: list constraint CHECK : 8 constraint FOREIGN KEY : 13 constraint PRIMARY KEY : 13 index : 26 user-defined datatype (UDD), scalar : 3 HTML 次ã«ããNot SupportedïŒãµããŒã察象å€ïŒãããReview ManuallyïŒæåã¬ãã¥ãŒïŒãããReview Semantics(ã»ãã³ãã£ã¯ã¹ã®ç¢ºèªïŒãããReview PerformanceïŒããã©ãŒãã³ã¹ã®ç¢ºèªïŒãããIgnoredïŒç¡èŠïŒãã®ãSQL æ©èœã®æŠèŠãã»ã¯ã·ã§ã³ã«çç®ããŸãã åé¡ã«åºã¥ããŠãèããããåé¿çãéçºããããç§»è¡ãããã¢ããªã±ãŒã·ã§ã³ã«å¿
èŠã®ãªãæ©èœãã¹ã±ãŒã«ããŠã³ããŠç§»è¡ã®ã¹ã³ãŒããçããŸããç§»è¡ã®ã¹ã³ãŒããçããã«ã¯ãéçºè
ãšã¢ããªã±ãŒã·ã§ã³ãªãŒããŒã®ååãå¿
èŠã§ããã³ãã³ãã§ Optimistic ãªãã·ã§ã³ã䜿çšãããšãäžéšã®ã³ãã³ãã Not Supported ã§ã¯ãªã Ignored ã®äžã«äžèŠ§è¡šç€ºãããŸãã Optimistic ãªãã·ã§ã³ãªãã§ã¬ããŒããçæãããšã以äžã®æ©èœã¯ãµããŒã察象å€ãšããŠã¬ããŒããããŸããæé©åãªãã·ã§ã³ã§ç¡èŠãããæ©èœã¯ãã¢ããªã±ãŒã·ã§ã³ãç§»è¡ããç®çã§ã¯éåžžã¯ç¡èŠã§ããŸãã Optimistic ãªãã·ã§ã³ã䜿çšã㊠Northwind ã¹ããŒãã® compass ã¬ããŒããçæããå ŽåããµããŒããããŠããªãæ©èœã¯ãªãããšã«æ³šæããŠãã ããã -------------------------------------------------------------------------------- --- SQL features 'Ignored' in Babelfish v.3.2.0 --- (total=413) ---------------- -------------------------------------------------------------------------------- Back to Table of Contents DDL (286/14) Option ALLOW_PAGE_LOCKS=ON, constraint PRIMARY KEY, in CREATE TABLE : 13 Option ALLOW_PAGE_LOCKS=ON, Index, in CREATE INDEX : 26 Option ALLOW_ROW_LOCKS=ON, constraint PRIMARY KEY, in CREATE TABLE : 13 Option ALLOW_ROW_LOCKS=ON, Index, in CREATE INDEX : 26 Option DROP_EXISTING=OFF, Index, in CREATE INDEX : 26 Option IGNORE_DUP_KEY=OFF, constraint PRIMARY KEY, in CREATE TABLE : 13 Option ONLINE=OFF, Index, in CREATE INDEX : 26 Option OPTIMIZE_FOR_SEQUENTIAL_KEY=OFF, constraint PRIMARY KEY, in CREATE TABLE : 13 Option OPTIMIZE_FOR_SEQUENTIAL_KEY=OFF, Index, in CREATE INDEX : 26 Option PAD_INDEX=OFF, constraint PRIMARY KEY, in CREATE TABLE : 13 Option PAD_INDEX=OFF, Index, in CREATE INDEX : 26 Option SORT_IN_TEMPDB=OFF, Index, in CREATE INDEX : 26 Option STATISTICS_NORECOMPUTE=OFF, constraint PRIMARY KEY, in CREATE TABLE : 13 Option STATISTICS_NORECOMPUTE=OFF, Index, in CREATE INDEX : 26 Permissions (39/2) ALTER AUTHORIZATION ON object TO SCHEMA OWNER : 36 ALTER AUTHORIZATION ON TYPE TO SCHEMA OWNER : 3 Users (88/4) ALTER SERVER ROLE processadmin ADD MEMBER : 1 ALTER SERVER ROLE setupadmin ADD MEMBER : 1 Login option CHECK_EXPIRATION, in CREATE LOGIN : 43 Login option CHECK_POLICY, in CREATE LOGIN : 43 HTML Babelfish for Aurora PostgreSQL ã¯ã©ã¹ã¿ãŒã®çæ Babelfish ã¯ã©ã¹ã¿ãŒã®äœæã¯ Aurora PostgreSQL ã¯ã©ã¹ã¿ãŒã®äœæãšã»ãŒåãã§ããBabelfish for Aurora PostgreSQL 㯠Aurora PostgreSQL ããŒãžã§ã³ 13.4 以éã§ãµããŒããããŠããããããµããŒããããŠããããŒãžã§ã³ãéžæã㊠Babelfish ã®èšå®ã»ã¯ã·ã§ã³ã§ãBabelfish ããªã³ã«ãããã«ãã§ãã¯ããŸãã Babelfish ã¯ã©ã¹ã¿ãŒãäœæãããšãã¯ãç§»è¡ãããåäžã® T-SQL ãŠãŒã¶ãŒããŒã¿ããŒã¹ã䜿çšããããç§»è¡ããè€æ°ã® T-SQL ãŠãŒã¶ãŒããŒã¿ããŒã¹ãäžç·ã«äœ¿çšããããéžæããŸãã single-db ãæå®ããå ŽåãBabelfish ã§ã¯ 1 ã€ã® T-SQL ããŒã¿ããŒã¹ããäœæã§ãããT-SQL ã¹ããŒã㯠Babelfish ããŒã¿ããŒã¹ã§ã¯éåžžã® PostgreSQL ã¹ããŒããšããŠäœæãããŸãããã«ãããŒã¿ããŒã¹ã¢ãŒãã§ã¯ãPostgreSQL ããã¢ã¯ã»ã¹ãããšããŠãŒã¶ãŒããŒã¿ããŒã¹ã®ã¹ããŒãå㯠dbname_schemaname ã«ãªããŸããT-SQL ããã¢ã¯ã»ã¹ãããšã¹ããŒãåã¯åããŸãŸã§ãã詳现ã«ã€ããŠã¯ãã 1 ã€ã®ããŒã¿ããŒã¹ãŸãã¯è€æ°ã®ããŒã¿ããŒã¹ã§ã® babelfish ã®äœ¿çš ããåç
§ããŠãã ããã Babelfish ã¯ã©ã¹ã¿ãŒå
ã®è€æ°ã® T-SQL ãŠãŒã¶ãŒããŒã¿ããŒã¹ããµããŒãããããããç§»è¡ã¢ãŒãã«ã¯ multi-db ã䜿çšããããšããå§ãããŸããã¯ã©ã¹ã¿ãŒã®äœæåŸã«ãã®å€ã倿Žããããšã¯ã§ããªããããæå㯠T-SQL ãŠãŒã¶ãŒããŒã¿ããŒã¹ã 1 ã€ããå¿
èŠãªãå Žåã§ãæè»æ§ãæãããã»ããããã§ãã SQL Server ã«è¿ãç¶æ
ã«ããŠããããã«ããã©ã€ããªãŠãŒã¶ãŒåãšã㊠sa ãéžæã§ããŸãã Babelfish ã¯ã©ã¹ã¿ãŒãäœæãããšããªãŒããŒãšã©ã€ã¿ãŒãšãã 2 ã€ã®ãšã³ããã€ã³ããæäŸãããç°ãªãããŒãã§ PostgreSQL ãš T-SQL ã®äž¡æ¹ããµããŒããããŸãã Babelfish ã¯ã©ã¹ã¿ãŒãžã®æ¥ç¶ 次ã®ã¹ãããã¯ãBabelfish ã¯ã©ã¹ã¿ãŒãšã®æ¥ç¶ã確ç«ããSQL Server Management Studio (SSMS) ã䜿çšããŠæ°ããããŒã¿ããŒã¹ã«ã¹ããŒããäœæããããšã§ããSSMS 㯠SQL Server ã«æ¥ç¶ããããã® GUI ããŒã¹ã®ã¯ã©ã€ã¢ã³ãããŒã«ã§ããªããžã§ã¯ããšã¯ã¹ãããŒã©ãŒã«ãããªããžã§ã¯ãã®è¡šç€ºãšã¹ã¯ãªããäœæã¯éå®çã«ãµããŒããããŠããŸãã Babelfish ãšã³ããã€ã³ãã¯ã©ã¹ã¿ãŒãšèªèšŒæ
å ±ãå
¥åãã[æ¥ç¶] ãéžæããŸãã SSMS ã§ DDL ã¹ã¯ãªãããå®è¡ãã Babelfish ã®ã¹ããŒãã®åäœæ Babelfish ã§ã¹ããŒããåäœæããã«ã¯ã以äžã®æé ã«åŸã£ãŠãã ããã æ¬¡ã®ã¯ãšãªã䜿çšããŠãBabelfish ãš Aurora PostgreSQL ã®ããŒãžã§ã³ã確èªããŠãã ããã -- Check your version SELECT SERVERPROPERTY ( 'babelfishversion' ) AS BabelfishVersion , aurora_version ( ) AS AuroraPostgreSQLVersion , @ @VERSION AS ClassicSQLServerVersion GO SQL Babelfish ã®ãšã¹ã±ãŒãããããç¡èŠããããã«èšå® â Babelfish ã¯å¯èœãªéããå¶åŸ¡ãããŒãšãã©ã³ã¶ã¯ã·ã§ã³ç¶æ
ã® SQL åäœãæš¡å£ããŸããBabelfish ã¯ãšã©ãŒã«ééãããšãSQL Server ã®ãšã©ãŒã³ãŒããšåæ§ã®ãšã©ãŒã³ãŒããè¿ããŸãã倱æããå¯èœæ§ã®ããã¹ããŒãã¡ã³ããåŠçããããã«ãBabelfish ã§ã¯ãšã¹ã±ãŒãããããšåŒã°ããç¹å®ã®ãªãã·ã§ã³ãå®çŸ©ããŠããŸãããšã¹ã±ãŒããããã¯ããµããŒããããŠããªãæ©èœãæ§æã«ééãããšãã® Babelfish ã®åäœãæå®ãããªãã·ã§ã³ã§ãã以äžã®ã¹ããŒãã¡ã³ãã䜿çšããŠããã¹ãŠã®ãšã¹ã±ãŒãããããå³å¯ãªåäœãç¡èŠããããã«èšå®ããŸãã EXECUTE sp_babelfish_configure '%' , 'ignore' , 'server' ; GO SQL Northwind ããŒã¿ããŒã¹ãäœæããT-SQL ã«ã¿ãã°ãã¥ãŒã䜿çšããŠæ€èšŒããŸãã -- T-SQL catalog views to display databases SELECT * FROM sys . databases ; GO SQL -- T-SQL catalog views to display databases SELECT * FROM sys . databases ; GO SQL Babelfish ãš PostgreSQL éã®ã¹ããŒããããã³ã°ã確èªããŠãã ããããã®æ
å ±ã¯ãããŒã¿ããŒãçšã® DMS ã¿ã¹ã¯ãäœæããã®ã«åœ¹ç«ã¡ãŸãã SELECT pg . dbname AS BabelfishDBName , be . orig_name AS SchemaName , pg . nspname AS PGSchemaNameForDMS , pg . oid , SCHEMA_ID ( be . orig_name ) AS MapsToPGOID FROM sys . pg_namespace_ext AS pg INNER JOIN sys . babelfish_namespace_ext AS be ON pg . nspname = be . nspname WHERE dbname = DB_NAME ( ) ORDER BY SchemaName ; SQL Babelfish ã¯ã©ã¹ã¿ãŒã«éžæãã multi-db ãŸã㯠single-db æ§æã«å¿ããŠãç°ãªãçµæã衚瀺ãããŸããããã¯ãPostgreSQL ããããã®ãªãã·ã§ã³ããšã«ããŒã¿ããŒã¹åãšã¹ããŒãåãå
éšçã«ç°ãªãæ¹æ³ã§ãããã³ã°ããããã§ãã multi-db ã® Babelfish ã¯ã©ã¹ã¿ãŒã®çµæ: single-db ã® Babelfish ã¯ã©ã¹ã¿ãŒã®çµæ: 宿ããã¹ã¯ãªãããå®è¡ããŠãBabelfish ã§ã¹ããŒããªããžã§ã¯ããäœæããŸãã Babelfish ã¯çŸåšãDMS ã§ã® BYTEA ããŒã¿åã䜿çšãããã€ããªãVARBINARYãããã³ IMAGE ããŒã¿åã®ç§»è¡ããµããŒãããŠããŸããNorthwind ããŒã¿ããŒã¹ã¹ã¯ãªããã倿ŽããŠãä»»æã® IMAGE ããŒã¿åã BYTEA ã«å€æŽããŠãã ãããå
ã® Northwind ããŒã¿ããŒã¹ã§ã¯ãã«ããŽãªããŒãã«ã® Picture å㯠IMAGE ããŒã¿åã䜿çšããEmployee ããŒãã«ã® Photo å㯠IMAGE ããŒã¿åã䜿çšããŸããæåŸã®ã¹ã¯ãªããã§ã¯ã以äžã®ããã«æ€çŽ¢ããŠçœ®æããŸãã [ image ] with [ bytea ] /* [ image ] */ Bash ããŒãã«ã«ãã©ã€ããªããŒãšãŠããŒã¯ããŒã®ã¿ã䜿çšããŠã¹ã¯ãªãããå®è¡ãããšãããŒã¿ããŒãããã»ã¹ãé«éåãããããŒã¿ããŒãããã»ã¹ãçµäºããã远å ã®ã€ã³ããã¯ã¹ãšå¶çŽãäœæã§ããŸãã 以äžã®ã¹ã¯ãªããã䜿çšããŠãåã®ã¹ãããã§äœæããããŒãã«ãæ€èšŒããŸãã --using T-SQL view SELECT * FROM sys . tables ; SQL AWS DMS ã䜿çšãã SQL Server ãã Babelfish ãžã®ããŒã¿ç§»è¡ AWS DMS ããŒãžã§ã³ 3.5.1 ã§ã¯ãBabelfish ãã€ããŒããŒãžã§ã³ 14.8 ããã³ 15.3 以éã® Aurora PostgreSQL ã®ãµããŒãããŒã¿ã¿ã€ãã®ãµããŒãã匷åãããŠããŸããSQL Server ãœãŒã¹ãšã³ããã€ã³ããš Aurora PostgreSQL ã¿ãŒã²ãããšã³ããã€ã³ãã§ DMS ã®äœ¿çšãéå§ããæ¹æ³ã¯æ¬¡ã®ãšããã§ãã AWS DMS ã³ã³ãœãŒã«ã§ãã¯ãŒã¯ããŒãã«å¿ããŠã€ã³ã¹ã¿ã³ã¹ã®ãµã€ãºãéžæã㊠ã¬ããªã±ãŒã·ã§ã³ã€ã³ã¹ã¿ã³ã¹ãäœæ ããŸãã ãœãŒã¹ãšã³ããã€ã³ããšã¿ãŒã²ãããšã³ããã€ã³ã ãäœæããŸãã ãœãŒã¹ãšã³ããã€ã³ã â ãœãŒã¹ãšã³ããã€ã³ã㯠SQL Server ãæããŠããå¿
èŠããããŸãã ã¿ãŒã²ãããšã³ããã€ã³ã â Aurora PostgreSQL ã¿ãŒã²ãããšã³ããã€ã³ã 㯠Babelfish ã«ããŒã¿ãç§»è¡ããããã®æšå¥šæ¹æ³ã§ããAWS DMS ã³ã³ãœãŒã«ãAPIããŸã㯠CLI ã³ãã³ãã䜿çšã㊠AWS DMS ã¿ãŒã²ãããšã³ããã€ã³ããäœæãããšãã¯ã次ã®ç¹ã«æ³šæããŠãã ããã ã¿ãŒã²ãããšã³ãžã³ã Amazon Aurora PostgreSQL ãšããŠæå®ããŸãã ããŒã¿ããŒã¹ã« babelfish_db ãšããååãä»ããŸãã ãšã³ããã€ã³ãèšå®ã»ã¯ã·ã§ã³ã§ã DatabaseMode ã Babelfish ã«ã BabelfishDatabaseName ãã¿ãŒã²ããã® Babelfish T-SQL ããŒã¿ããŒã¹ã®ååã«æå®ããèšå®ã远å ããŸãããã€ããŒããŒãžã§ã³ 15.3 ããã³ 14.8 ããåã® Aurora PostgreSQL ã§ Babelfish ã䜿çšããŠããå Žåã¯ããããã®ãšã³ããã€ã³ãèšå®ã䜿çšããªãã§ãã ããã ã¬ããªã±ãŒã·ã§ã³ã¿ã¹ã¯ãäœæ ããŠéå§ããã¿ãŒã²ããããŒã¿ããŒã¹ã«æå®ãããããŒãã«ã®ããŒã¿ãããŒãããŸããAWS DMS ãšã³ããã€ã³ããšããŠã® Babelfish ã®è©³çްã«ã€ããŠã¯ãã AWS Database Migration Service ã®ã¿ãŒã²ãããšããŠã® Babelfish ã®äœ¿çš ããåç
§ããŠãã ããã Northwind ããŒã¿ããŒã¹ãç§»è¡ããããã®ã¿ã¹ã¯èšå®ã¯æ¬¡ã®ãšããã§ãã ã¿ãŒã²ããããŒãã«ã®æºå -ãäœãããªããããã®ã¢ãŒãã§ã¯ãAWS DMS ã¯ã¿ãŒã²ããããŒã¿ããŒã¹ã倿ŽããŸãããBabelfish 3.2.0 ããã³ 2.5.0 ãªãªãŒã¹ã® DMS 3.5.1 ã®æ°æ©èœã掻çšããã«ã¯ããã« LOB ã¢ãŒããéžæããå¿
èŠããããŸãã ããŒãã«ãããã³ã°ã«ãŒã« â ã¹ããŒãåã âdboâããœãŒã¹ããŒãã«åã â%â ã®ãã㪠dbo ã¹ããŒãã®ãã¹ãŠã®ããŒãã«ããŸãã¯ãœãŒã¹ SQL Server ããŒã¿ããŒã¹ã®ç¹å®ã®ããŒãã«ãå«ããã«ã¯ã次ã®ã«ãŒã«ã远å ããŸãã 倿ã«ãŒã« â multi-db ãŸã㯠single-db æ§æã«å¿ããŠå¿
èŠãªå€æã«ãŒã«ã¯æ¬¡ã®ãšããã§ãã multi-db ã¢ãŒãã䜿çšããå Žåã¯ãã䜿ãã® PostgreSQL ã¹ããŒãã§ãã northwind_dbo ãšäžèŽããããã« dbo ã¹ããŒãã®ååã倿ŽããŠãã ããã ã©ã¡ãã®ã¢ãŒãã§ããããŒãã«ã®ååãå°æåã«å€æŽããŸãã以äžã®ã¹ã¯ãªãŒã³ã·ã§ããã¯å€æã«ãŒã«ã瀺ããŠããŸãã ããŒãã«çµ±èšã確èªããŠãããŒã¿ã®ããŒãã確èªããŸããDMS ã¬ããªã±ãŒã·ã§ã³ã¿ã¹ã¯ãæ£åžžã«å®äºãããšãããŒãã«çµ±èšã衚瀺ã§ããŸãã ãããã¯ãããŒã¿ããŒã¹ã«ã¯ãšãªãå®è¡ããŠããŒã¿ãæ€èšŒããããšãã§ããŸãã SELECT TOP 10 * FROM categories ORDER BY [ CategoryID ] SQL BYTEA ããŒã¿åã IMAGE ã«æ»ã â ã»ãšãã©ã®ã¢ããªã±ãŒã·ã§ã³ã¯ BYTEA ã§æ£åžžã«åäœããŸãããIMAGE ã«æ»ãå¿
èŠãããå Žåã¯ã以äžã®ã¹ã¯ãªããã䜿çšã㊠IMAGE ããŒã¿åã®æ°ããåã远å ããã®åã«ããŒã¿ãã³ããŒããŠããå
ã®åãåé€ããæåŸã«å
ã®ååãšäžèŽããããã«ååã倿ŽããŸãã ALTER TABLE [ dbo ] . [ Categories ] ADD [ PictureImage ] IMAGE NULL ; UPDATE [ dbo ] . [ Categories ] SET [ PictureImage ] = [ Picture ] ; SELECT [ CategoryID ] , CASE WHEN CAST ( [ Picture ] AS Image ) = [ PictureImage ] THEN 'Match' ELSE 'No Match' END AS [ Compare ] FROM [ dbo ] . [ Categories ] ; ALTER TABLE [ dbo ] . [ Categories ] DROP COLUMN [ Picture ] ; -- Rename column EXEC sp_rename 'categories.pictureimage' , 'Picture' , 'COLUMN' ; SQL DMS ããããŒã¿ãèªã¿èŸŒãã åŸãIDENTITY åããªã»ããããŸããSQL Server ã§ã¯ãIDENTITY åãäž»ããŒã«äœ¿çšããããå€ã®èªåã€ã³ã¯ãªã¡ã³ããå¿
èŠãªãã®ä»ã®åã䜿çšãããããã®ãäžè¬çã§ããIDENTITY åãŸã㯠SERIAL ããŒã¿åã䜿çšããããŒãã«ãå«ãããŒã¿ãç§»è¡ãããã以äžã®ã¹ã¯ãªããã䜿çšããŠåã®æå€§å€ã«åºã¥ã㊠PostgreSQL ããŒã¹ã®ã·ãŒã±ã³ã¹ãªããžã§ã¯ãããªã»ããããŸãã -- following T-SQL query to generate statements to seed the associated sequence object. USE Northwind ; GO DECLARE @schema_prefix NVARCHAR ( 200 ) = '' IF current_setting ( 'babelfishpg_tsql.migration_mode' ) = 'multi-db' SET @schema_prefix = db_name ( ) + '_' SELECT 'SELECT setval(pg_get_serial_sequence(''' + @schema_prefix + schema_name ( tables . schema_id ) + '.' + tables . name + ''', ''' + columns . name + ''') ,(select max(' + columns . name + ') from ' + schema_name ( tables . schema_id ) + '.' + tables . name + '));' FROM sys . tables tables JOIN sys . columns columns ON tables . object_id = columns . object_id WHERE columns . is_identity = 1 UNION ALL SELECT 'SELECT setval(pg_get_serial_sequence(''' + @schema_prefix + table_schema + '.' + table_name + ''', ''' + column_name + '''),(select max(' + column_name + ') from ' + table_schema + '.' + table_name + '));' FROM information_schema . columns WHERE column_default LIKE 'nextval(%' ; SQL 次ã®ã¹ããŒãã¡ã³ãã¯ãåã®ã¯ãšãªã«ãã£ãŠçæãããŸããNorthwind ããŒã¿ããŒã¹ã«å¯ŸããŠå®è¡ããŠãã ããã -- Generated statements SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.categories' , 'categoryid' ) , ( select max ( categoryid ) from dbo . categories ) ) ; SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.employees' , 'employeeid' ) , ( select max ( employeeid ) from dbo . employees ) ) ; SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.orders' , 'orderid' ) , ( select max ( orderid ) from dbo . orders ) ) ; SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.products' , 'productid' ) , ( select max ( productid ) from dbo . products ) ) ; SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.shippers' , 'shipperid' ) , ( select max ( shipperid ) from dbo . shippers ) ) ; SELECT setval ( pg_get_serial_sequence ( 'northwind_dbo.suppliers' , 'supplierid' ) , ( select max ( supplierid ) from dbo . suppliers ) ) ; SQL SSMS ã®ã¹ã¯ãªããçæãŠã£ã¶ãŒãã䜿çšããŠã次ã®ããã«äœæã¹ã¯ãªãããåçæããŸãã ããŒã¿ããŒã¹ããŒãã«ã ãã®ã¹ã¯ãªãããäœæããŠããã§ãã¯å¶çŽãã€ã³ããã¯ã¹ãããªã¬ãŒãªã©ãå¥ã®ãã¡ã€ã«ã«å«ããŸããããŒãã«ã¯ãã§ã«ç§»è¡ãããŠããã®ã§ãããŒãã«äœæã»ã¯ã·ã§ã³ãã³ã¡ã³ãã¢ãŠãããŠãã ãããæçµçãªã¹ã¯ãªããã«ã¯ãã€ã³ããã¯ã¹ãå¶çŽãããªã¬ãŒã®ã¿ãå«ããå¿
èŠããããŸããBabelfish ã¯ã©ã¹ã¿ãŒå
ã® Northwind ããŒã¿ããŒã¹ã«å¯ŸããŠã¹ã¯ãªãããå®è¡ããŸãã ãã¥ãŒã ãã®ã¹ã¯ãªãããäœæããBabelfish ã¯ã©ã¹ã¿ãŒã® Northwind ããŒã¿ããŒã¹ã«å¯ŸããŠå®è¡ããŸãã ã¹ãã¢ãããã·ãŒãžã£ã ãã®ã¹ã¯ãªãããäœæãããµããŒããããŠããªãæ©èœãä¿®æ£ããŠãBabelfish ã¯ã©ã¹ã¿ãŒã® Northwind ããŒã¿ããŒã¹ã«å¯ŸããŠå®è¡ããŸãã ç§»è¡ã®åé¡ãšè§£æ±ºç ãã®ã»ã¯ã·ã§ã³ã§ã¯ã以åã®ç§»è¡äœæ¥ã§ã客æ§ã«èŠããããããŒãžã§ã³ 3.2 ã® Babelfish ã®åé¡ç¹ãšèãããã解決çã«ã€ããŠèª¬æããŸãã ã¹ãã¢ãã»ããã·ãŒãžã£ããã³ã¹ãã¢ãã»ãã¡ã³ã¯ã·ã§ã³ã§ãµããŒããããŠããªãæ©èœ ã¢ããªã±ãŒã·ã§ã³ã®ãã¹ããããæ©ãéå§ããããã®æ¹æ³ã® 1 ã€ã¯ããµããŒããããŠããªãã¹ãã¢ãããã·ãŒãžã£æ¬äœãã³ã¡ã³ãã¢ãŠãããäŸå€ãæããããšã©ãŒãçºçããããããããšã§ããã¹ãã¢ãããã·ãŒãžã£ã®ã·ã°ãã㣠(ååãå
¥åãåºå) ã¯åŒãç¶ãç¶æãããŸããçè«çã«ã¯ããã©ã¡ãŒã¿åãããæ£èŠè¡šçŸ (ã°ã«ãŒããã£ããã£ä»ã) ãæžããŠãããè¡ãããšãã§ããŸãã以äžã«äŸãæããŸãã ããã«ããããµããŒããããŠããªãæ©èœã®ãµãã»ãããåå ã§ãè§£æ±ºã«æéããããå¯èœæ§ãããäžéšã®ãã¹ãäœæ¥ãäžæããããšãªãããµããŒããããŠããªãåé¡ãåãåããåå¥ã«ãªãªãŒã¹ããŠä¿®æ£ããããšãã§ããŸãã ãã©ãã«ã·ã¥ãŒãã£ã³ã°ã¯ãšãª ããã¯ãBabelfish ãžã®ç§»è¡åŸã«æãããçºçããåé¡ã§ãããããã®åé¡ã®å€ãã¯ãSQL Server ãš PostgreSQL ã®éã§ç°ãªãã€ã³ããã¯ã¹æŠç¥ãåå ã§ããããšãå€ããPostgreSQL åŽã® EXPLAIN ANALYZE ãŸã㯠SET BABELFISH_STATISTICS PROFILE ã䜿çšããŠèšºæã§ããŸãã ããããåé¡ã¯ãè¿°èª (predicate) ã®åã«åŒãããå Žåã§ã SQL Server ã¯ã€ã³ããã¯ã¹ä»ãåã䜿çšã§ããããPostgreSQL ã§ã¯äœ¿çšã§ããªããšãããã®ã§ãã解決çã¯ãPostgreSQL ã§è¿°èªåŒãšäžèŽããåŒã€ã³ããã¯ã¹ãäœæããããšã§ããã¯ãšãªãåæããããã€ã³ããã¯ã¹ãš JOIN æ¡ä»¶ãé©åã§ããããšã確èªããŠãèããããä¿®æ£ãé©çšããŠãã ãããæ¬¡ã®ã³ãŒãã䜿çšããŠãã ããã SET BABELFISH_STATISTICS PROFILE {ON|OFF} ã䜿çšããŠãã¹ããŒãã¡ã³ãã®å®è¡ã«äœ¿çšãããã¯ãšãªãã©ã³ã衚瀺ããŸã SET BABELFISH_SHOWPLAN_ALL {ON|OFF} ã䜿çšãããšãã³ãã³ããå®è¡ããã«ã¹ããŒãã¡ã³ãã®æšå®èª¬æãã©ã³ã衚瀺ã§ããŸãã æ¬¡ã®äŸã§ã¯ã BABELFISH_SHOWPLAN_ALL ãã¢ã¯ã»ã¹ãã¹ãã€ã³ããã¯ã¹ã¹ãã£ã³ïŒååšããå ŽåïŒãããã³æäœã®ã³ã¹ãã®è©³çްãæäŸããããã©ãŒãã³ã¹ãã¥ãŒãã³ã°ã«åœ¹ç«ã¡ãŸãã SET BABELFISH_STATISTICS PROFILE ON GO SELECT * FROM test a JOIN test2 b ON a . a = b . a WHERE b . c = 'A926' SQL ãã®äŸã§ã¯ãããã©ãŒãã³ã¹ãåäžãããããã«ãå c ã® test2 ã«ã€ã³ããã¯ã¹ãäœæããŸããããã¯å®è¡èšç»ã«åæ ãããæäœã®ã³ã¹ããåæžãããŸãã CREATE INDEX ix_test_1 ON test2 ( c ) ; SQL 詳现ã«ã€ããŠã¯ãã ã¯ãšãªãã©ã³ã®ã¬ãã¥ãŒ ããåç
§ããŠãã ããã çµ±èšæ
å ±ã®æŽæ° ããŒã¿ããŒã¹ãªããžã§ã¯ãã®çµ±èšæ
å ±ã¯ãã¯ãšãªã®ããã©ãŒãã³ã¹ã«ãšã£ãŠéèŠã§ããããŒã¿ããŒã¹ãªããã£ãã€ã¶ãŒã¯ããããã®çµ±èšæ
å ±ã䜿çšããŠæé©ãªå®è¡ãã©ã³ã決å®ãããããããŒã¿ååŸã«äœ¿çšããŸãã ãã®èšäºã®å·çæç¹ã§ã¯ãBabelfish ã§ã¯çµ±èšæ
å ±ã®åéãšæŽæ°ã¯ãµããŒããããŠããŸãããåé¿çãšããŠãPostgreSQL ã®æ©èœã䜿çšããŠããŒãã«ã®çµ±èšæ
å ±ãååŸããŠãã ããã SQL Server command â UPDATE STATISTICS PostgreSQL command â ANALYZE 詳现ã«ã€ããŠã¯ã ANALYZE ãåç
§ããŠãã ããã ããŒãã«ã€ã³ããã¯ã¹ã®åæ§ç¯ ã€ã³ããã¯ã¹ã¯ã¯ãšãªã®ããã©ãŒãã³ã¹ã«ãšã£ãŠéèŠã§ããT-SQL ã§ã¯ãã€ã³ããã¯ã¹ã®åäœæã« DBCC ã³ãã³ããŸã㯠ALTER INDEX ã³ãã³ãã®ããããã䜿çšããŸãã DBCC DBREINDEX ( 'northwind . dbo . employeesâ ) ; ALTER INDEX ALL ON northwind . dbo . employees REBUILD ; SQL ãããã®ã³ãã³ã㯠Babelfish ã§ã¯ãµããŒããããŠããŸããã代ããã«ãPostgreSQL æ¥ç¶ãã PostgreSQL ã¹ããŒãã¡ã³ã REINDEX TABLE ã䜿çšã§ããŸãã REINDEX TABLE dbo . employeesâ ; SQL 詳现ã«ã€ããŠã¯ãã ããŒãã«ã€ã³ããã¯ã¹ã®åæ§ç¯ ããåç
§ããŠãã ããã Babelfishã§ã¯ãµããŒããããŠããªãã³ãŒãæ©èœ Babelfish 颿°ãŸãã¯ã³ãŒãæ§æãš SQL Server ã«ã¯ããã€ãã®éãããããŸããæ¬¡ã®è¡šã¯ãåé¿çã®äŸãããã€ã瀺ããŠããŸãã SQL Feature Babelfish Workaround MERGE æ Compass ã¬ããŒãæžãæããªãã·ã§ã³ã䜿çšãããšãMERGE ã¹ããŒãã¡ã³ãã®åé¿çãçæãããŸãã -MERGE ã UPDATE ã«çœ®ãæããå¿
èŠã«å¿ããŠæ¿å
¥ã远å ããŸãã UPDATE LOCATIONS SET LocationName=S.LocationName FROM Locations T, Locations_stage S WHERE T.LocationID=S.LocationID AND ( T.LocationID =3 ) EOMONTH () ãªã©ã®æ¥ä»é¢æ° ãµããŒããããŠããªãæ¥ä»é¢æ°ã®ã»ãšãã©ã¯ãDATEADD ã DATEPART ãªã©ã䜿çšãã Compass rewrite ãªãã·ã§ã³ã§æžãæããããŸãã PIVOT clause SUM (WHENâŠ) å¥ã䜿çšããŠã¹ããŒãã¡ã³ããæžãçŽããŸãã UPDATE, WITH (Common Table Expression) as target ãã®ã¹ããŒãã¡ã³ã㯠Babelfish ã§ã¯ãµããŒããããŠããŸãããå¿
èŠãªãã¹ãŠã®æ¡ä»¶ã WHERE å¥ã«å
¥åããŠãããšã«ãªãããŒãã«ã«å¯Ÿã㊠UPDATE ã¹ããŒãã¡ã³ããæåã§æžãæããŸãã DBCC commands DBCC ã¯ãããŒã¿ããŒã¹ã¡ã³ããã³ã¹ã®ããã® SQL Server ãã€ãã£ãã³ãã³ãã§ããBabelfish ã®åºç€ãšãªãããŒã¿ããŒã¹ã§ãã PostgreSQL ããŒã¿ããŒã¹ãšã³ãžã³ã¯ DBCC ããµããŒãããŠããªããããBabelfish ã®å Žå㯠PostgreSQL ã³ãã³ããç¹å®ã®ç®çã«äœ¿çšããŠãã ããã DEFAULT ãã©ã¡ãŒã¿å€ã䜿çšããããã·ãŒãžã£ãŸãã¯é¢æ°ãåŒã³åºã Babelfishã¯ãããã·ãŒãžã£ãŸãã¯é¢æ°åŒã³åºãã§ã® DEFAULT ããŒã¯ãŒãããµããŒãããŠããŸãããCompass ã¯ãDEFAULT ããŒã¯ãŒãã®ä»£ããã«å®éã®ããã©ã«ããã©ã¡ãŒã¿å€ã䜿çšããŠåŒã³åºããæžãæããŸããæ¬¡ã«äŸã瀺ããŸãã âBefore rewrite dbo.stored_procedure_1( @variable1, parameter_value, DEFAULT, DEFAULT, DEFAULT) âAfter Babelfish Compass rewrite dbo.stored_procedure_1( @variable1, parameter_value, /*REWRITTEN*/ 'N/A' /*DEFAULT*/, /*REWRITTEN*/ NULL /*DEFAULT*/, /*REWRITTEN*/ 0 /*DEFAULT*/) ãŸãšã ãã®æçš¿ã§ã¯ãBabelfish Compass ããŒã«ãš AWS DMS ã®äœ¿çšãå«ããSQL Server ã¢ããªã±ãŒã·ã§ã³ã Babelfish for Aurora PostgreSQL ã«ç§»è¡ããæé ã瀺ããŸããããµããŒããããŠããªãæ©èœã®è©³çްãç¥ãããã«ãBabelfish Compass ã¬ããŒãã§æ³šç®ãã¹ãã»ã¯ã·ã§ã³ã«ã€ããŠèª¬æããŸããããŸããAWS DMS ã䜿çšã㊠Babelfish ã¯ã©ã¹ã¿ãŒã«ããŒã¿ãããŒãããæ¹æ³ã®è©³çްã瀺ããŸãããæåŸã«ãBabelfish ã®ç§»è¡ãå éãããã®ã«åœ¹ç«ã€äžè¬çãªç§»è¡åé¡ãšãèãããã解決çã«ã€ããŠèª¬æããŸããã AWS Babelfish ããŒã ã¯ã補åãç¶ç¶çã«æ¹åãã宿çã«æ°æ©èœã远å ããŠããŸãã ææ°ã®æ¹åç¹ ã«ã€ããŠã¯ãååæããšã«ãªãªãŒã¹ããã Babelfish for Aurora PostgreSQL ã®ã¢ããããŒãã確èªããŠãã ããã Babelfish for Aurora PostgreSQL ã®è©³çްã«ã€ããŠã¯ãã Babelfish for Aurora PostgreSQL ããåç
§ããŠãã ããã 翻蚳ã¯ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ãã®Yoshinori Sawada ãæ
åœããŸããã åæ ã¯ãã¡ãã§ãã èè
ã«ã€ã㊠Amit Arora ã¯ãAWS ã§ããŒã¿ããŒã¹ãšåæãå°éãšãããœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ãã§ããéèãã¯ãããžãŒãäžçã®ãšãã«ã®ãŒåéã®ã客æ§ãAWS èªå®ããŒãããŒãšååããŠãã¯ã©ãŠãç§»è¡ãããžã§ã¯ãã«é¢ããæè¡æ¯æŽã顧客ãœãªã¥ãŒã·ã§ã³ã®èšèšãè¡ããã客æ§ãæ¢åã®ããŒã¿ããŒã¹ã AWS ã¯ã©ãŠãã«ç§»è¡ããŠè¿ä»£åã§ããããæ¯æŽããŠããŸãã