just client hidding not implemented.
ExtendedDataTable has controls to hide columns out of the box but ajax requests to save state still fired on them. And you could add such ajax show/hide to any table but the requests will call the data on reRendering table. But if you caching the model as shown at dataModels samples - no db hits for data will be made on such requests.
That is not good for me. The dataTable takes about 10 sec. to render (it has 15 columns (4 with inputText) and about 500 rows. So I would prefer client hiding. Or some "wait ..." dialog while the table is rerendering.