<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Reading from SASHELP.VTABLE is taking Ages in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241624#M44791</link>
    <description>&lt;P&gt;Maybe you just have more data and tables now by the time. And as in&amp;nbsp;SAS documentations&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;When you query DICTIONARY.TABLES or SASHELP.VTABLE, all the tables and views in all the libraries that are assigned to the SAS session are opened to retrieve the requested information.&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;so&amp;nbsp;now it is harder for Data step to handle it and as PROC SQL is more optimized for that it can do it faster.&lt;/P&gt;</description>
    <pubDate>Mon, 04 Jan 2016 11:52:07 GMT</pubDate>
    <dc:creator>mohamed_zaki</dc:creator>
    <dc:date>2016-01-04T11:52:07Z</dc:date>
    <item>
      <title>Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241609#M44782</link>
      <description>&lt;P&gt;Hello All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am running a Proc tabulate off the sashelp.vtable and is taking like 2 hours to run a simple proc tabulate.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is my code:&lt;/P&gt;
&lt;P&gt;proc tabulate data= SASHELP.VTABLE missing out= Aquote_DataVolume (drop= _table_ _type_ _page_);&lt;BR /&gt; class libname;&lt;BR /&gt; var nobs;&lt;BR /&gt; table libname, nobs*sum;&lt;BR /&gt; where libname = 'QTEDATA';&lt;BR /&gt; run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have never use to have this problem before with the VTABLE. Programs using VTABLE use to run quickly. I am clueless to what is happening.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have also tried a simple data step which is also taking ages.&lt;/P&gt;
&lt;P&gt;data test;&lt;BR /&gt; set SASHELP.VTABLE;&lt;BR /&gt; where libname = 'work';&lt;BR /&gt; run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please can some one of you suggest me a solution for this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks in advance.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 09:49:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241609#M44782</guid>
      <dc:creator>KiranMaddi</dc:creator>
      <dc:date>2016-01-04T09:49:42Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241612#M44783</link>
      <description>&lt;P&gt;Try using Proc SQL instead&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
   create table mytable as
      select * from sashelp.vtable
      where libname='WORK';
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 04 Jan 2016 10:12:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241612#M44783</guid>
      <dc:creator>mohamed_zaki</dc:creator>
      <dc:date>2016-01-04T10:12:48Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241613#M44784</link>
      <description>&lt;P&gt;Well, a few things here. &amp;nbsp;Firstly your second code will not work, 'WORK' has to be in upper case. &amp;nbsp;Secondly, if your running 9.4 then a lot of new tables were added into Base SAS - maps - and this has noticeably slowed these tables down, so filtering is advised. &amp;nbsp;Thirdly, its probably not a good idea to run tabulate and other procedures directly on a View - which is what the V in VTABLE stands for. &amp;nbsp;Have a datastep which creates a dataset with the required information, then tabulate off that. &amp;nbsp;Finally, and I may not understand as I dont use tabulate, what is it your trying to do here? &amp;nbsp;If you just want a sum then this will be faster:&lt;/P&gt;
&lt;PRE&gt;proc sql;
  select sum(NOBS)
  from   DICTIONARY.TABLES
  where  LIBNAME="WORK";
quit;
&lt;/PRE&gt;</description>
      <pubDate>Mon, 04 Jan 2016 10:16:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241613#M44784</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-01-04T10:16:11Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241618#M44785</link>
      <description>&lt;P&gt;Thanks for your reply. Yes I just want to sum it. I have also realised that vtable is like a SQL view which can be access quickly by using PROC SQL. I just wonder why I have not encountered with this issue till now? Having been using the same program for about an year.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:10:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241618#M44785</guid>
      <dc:creator>KiranMaddi</dc:creator>
      <dc:date>2016-01-04T11:10:40Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241619#M44786</link>
      <description>Thanks zaki &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:11:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241619#M44786</guid>
      <dc:creator>KiranMaddi</dc:creator>
      <dc:date>2016-01-04T11:11:08Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241620#M44787</link>
      <description>&lt;P&gt;You can read more here:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/sqlproc/69049/HTML/default/viewer.htm#n02s19q65mw08gn140bwfdh7spx7.htm" target="_self"&gt;Accessing SAS System Information By Using DICTIONARY Tables&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;especially "DICTIONARY Tables and Performance" section.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And that was the same for 9.2 too&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/sqlproc/62086/HTML/default/viewer.htm#a001385596.htm" target="_self"&gt;9.2 : Accessing SAS System Information by Using DICTIONARY Tables&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:46:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241620#M44787</guid>
      <dc:creator>mohamed_zaki</dc:creator>
      <dc:date>2016-01-04T11:46:38Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241621#M44788</link>
      <description>&lt;P&gt;Have you changed version of SAS? &amp;nbsp;I note that there are lots of map tables added to the Base installation on 9.4, this means more records to process.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:27:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241621#M44788</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-01-04T11:27:12Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241622#M44789</link>
      <description>&lt;P&gt;No I have not changed the SAS version. Still using 9.3.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:30:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241622#M44789</guid>
      <dc:creator>KiranMaddi</dc:creator>
      <dc:date>2016-01-04T11:30:13Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241623#M44790</link>
      <description>&lt;P&gt;I would probably check with your IT on the setup then if nothing has changed, could be a glitch in network, something stuck somewhere etc.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:46:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241623#M44790</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-01-04T11:46:24Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241624#M44791</link>
      <description>&lt;P&gt;Maybe you just have more data and tables now by the time. And as in&amp;nbsp;SAS documentations&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;When you query DICTIONARY.TABLES or SASHELP.VTABLE, all the tables and views in all the libraries that are assigned to the SAS session are opened to retrieve the requested information.&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;so&amp;nbsp;now it is harder for Data step to handle it and as PROC SQL is more optimized for that it can do it faster.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Jan 2016 11:52:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241624#M44791</guid>
      <dc:creator>mohamed_zaki</dc:creator>
      <dc:date>2016-01-04T11:52:07Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241788#M44828</link>
      <description>&lt;P&gt;There must be some LIBNAME set up for outside DataBase like ORACLE DB2 , which would cose you lots of time to build a connection with outside&amp;nbsp;&lt;SPAN&gt;DataBase . Check "&amp;nbsp;Engine Name " this field in DICTIONARY.LIBNAMES&amp;nbsp;and see if there are some special engine other that V9 .&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;select * from dictionary.libnames;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 05 Jan 2016 06:49:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/241788#M44828</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-01-05T06:49:21Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287110#M59021</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I encounter the same issue:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;IMG src="https://communities.sas.com/t5/image/serverpage/image-id/4236i800996EB734906B9/image-size/original?v=v2&amp;amp;px=-1" alt="Vtable_takes_ages.JPG" title="Vtable_takes_ages.JPG" border="0" /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;more than 4 hours for about 640k rows.....!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It appears that parts of it are due to a slow network connection to the sas server since there is a difference of approximately 30 min between "real time" and "cpu time".....&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any ideas?&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jul 2016 07:09:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287110#M59021</guid>
      <dc:creator>FK</dc:creator>
      <dc:date>2016-07-26T07:09:33Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287117#M59024</link>
      <description>&lt;PRE&gt;
You could query MEMBRES dictionary to get the table name, that would be very fast.

select * from dictionary.members;


After that use the proc contents to get all the variables name:

proc contents library=work._all_;
run;



 IML code also can get it. You want IML code ?


&lt;/PRE&gt;</description>
      <pubDate>Tue, 26 Jul 2016 08:04:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287117#M59024</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-07-26T08:04:51Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287119#M59025</link>
      <description>&lt;P&gt;Personally I would take it up with your IT team, and possibly your SAS contact to get the speed resolved otherwise it will afffect anything you do - if of course it is a network speed issue. &amp;nbsp;Also I would check why you have 640k rows in &amp;nbsp;SASHELP.VTABLE - that is 640k tables you have referenced - are you really working with that many files all the time? &amp;nbsp;It sounds to me like your setup is incorrect, re-assess how SAS starts up, what libraries and files each session actually needs - maybe have an autoexec for different studies or workflows, I mean even at maximum I have no more than 100 tables referenced at any working time.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jul 2016 08:14:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287119#M59025</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-07-26T08:14:07Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287161#M59042</link>
      <description>&lt;P&gt;Thank's for your suggestions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/45151"&gt;@RW9﻿&lt;/a&gt;&amp;nbsp; I'm afraid, we do need theses 640k tables.... &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jul 2016 12:30:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287161#M59042</guid>
      <dc:creator>FK</dc:creator>
      <dc:date>2016-07-26T12:30:42Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from SASHELP.VTABLE is taking Ages</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287164#M59044</link>
      <description>&lt;P&gt;I am not suggesting removing the datasets, only the references to them. &amp;nbsp;For instance, if I point a libname to abc and in there there is 30 datasets, and a libname to def which has another 40 datasets, sashelp.vtable will have standard ones + these 70 observations - SAS keeps metadata about all items in the references. &amp;nbsp;I am only working on data from def, it makes no sense to have a libname pointing to abc, just a waste of resources. &amp;nbsp;This is called your personal setup. &amp;nbsp;There are many ways to do it, in one case, if I am working on one study I will have a setup file to setup libanes for that one study - I need not references to any study every made.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Condense the user work setup to what is needed by that user at that time, rather than just having one setup which points to everything on your system.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Jul 2016 12:46:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Reading-from-SASHELP-VTABLE-is-taking-Ages/m-p/287164#M59044</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-07-26T12:46:07Z</dc:date>
    </item>
  </channel>
</rss>

