Search code examples
rhadoophivedsnrodbc

32-bit Database Driver with 64-bit R to Query Big Data


I have a 32-bit HortonWorks Hadoop/Hive database that I'm able to query within 32-bit R using RODBC.

When trying to connect to the database in 64-bit R I receive this error:

[RODBC] ERROR: state IM014, code 0, message [Microsoft][ODBC Driver Manager] 

The specified DSN contains an architecture mismatch between the Driver and Application

However, the large size of the data requires me to use 64-bit R due to the memory limitations in Windows' 32-bit R.

Is there a work around?


Solution

  • You need to match 32 bit odbc drivers with 32 bit R and the same for 64 bit R. I had a similar problem using 64 bit R with 32 bit office.

    In my case, I used a 32 bit R installation (on my 64 bit windows) to use RODBC with the the data connections set up using the 32 bit drivers (look for this file: odbcad32.exe - this will bring up the 32 bit ODBC data source administrator). In my case I save the data as .rdata, and then continue in 64 bit R, but if you need to read and write constantly to the data source it may not be possible to use both.

    See this post>

    http://r.789695.n4.nabble.com/RODBC-for-64-bit-R-with-32-bit-Access-td3093030.html

    And this answer: Hand Install of 64-bit MS Access ODBC drivers when 32-bit Office is present