BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
Gaetan
Obsidian | Level 7

Hi everyone,

 

I would like to know if someone is currently using SAS Connect To ODBC to request Big Query database.

 

Technical Context :

- Windows Server 2012 X86-64

- Simba ODBC Driver for GCP

- SAS 9.4M6

 

We encounter an issue when we request dataset over 1 million of rows.

 

Here is the sample code :

 

libname B1 odbc dsn = 'DBO' schema = bqdata;

data toto;
set B1.surface (obs = 10);
run;

2 differents issue appears according to Simba ODBC Driver for Big Query configuration.

 

1 - MSG1 (Unactive "Dataset name for large results datasets) :

 

ERROR: CLI open cursor error: [Simba][BigQuery] (100) Error interacting with REST API: Response too large to return. Consider

       setting allowLargeResults to true in your job configuration. For more information, see

       https://cloud.google.com/bigquery/troubleshooting-errors

 

2 - MSG2 (Active "Dataset name for large results datasets) :

 

ERROR: CLI prepare error: [Simba][BigQuery] (100) Error interacting with REST API: Access Denied: Project

       paj-dcproc-dev-prj-dataproc: The user paj-sas-dev-sac-bidata-1@paj-dsas-dev-prj-sas.iam.gserviceaccount.com does not have

       bigquery.datasets.create permission in project paj-dcproc-dev-prj-dataproc.

SQL statement: SELECT * FROM ntz_snapshot_20190413.TWH_ODS_AMC_ARTICLES.

 

Anyone have an idea ?

 

Gaetan

 

1 ACCEPTED SOLUTION

Accepted Solutions
4 REPLIES 4
ErikLund_Jensen
Rhodochrosite | Level 12

Hi @Gaetan 

 

This is just an idea.

 

I think your query works in a way behind the scene, where the database is requested to return the full table, and a clientside limit to 10 rows is in effect. Try using an explicit passthru and limit the query serverside with Select top 10 ...

Gaetan
Obsidian | Level 7

Hi @ErikLund_Jensen 

Thanks for your reply.

 

Indeed, explicit pass-through fixs this issue.

But, many SAS users are using implicit pass-through via SAS Enterprise Guide.

So, this neccesits to transform lots of SAS programs from implicit to explicit pass-through.

 

 

SalmanMaher
SAS Employee
Hi @Gaetan

Try setting the ODBC option AllowLargeResults=1 in your DSN.

Salman

See https://www.simba.com/products/BigQuery/doc/JDBC_InstallGuide/content/jdbc/bq/options/allowlargeresu... for more details
Gaetan
Obsidian | Level 7

Hi,

I want just not notice that we do not use Simba ODBC connector, but Simba JDBC connector currently.

The connector is more performant, so I preconize it,

Gaetan

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 2487 views
  • 1 like
  • 3 in conversation