QUESTO SITO UTILIZZA COOKIE: continuando a navigare questo sito, accettate l’utilizzo di cookie.
Consultate le pagine Informative sulla Privacy e sui Cookie per ulteriori dettagli.

Intelligent, Custom and Highly Automated Cross Platform Database and Application Migration


Migrare da MySQL a SAP HANA

Fate la migrazione da MySQL a SAP HANA usando Ispirer Migration and Modernization Toolkit!

SAP HANA

Ispirer Systems si sforza di eseguire la migrazione di database di alta qualità. Sviluppiamo il nostro tool Ispirer MnMTK nel modo che permetta di soddisfare pienamente le esigenze di business dei nostri clienti.

Questa presentazione demo dimostra come il tool Ispirer MnMTK esegue la conversione di database da MySQL a SAP HANA:



Perchè Ispirer MnMTK 2015 per migrazione da MySQL a SAP HANA?

I nostri vantaggi principali:

  • 100% Automazione di tutte le 3 Fasi
    • Fase 1: Migrazione di database schema/DDL, logica di business lato server (procedure, trigger, ecc.);
    • Fase 2: Trasferimento e verifica di dati;
    • Fase 3: Conversione di codice delle applicazioni front-end e SQL script/query;
  • Prezzi flessibili: offriamo una vasta gamma di opzioni, tra i quali troverete sicuramente quella che serve meglio a voi;
  • Customizzazione rapida: personalizziamo il nostro tool nel modo che permetta a soddisfare pienamente le esigenze di business dei nostri clienti, conversioni personalizzate e ottimizzazioni sono realizzati entro 1-2 giorni lavorativi;
  • Pre-Sales Collaborazione: dimostriamo la conversione completa durante la valutazione prima che prenderete la decisione finale.
  • Conversione ottimizzata: dopo la conversione riceverete il codice facilmente gestito senza il middleware di Ispirer.

La Presentazione Live

Ispirer Soluzione di Migrazione

MySQL verso SAP HANA

Richiedere

Richiedi un Preventivo

Ispirer Soluzione di Migrazione

MySQL verso SAP HANA

Servizi Toolkit

Caratteristiche del tool per migrazione da MySQL a SAP HANA

Il tool può migrare seguenti oggetti di un database verso SAP HANA:

  • Stored procedure, funzioni e trigger
  • Schema (DDL)
  • Indici e viste
  • Trasferimento di dati

Conversione di DDL:

  • Converte definizioni di colonne - tipi di dati, valori di default, restrizioni NOT NULL
  • Converte le chiavi primarie ed esterne

MySQL:

CREATE TABLE product_description (
  `ID` INT(11) NOT NULL,
  `CATEID` INT(11) DEFAULT NULL,
  `LINEID` INT(11) DEFAULT NULL,
  `NAME` VARCHAR(50) DEFAULT NULL,
  `DESCRIPTION` VARCHAR(50) DEFAULT NULL,
  `CATENAME` VARCHAR(50) DEFAULT NULL,
  `CATEDESCRIPTION` VARCHAR(50) DEFAULT NULL,
  `LINENAME` VARCHAR(50) DEFAULT NULL,
  `LINEDESCRIPTION` VARCHAR(50) DEFAULT NULL,
  `PRODDATE` datetime DEFAULT NULL,
  PRIMARY KEY  (`ID`)
);
 

SAP HANA:

CREATE TABLE product_description 
(
   ID INTEGER  NOT NULL,
   CATEID INTEGER DEFAULT NULL,
   LINEID INTEGER DEFAULT NULL,
   NAME VARCHAR(50) DEFAULT NULL,
   DESCRIPTION VARCHAR(50) DEFAULT NULL,
   CATENAME VARCHAR(50) DEFAULT NULL,
   CATEDESCRIPTION VARCHAR(50) DEFAULT NULL,
   LINENAME VARCHAR(50) DEFAULT NULL,
   LINEDESCRIPTION VARCHAR(50) DEFAULT NULL,
   PRODDATE TIMESTAMP DEFAULT NULL,
   PRIMARY KEY(ID)
);
 

Conversione di stored procedure:

  • Converte la sintassi di procedure e istruzioni
  • Converte variabili e parametri
  • Converte commenti

MySQL:

CREATE PROCEDURE CursorProc (INOUT prod_list VARCHAR(4000))
BEGIN
 
    DECLARE v_finished INTEGER DEFAULT 0;
    DECLARE v_prod VARCHAR(100) DEFAULT "";
     DECLARE prod_cursor CURSOR FOR
           SELECT name FROM product_description;
    DECLARE CONTINUE HANDLER
        FOR NOT FOUND SET v_finished = 1;
     OPEN prod_cursor;
     get_prod: LOOP
         FETCH prod_cursor INTO v_prod;
         IF v_finished = 1 THEN
            LEAVE get_prod;
        END IF;
         SET prod_list = CONCAT(v_prod,";",prod_list);
     END LOOP get_prod;
    CLOSE prod_cursor;
 END;
 

SAP HANA:

CREATE PROCEDURE CursorProc(INOUT prod_list VARCHAR(4000))
LANGUAGE SQLSCRIPT
   AS
   v_finished  INTEGER DEFAULT 0;
   v_prod  VARCHAR(100) DEFAULT '';
 
   CURSOR prod_cursor FOR
   SELECT name FROM product_description;
 
BEGIN
 
   DECLARE EXIT HANDLER
   FOR NOT FOUND v_finished := 1;
   OPEN prod_cursor;
 
   LOOP
      FETCH prod_cursor INTO v_prod;
      IF :v_finished = 1 THEN
         BREAK;
      END IF;
      prod_list := :v_prod || ';';
   END LOOP;
 
   CLOSE prod_cursor;
 
END;
 

MySQL:

CREATE PROCEDURE `DropCreateTabProc`()
BEGIN
DROP TABLE IF EXISTS HANATEST.ProductLevel;
CREATE TABLE  ProductLevel(
  ID                              INT  ,
  PRODUCT                         INT  ,
  PRLEVEL                         INT  ,
  MINLEVEL                        INT  ,
  MAXLEVEL                        INT
);
END;
 

SAP HANA:

CREATE PROCEDURE DropCreateTabProc LANGUAGE SQLSCRIPT
   AS
   v_if_exists  INTEGER;
BEGIN
 
   v_if_exists := 0;
   SELECT COUNT(*) INTO v_if_exists FROM "PUBLIC"."M_TABLES"
 WHERE schema_name  = 'HANATEST' AND TABLE_NAME  = 'PRODUCTLEVEL';
   IF :v_if_exists > 0 THEN
      DROP TABLE ProductLevel;
   END IF;
 
   CREATE TABLE  ProductLevel
   (
      ID INTEGER,
      PRODUCT INTEGER,
      PRLEVEL INTEGER,
      MINLEVEL INTEGER,
      MAXLEVEL INTEGER
   );
 
END;
 

Conversione di funzioni memorizzate (Stored Functions):

  • Converte la sintassi e istruzioni
  • Converte variabili e parametri
  • Converte commenti

MySQL:

CREATE FUNCTION CurVarFunc(var INT)
 RETURNS INT(11)
BEGIN
 DECLARE var1 INT;
 DECLARE v_i CURSOR FOR SELECT employeeNumber FROM employees;
 DECLARE v_i1 CURSOR FOR SELECT employeeNumber FROM employees_audit;
 IF var = 1 THEN
 OPEN v_i;
 fetch v_i INTO var1;
 close v_i;
 END IF;
 IF var <> 1 THEN
 OPEN v_i1;
 fetch v_i1 INTO var1;
 close v_i1;
 END IF;
 RETURN var1;
END;
 

SAP HANA:

CREATE PROCEDURE CurVarFunc(OUT RETURNVAL INTEGER,var INTEGER)
LANGUAGE SQLSCRIPT
   AS
   var1  INTEGER;
   CURSOR v_i FOR SELECT employeeNumber FROM employees;
   CURSOR v_i1 FOR SELECT employeeNumber FROM employees_audit;
BEGIN
 
   IF :var = 1 THEN
      OPEN v_i;
      fetch v_i INTO var1;
      close v_i;
   END IF;
   IF :var != 1 THEN
      OPEN v_i1;
      fetch v_i1 INTO var1;
      close v_i1;
   END IF;
   RETURNVAL := :var1;
END;
 

Conversione di trigger:

MySQL:

CREATE TRIGGER before_employee_update 
BEFORE UPDATE ON employees FOR EACH ROW 
BEGIN
 
   INSERT INTO employees_audit(id, actionc, employeeNumber, lastname,
 changedon)
   VALUES (OLD.id, 'update', OLD.employeeNumber, OLD.lastname, NOW());
 
END;
 

SAP HANA:

CREATE TRIGGER before_employee_update
BEFORE UPDATE
ON employees
REFERENCING OLD ROW   OLD
FOR EACH ROW
BEGIN
 
INSERT INTO employees_audit
(id, actionc, employeeNumber, lastname, changedon)
 VALUES(:OLD.id, 'update', :OLD.employeeNumber, :OLD.lastname,
 CURRENT_TIMESTAMP);
 
END;
 


Contattateci per ulteriori informazioni.

 
Testimonianze
Verint, Regno Unito
Oracle verso Microsoft SQL Server, Regno Unito

Verint Global Consulting Services ha usato Ispirer SQLWays Wizard per migrare un database con più di 500GB per il cliente da Oracle verso...

...

TSS Consultancy, India
Microsoft SQL Server a Oracle

Tutto è cominciato con la ricerca della mia azienda di soluzioni per migrazione da SQL Server database verso Oracle. Le prove di più di 10 strumenti disponibili...

...

Casi Studio
Sybase ASE to Oracle and Sybase ASE to Microsoft SQL Server Migration, United Kingdom/United States

Our client was Global Investment Bank (GIB), a provider of investment banking advisory services. Besides financing, risk management, and corporate finance advisory services, it provides foreign...

...

Oracle to PostgreSQL Migration, Japan

In cooperation with our solution partner in Japan, Ispirer executed a short-term migration project for a subsidiary of a grand, reputed Tokyo-based telecommunications company. The subsidiary is...

...