public void ExecuteDataSave(List <Time> time, WikiDump wikiDump) { Console.WriteLine("\n=========================="); Console.WriteLine("Accessing and Saving Data: "); Console.WriteLine("=========================="); Console.Write("Truncating Table... "); TruncateTable(); Console.Write("Done\n"); foreach (Time t in time) { var table = new DataTable(); table.Columns.Add("ID", typeof(int)); table.Columns.Add("PeriodHour", typeof(int)); table.Columns.Add("PageLanguage", typeof(string)); table.Columns.Add("PageDomain", typeof(string)); table.Columns.Add("PageDesign", typeof(string)); table.Columns.Add("PageTitle", typeof(string)); table.Columns.Add("CountViews", typeof(int)); table.Columns.Add("TotalResponseSize", typeof(string)); Console.Write($"Saving WikiDump pageviews-{t.Year}{t.Month}{t.Day}-{t.Hour}0000... "); List <string> lines = File.ReadAllLines(FileDirectory.GetUnzippedFile(t.Year, t.Month, t.Day, t.Hour)).ToList(); foreach (var line in lines) { string[] entries = line.Split(' '); WikiPage wp = wikiDump.CreateWikiPage(Int32.Parse(t.Hour), entries); table.Rows.Add(new object[] { wp.ID, wp.PeriodHour, wp.PageLanguage, wp.PageDomain, wp.PageDesign, wp.PageTitle, wp.CountViews, wp.TotalResponseSize }); } InsertWikiPages(table); Console.Write("Done!\n"); } Console.WriteLine("Saving Completed!"); }
public static void ExecuteDecompress(List <Time> time) { Console.WriteLine("\n======================="); Console.WriteLine("Decompressing gz Files: "); Console.WriteLine("======================="); foreach (Time t in time) { Console.Write($"Decompressing WikiDump pageviews-{t.Year}{t.Month}{t.Day}-{t.Hour}0000.gz... "); FileInfo file = new FileInfo(FileDirectory.GetZippedFile(t.Year, t.Month, t.Day, t.Hour)); string unzFile = FileDirectory.GetUnzippedFile(t.Year, t.Month, t.Day, t.Hour); Decompress(file, unzFile); Console.Write("Done!\n"); } Console.WriteLine("Decompressing Completed!"); }