Sas error sort execution failure

У меня есть база данных, размер которой после импорта в SAS составляет около 600 МБ. (Я использую OPTIONS COMPRESS = YES в начале моей программы) Затем я извлекаю несколько столбцов / переменных и получаю окончательную базу данных размером около 800 МБ. Окончательная база данных имеет 1929743 observ....

У меня есть база данных, размер которой после импорта в SAS составляет около 600 МБ.

(Я использую OPTIONS COMPRESS = YES в начале моей программы)

Затем я извлекаю несколько столбцов / переменных и получаю окончательную базу данных размером около 800 МБ.

Окончательная база данных имеет 1929743 observations

Что я хочу

Я хочу отсортировать данные в descending порядке PUBLICATION_DATE для каждой записи в столбце ITEM в моей окончательной базе данных

Мой код пока что

        PROC SORT DATA=newdb.access_db OUT= newdb.access_sorted; 
        BY ITEM DESCENDING PUBLICATION_DATE;
        RUN;

Ошибка, которую я получаю

ERROR: No disk space is available for the write operation.  Filename =
       C:UsersAB364273AppDataLocalTempSAS Temporary
       FilesSAS_util00010000204C_A00DVDPCSAS2007ut204C000008.utl.
ERROR: Failure while attempting to write page 134 of sorted run 11.
ERROR: Failure while attempting to write page 40544 to utility file 1.
ERROR: Failure encountered while creating initial set of sorted runs.
ERROR: Failure encountered during external sort.
ERROR: Sort execution failure.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: There were 1244486 observations read from the data set
      NEWDB.ACCESS_DB.
WARNING: The data set NEWDB.ACCESS_SORTED may be incomplete.  When this step was
         stopped there were 0 observations and 57 variables.
NOTE: PROCEDURE SORT used (Total process time):
      real time           2:17.20
      cpu time            14.66 seconds

Моя база данных не настолько велика, что должна появиться ошибка вроде отсутствия места на диске.

Также у меня много места на жестком диске (около 500 ГБ на диске, где я храню базу данных с помощью libname и 8 ГБ на диске C)

У меня оперативная память 4гб

Итак, со всем этим я не понимаю, почему появляется эта ошибка, и каким-либо образом я могу получить желаемый результат.

2 ответа

Лучший ответ

Если у вас свободно 8 ГБ на диске C, скорее всего, это ваша проблема.

Сортировка выполняется во временном (временном) файле, и этот файл может быть в в три раза больше исходного файла. По очевидным причинам он также должен быть на несжатых данных. Таким образом, если ваш несжатый файл имеет размер 3-4 ГБ, его нельзя будет отсортировать на диске 8 ГБ.

Вы можете решить эту проблему, переместив рабочее место на диск большего размера (или освободив место), или используя параметр TAGSORT, который сокращает использование служебных файлов за счет скорости (см. документация SAS для получения дополнительных сведений).

Вы также можете запросить его из отсортированной базы данных; это то, что я бы рекомендовал, если вы сортируете по полям в базе данных (а не по измененным полям). В большинстве случаев вам даже не нужно использовать proc sort; если база данных находится в libname db:

data access_sorted;
  set db.access_db_Table;
  by item descending publication_date;
run;

Это будет работать нормально и будет запрашивать его в отсортированном порядке прямо из базы данных.

Моей первой мыслью было то, что сказал @Joe, что в вашей рабочей библиотеке не хватает места, даже если в целом у вас есть место. Я не знаю ответа на этот вопрос, но является ли оператор ORDER BY в PROC SQL менее затратным с точки зрения требуемой временной памяти? Вы могли бы хотя бы попробовать.


0

Chris Umphlett
10 Авг 2018 в 11:14

ERROR: SORT EXECUTION FAILURE IN PROC SQL — SAS

Web Feb 7, 2018 The hash OUTPUT method will overwrite a SAS data set, but not append. That can be costly. Consider voting for Add a HASH object method which would append …
From communities.sas.com
Estimated Reading Time 4 mins


SAS MULTIPLE LARGE TABLES JOIN — ERROR: SORT EXECUTION …

Web Nov 4, 2014 SELECT t1.foo, (SELECT t2.bar FROM table t2 WHERE t1.key2 = t2.key2) as bar, (SELECT t3.bat FROM table t3 WHERE t1.key3 = t3.key3) as bat, . . . FROM table1 t1; This should eliminate any possible sort that would occur on table1. If the joins are …
From stackoverflow.com
Reviews 5


CONQUERING SCALABILITY IN A BIG DATA WORLD — MWSUG

Web Each of these techniques has pros and cons that are described extensively in SAS literature, and which will vary the procedure execution time, memory consumption, and …
From mwsug.org


‘ERROR: SORT EXECUTION FAILURE.’ — MARC

Web May 9, 2012 That is why I need fields from the DW tables as additional fields for HospDisch table records. Why system gave me «ERROR: Sort execution failure»? …
From marc.info


SAS (R) 9.3 LANGUAGE REFERENCE: CONCEPTS, SECOND EDITION

Web Execution-time errors are errors that occur when SAS executes a program that processes data values. Most execution-time errors produce warning messages or notes in the SAS …
From support.sas.com


‘ERROR: SORT EXECUTION FAILURE.’ THREAD — MARC

Web 1. 2012-05-09 Re: ERROR: Sort execution failure. sas-l Subhadra Srigirira 2. 2012-05-09 ERROR: Sort execution failure. sas-l Irin later Configure | About | News | Add a list | …
From marc.info


SAS HELP CENTER

Web Nov 4, 2019 SAS displays two error messages, one for the variable Item2 and one for the variable Item3. When you are running debugged production programs that are unlikely to …
From documentation.sas.com


SAS TRIGGER ERROR IN SAS PROGRAM EXECUTED FROM SAS-EG

Web Aug 22, 2019 SAS/Studio for example does not falsely mark the program lines that contain ERROR as if they were actual errors. Thanks @MichaelKersten Another neat trick for …
From stackoverflow.com


ERROR PROCESSING AND DEBUGGING: ERROR PROCESSING IN SAS

Web SAS displays two error messages, one for the variable Item2 and one for the variable Item3. When you are running debugged production programs that are unlikely to encounter …
From support.sas.com


COMMON ERROR MESSAGES IN SAS | SAS LEARNING MODULES

Web NOTE: The SAS System stopped processing this step because of errors. The var statement is not valid when used with proc freq. Change the statement to tables and the program …
From stats.oarc.ucla.edu


ERROR: SORT EXECUTION FAILURE IN PROC SQL — SAS

Web Mar 11, 2017 Re: ERROR: Sort execution failure in PROC SQL Posted 03-11-2017 07:17 AM (4618 views) | In reply to josephsas It’s all there: you used an invalid name for …
From communities.sas.com


ERROR PROCESSING AND DEBUGGING: TYPES OF ERRORS IN SAS

Web Execution-time errors are errors that occur when SAS executes a program that processes data values. Most execution-time errors produce warning messages or notes in the SAS …
From support.sas.com


45592 — SUMMARY TABLES ANALYSIS GENERATES ERROR: SORT …

Web ERROR: Sort execution failure. To circumvent this problem, you can edit the reporting variables and only include the reporting variables that have less distinct categories. You …
From support.sas.com


HOW TO SOLVE THE ERROR: SORT EXECUTION FAILURE — SAS

Web Aug 6, 2018 ERROR: Sort execution failure. Here’s my code: proc options group=memory; run; proc options option=(work utilloc) value; run; proc options …
From communities.sas.com


39705 — TROUBLESHOOTING «SORT INITIALIZATION FAILURE» AND …

Web The SAS® SORT and SQL procedures (PROC SORT and PROC SQL) might fail with these errors: ERROR: Sort initialization failure. ERROR: Sort execution failure. Common …
From support.sas.com


logo dvp

Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

  • Accueil
  • Forum
  • Logiciels
  • Solutions d’entreprise
  • Business Intelligence
  • SAS
  • SAS Base
  • [SQL] ERROR: Sort execution failure.

SAS Base

Sujet :

SAS Base

  1. 18/07/2012, 17h45


    #1

    MDsas est d�connect�


    Membre actif



    Par d�faut ERROR: Sort execution failure.

    Bonjour quelqu’un pourrais-t’il m’expliquer � quoi est d� cette erreur :
    ERROR: Sort execution failure.

    Le programme a d�j� march� pourquoi ca plante maintenant.
    Extrait de la LOG

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18

     
    MPRINT(SOUS_TRAITEMENT_DIVISION):   PROC SQL ;
    MPRINT(SOUS_TRAITEMENT_DIVISION):   CREATE TABLE PRESTAT_CON_2010 as SELECT DISTINCT d.NO_SEQ_CLI_BEN, d.conjoint2, 
    d.AM_DEB_REN_DIV2, d.AM_FIN_REN_DIV2, p.NO_SEQ_PRE_DEM, p.CO_RAI_STA_PRE_ACC, p.CO_RAI_STA_PRE_DEM, p.CO_STA_PRE_ACC, 
    p.CO_STA_PRE_DEM, p.CO_TYP_PRE, p.DT_DEB_PAI, p.NO_SEQ_DEM_PRE, p.NO_SEQ_CLI_COT, p.DT_NAI_CLI_COT, p.CO_SEX_CLI_COT, 
    p.DT_NAI_CLI_BEN, p.CO_SEX_CLI_BEN, p.IN_PRE_PAI_EXC, p.AM_DEB_REN, p.AM_TER_REN, p.AM_FIN_PER_PRE, p.AM_DEB_PER_PRE, 
    p.DT_REC_DEM_PRE, p.DT_REC_DET_DEM_PRE, p.CO_SOU_DAT_REC_DET, p.TX_RPC, p.FC_FAA, p.MN_DEB_PAI_REN_AVEC_SUP_DIV, 
    p.MN_DEB_PAI_REN_AVEC_SUP_NDI, p.MN_MEN_AVEC_SUP_NDI, p.MN_MEN_AVEC_SUP_DIV, p.MN_DEB_REN_AVEC_SUP_NDI, p.MN_DEB_REN_AVEC_SUP_DIV, 
    p.MN_TER_REN_AVEC_SUP_NDI, p.MN_TER_REN_AVEC_SUP_DIV, p.MN_CUM_SUPPLEMENT_NDI, p.MN_MEN_SUPPLEMENT_NDI, 
    year(p.DT_DEB_PAI)*100+month(p.DT_DEB_PAI) as AM_DEB_PAI, "CON" as ORIGINE FROM divise_info2 d LEFT JOIN R_PRESTAT_2010 p ON 
    d.conjoint2=p.NO_SEQ_CLI_BEN WHERE d.conjoint2 IN (SELECT pb1.conjoint2 FROM PRESTAT_BEN_2010 pb1) ;
     
     
    ERROR: Sort execution failure.
    NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.
    MPRINT(SOUS_TRAITEMENT_DIVISION):   QUIT;
    NOTE: The SAS System stopped processing this step because of errors.
    NOTE: PROCEDURE SQL used (Total process time):

    M�me programme (seule diff�rence 2009 au lieu de 2010)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22

     
     
     
    MPRINT(SOUS_TRAITEMENT_DIVISION):   PROC SQL ;
    MPRINT(SOUS_TRAITEMENT_DIVISION):   CREATE TABLE PRESTAT_CON_2009 as SELECT DISTINCT d.NO_SEQ_CLI_BEN, d.conjoint2, 
    d.AM_DEB_REN_DIV2, d.AM_FIN_REN_DIV2, p.NO_SEQ_PRE_DEM, p.CO_RAI_STA_PRE_ACC, p.CO_RAI_STA_PRE_DEM, p.CO_STA_PRE_ACC, 
    p.CO_STA_PRE_DEM, p.CO_TYP_PRE, p.DT_DEB_PAI, p.NO_SEQ_DEM_PRE, p.NO_SEQ_CLI_COT, p.DT_NAI_CLI_COT, p.CO_SEX_CLI_COT, 
    p.DT_NAI_CLI_BEN, p.CO_SEX_CLI_BEN, p.IN_PRE_PAI_EXC, p.AM_DEB_REN, p.AM_TER_REN, p.AM_FIN_PER_PRE, p.AM_DEB_PER_PRE, 
    p.DT_REC_DEM_PRE, p.DT_REC_DET_DEM_PRE, p.CO_SOU_DAT_REC_DET, p.TX_RPC, p.FC_FAA, p.MN_DEB_PAI_REN_AVEC_SUP_DIV, 
    p.MN_DEB_PAI_REN_AVEC_SUP_NDI, p.MN_MEN_AVEC_SUP_NDI, p.MN_MEN_AVEC_SUP_DIV, p.MN_DEB_REN_AVEC_SUP_NDI, p.MN_DEB_REN_AVEC_SUP_DIV, 
    p.MN_TER_REN_AVEC_SUP_NDI, p.MN_TER_REN_AVEC_SUP_DIV, p.MN_CUM_SUPPLEMENT_NDI, p.MN_MEN_SUPPLEMENT_NDI, 
    year(p.DT_DEB_PAI)*100+month(p.DT_DEB_PAI) as AM_DEB_PAI, "CON" as ORIGINE FROM divise_info2 d LEFT JOIN R_PRESTAT_2009 p ON 
    d.conjoint2=p.NO_SEQ_CLI_BEN WHERE d.conjoint2 IN (SELECT pb1.conjoint2 FROM PRESTAT_BEN_2009 pb1) ;
     
    NOTE: Compressing data set WORK.PRESTAT_CON_2009 decreased size by 33.12 percent. 
          Compressed is 103 pages; un-compressed would require 154 pages.
    NOTE: Table WORK.PRESTAT_CON_2009 created, with 7504 rows and 39 columns.
     
    MPRINT(SOUS_TRAITEMENT_DIVISION):   QUIT;
    NOTE: PROCEDURE SQL used (Total process time):
          real time           29:12.98
          cpu time            5:33.04

    Merci d’avance.


  2. 18/07/2012, 18h00


    #2


  3. 18/07/2012, 18h06


    #3

    MDsas est d�connect�


    Membre actif



    Par d�faut

    Citation Envoy� par edward carnby
    Voir le message

    Bonjour,

    Merci je pense que �a doit �tre cela, je travaille sur la WORK sur un serveur avec des grosse tables.

    Je vais faire un peu de m�nage.


+ R�pondre � la discussion

Cette discussion est r�solue.

  • Accueil
  • Forum
  • Logiciels
  • Solutions d’entreprise
  • Business Intelligence
  • SAS
  • SAS Base
  • [SQL] ERROR: Sort execution failure.

Discussions similaires

  1. R�ponses: 0

    Dernier message: 15/05/2008, 18h55

  2. R�ponses: 1

    Dernier message: 11/12/2007, 18h17

  3. R�ponses: 1

    Dernier message: 27/09/2007, 12h30

  4. R�ponses: 4

    Dernier message: 21/07/2006, 16h33

  5. R�ponses: 1

    Dernier message: 08/03/2006, 14h30

Partager

Partager

×

Vous avez un bloqueur de publicités installé.

Le Club Developpez.com n’affiche que des publicités IT, discrètes et non intrusives.

Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité,
merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.

Понравилась статья? Поделить с друзьями:
  • Sas discovery error 0x00000400
  • Sc 503 01 ricoh ошибка
  • Sarah and i am sisters найти ошибку
  • Sc 370 03 ricoh ошибка
  • Sarah and i am sisters исправьте ошибки