There are two main CMS sources of open access Part B data. Details after the break.
The first source is "Part B National Summary Data File." This is a set of two dozen Excel spreadsheets (that are available as recently as CY2014 and as far back as CY2000. There are a couple dozen spreadsheets such as CPT codees 70010-80047 or HCPCS codes L0112-L5000.
Below: Updated to include May 2016 release of 2014 files.
The really powerful and far larger database is "Medicare Provider Utilization and Payment Data: Physician and Other Supplier." These are huge data sets - by individual physician name, address, and CPT code usage - also for Part B. This is currently available for CY2012 and CY2013, and CY2014
The data is provided as Detailed Data in Excel spreadsheets by physician "letter" (A,B,C...). These data are so large they generally need to be loaded into Access, Filemarker, or SQL-grade database management systems. But you can try an amateur hunt and peck in the smaller Excel files such as one physician letter at a time (the "C" name doctors, for example.) (For my 2014 blog on an amateur pokey Excel-based window into the data, here.)
There are also smaller Summary Tables that aggregate the data either for nation or for state by CPT code and summary tables by physician (but in the physician level summary, not by CPT code).
MACRA 105(b) required CMS to make even more claims data available to researchers, according to the "Physician Clinical Registry Coalition," but CMS hasn't done enpough, according to an article in the trade journal Inside CMS (here).