import MySQLdb import boto3 DYNAMODB_TABLE_NAME = 'dev_feed_ingestion_status' # FIXME LOGETL_CONFIG = { 'host': 'etl-logger-vpc.cb22xqmk0y0q.us-east-1.rds.amazonaws.com', 'user': '', 'passwd': '', 'db': 'LogETL', 'port': 3306 } def main(): conn = MySQLdb.connect(**LOGETL_CONFIG) cursor = conn.cursor() dynamodb = boto3.resource('dynamodb', region_name='us-east-1') dynamodb_table = dynamodb.Table(DYNAMODB_TABLE_NAME) cursor.execute(""" SELECT downloaddate FROM fact_analytics_ingestion_history WHERE status = 'ingested' AND storeid = 496 AND downloaddate >= '2016-12-01' ORDER by downloaddate; """) for i, (download_date,) in enumerate(cursor): item = { 'feed_name': 'google_music', 'date': download_date.strftime('%Y-%m-%d'), 'status': 'INGESTED' } dynamodb_table.put_item(Item=item) print('Inserting: %s' % download_date) print('Inserted: %s' % i) if __name__ == '__main__': main()