


WHERE historytable.tablename = a2.tablename AND

INSERT INTO temp_historyĭELETE FROM historytable USING historytable a2 Then build the job and you can schedule to run the. Lastly a simpler method would be to use Talend Big Data Open Studio and create a new job grab the component tRedshiftRow and paste the following SQL into it. copy aws_table_history from 's3://tablehistory' credentials 'aws_access_key_id=MYKEY aws_secret_access_key=MYID' Then import it back in to your custom table. To 's3://tablehistory' credentials 'aws_access_key_id=myaccesskey aws_secret_access_key=mysecretkey'ĭELIMITER '|' NULL AS '' ESCAPE ALLOWOVERWRITE Ĭreate a new table in AWS Redshift. (select split_part(split_part(b.text,'table ', 2), ' ', 1) as tablename, starttime as createdateĪnd b.text ilike 'create table%' order by a.starttime desc) The below select statement will output the table name created and the datetime it was created.Ĭreate a temp table with the data you want to export to S3. Where a.query = b.query and b.text ilike 'create table%' order by a.starttime desc Įxport the Create Table data history you want to your created S3 bucket with your keys. Or get just the Table name and date like this: select split_part(split_part(b.text,'table ', 2), ' ', 1) as tablename, Select * from stl_query a, stl_querytext b where a.query = b.query and b.text ilike 'create table%' order by a.starttime desc limit 100 select * from svl_qlog where substring ilike 'create table%' order by starttime desc limit 100 Then in my opinion you could import these s3 files back into a permanent table you want called aws_table_history or something so that this special data you keep forever. Amazon recommends to keep this data to export the data to S3 from the logs you want to retain to S3. Although everyone would like metadata stored along with the table itself to query. There are other tables you can look at to get similar data but the problem with this way is that it's only kept for a couple of days (3 - 5). In Redshift the other ways you can get the create time of your table by searching for the start and stop time of any create table sql run in the svl_qlog.
