{"id":5455,"date":"2014-07-03T18:43:05","date_gmt":"2014-07-03T22:43:05","guid":{"rendered":"http:\/\/www.iri.com\/blog\/?p=5455"},"modified":"2018-02-26T13:37:33","modified_gmt":"2018-02-26T18:37:33","slug":"clf-elf-web-log-data-processing","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/","title":{"rendered":"CLF and ELF Web Log Processing"},"content":{"rendered":"<p><em>This article is second in a 3-part series on CLF and ELF web log data. We previously explained\u00a0<a title=\"CLF and ELF Web Log Formats Blog\" href=\"http:\/\/www.iri.com\/blog\/migration\/data-migration\/clf-elf-web-log-formats\/\" target=\"_blank\" rel=\"noopener\">CLF and ELF web log formats<\/a>, and now introduce\u00a0IRI solutions for manipulating and using\u00a0web log data. The final article\u00a0discusses <a title=\"How to Mask Data in Web Logs Blog\" href=\"%20http:\/\/www.iri.com\/blog\/data-protection\/web-log-data-masking\/\" target=\"_blank\" rel=\"noopener\">web log data masking<\/a>.<\/em><\/p>\n<p>IRI provides a number of tools\u00a0for handling CLF and ELF web log data more efficiently, especially when those files contain hundreds of thousands, or millions, of transactions:<\/p>\n<ol>\n<li><a href=\"http:\/\/www.iri.com\/products\/nextform\">IRI\u00a0NextForm<\/a> can filter, reformat, re-map, replicate, federate (virtualize), and report from these logs<\/li>\n<li><a href=\"http:\/\/www.iri.com\/products\/fieldshield\" target=\"_blank\" rel=\"noopener\">IRI FieldShield<\/a> can mask, encrypt, and otherwise de-identify personally identifiable information (PII), like IP address<\/li>\n<li><a href=\"http:\/\/www.iri.com\/rowgen\" target=\"_blank\" rel=\"noopener\">IRI RowGen<\/a> can create safe, realistic test data in either CLF or ELF targets, plus custom log formats you define<\/li>\n<li>The <a href=\"http:\/\/www.iri.com\/products\/cosort\/sortcl\" target=\"_blank\" rel=\"noopener\">SortCL<\/a> program in <a href=\"http:\/\/www.iri.com\/products\/cosort\" target=\"_blank\" rel=\"noopener\">IRI CoSort<\/a> can do all of the above, plus perform and combine fast\u00a0sort, join, and aggregate transformations<\/li>\n<\/ol>\n<p>All of these tools share a common <a href=\"http:\/\/www.iri.com\/products\/cosort\/sortcl-metadata\" target=\"_blank\" rel=\"noopener\">4GL metadata<\/a> and Eclipse GUI\u00a0(<a href=\"http:\/\/www.iri.com\/products\/workbench\" target=\"_blank\" rel=\"noopener\">IRI Workbench<\/a>).\u00a0The job scripts that power these applications rely on data layouts expressed in a simple, self-documenting Data Definition File (DDF) format. The layouts can be referenced in multiple jobs, and\/or pasted into individual scripts.<\/p>\n<p><em><br \/>\nFor CLF File Users<\/em><\/p>\n<p>IRI software supports the following formats with ready-made metadata repositories:<\/p>\n<table  class=\" table table-hover\" >\n<tbody>\n<tr>\n<td><strong>Format<\/strong><\/td>\n<td><strong>\u00a0 \u00a0 Description<\/strong><\/td>\n<td><strong>\u00a0\u00a0\u00a0 Layout File<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Common (Access) Log<\/td>\n<td>\u00a0\u00a0\u00a0 contains basic information from the log<\/td>\n<td><i>\u00a0 \u00a0 CLF_Access.ddf<\/i><\/td>\n<\/tr>\n<tr>\n<td>Referral Log<\/td>\n<td>\u00a0\u00a0\u00a0 contains corresponding referral information<\/td>\n<td><i>\u00a0\u00a0\u00a0 CLF_Referral.ddf<\/i><\/td>\n<\/tr>\n<tr>\n<td>Agent Log<\/td>\n<td>\u00a0\u00a0\u00a0 contains corresponding agent information<\/td>\n<td><i>\u00a0\u00a0\u00a0 CLF_Agent.ddf<\/i><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Each DDF metadata repository template contains the \/FIELD specifications that\u00a0IRI software job scripts require.<\/p>\n<p><em><br \/>\nFor ELF File Users\u00a0<\/em><\/p>\n<p>ELF files have a header containing lines of comments, followed by a line naming the data fields. IRI programs will\u00a0skip the header\u00a0when processing source data in the log when \/PROCESS=ELF is specified in the input section of the \u00a0job script. To generate a header record in an ELF target that uses the file\u2019s field names and positions, specify \/PROCESS=ELF in the output section of the job script.<\/p>\n<p>Note that you can automatically generate the data definitions from ELF log files for use in IRI software jobs. The &#8220;ELF2DDF&#8221;(Extended Log format-to-data definition file) utility is a command-line translation program\u00a0for converting W3C web data descriptions to DDFs.<\/p>\n<p>ELF2DDF works by scanning web log headers to produce a descriptive file name and field layout specifications. ELF2DDF is also a GUI-supported option. Select it from the drop-down menu in IRI Workbench metadata conversion wizard.<\/p>\n<p><em><br \/>\nWeb Log Data Integration and Masking (Combined) Example<\/em><\/p>\n<p>The web log file below contains information about the visitor&#8217;s IP Address, User, Date, Time, Port, User Request, Method, Status, Bytes transferred, User Agent.<\/p>\n<p>A &#8220;-&#8221; in a field indicates missing data.<\/p>\n<p><a href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/log1-e1405344824121.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-5601 size-full\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/log1-e1405344824121.png\" alt=\"log\" width=\"706\" height=\"500\" \/><\/a><\/p>\n<p>The table below contains customer information from another source, including: IP Address, User ID, Phone Number, and Name:<\/p>\n<p><a href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/input1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-5554\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/input1.png\" alt=\"input1\" width=\"364\" height=\"144\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/input1.png 364w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/input1-300x118.png 300w\" sizes=\"(max-width: 364px) 100vw, 364px\" \/><\/a><\/p>\n<p>The job script below, written for the IRI CoSort package&#8217;s SortCL program, brings the two input sources together. In the same job script and I\/O pass, the web log and customer table are sorted, joined, masked, and reformatted to produce an output report:<\/p>\n<pre>\/INFILE=LOG\r\n   \/PROCESS=RECORD\r\n   \/ALIAS=LOGFILE\r\n   \/SPECIFICATION=metadata\/logfile.ddf\r\n\r\n \/INFILE=\"QA.CUST;DSN=OracleTwisterQA\"\r\n    \/PROCESS=ODBC\r\n    \/ALIAS=CUST\r\n    \/SPECIFICATION=metadata\/cust.ddf\r\n\r\n\/JOIN INNER NOT_SORTED LOG NOT_SORTED CUST WHERE LOGFILE.remotehost == CUST.remotehost\r\n\r\n\/OUTFILE=weblognew.out\r\n   \/HEADREC=\"Client-IP ENC-IP USERNAME CUSTOMER NAME \\n\\n\"\r\n     \/FIELD=(LOGFILE.REMOTEHOST, TYPE=IP_ADDRESS, POSITION=1, SIZE=13, FRAME='\\\"')\r\n     \/FIELD=(MASK_CUST.REMOTEHOST=replace_chars(CUST.REMOTEHOST), TYPE=IP_ADDRESS, POSITION=16, SIZE=13, FRAME='\\\"')\r\n     \/FIELD=(CUST.USERID, TYPE=ASCII, POSITION=32, SIZE=16, FRAME='\\\"')\r\n     \/FIELD=(CUST.CUSTOMER, TYPE=ASCII, POSITION=43, SIZE=15, FRAME='\\\"')\r\n<\/pre>\n<p>The sources were joined over the visitor&#8217;s IP Address (remote host), and that key field was also the one masked with the replace_char() function. The result below\u00a0shows the integrated and protected result of the consolidated operation:<\/p>\n<p><a href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/output.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-5555\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/output.png\" alt=\"output\" width=\"408\" height=\"329\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/output.png 408w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/output-300x241.png 300w\" sizes=\"(max-width: 408px) 100vw, 408px\" \/><\/a><\/p>\n<p>Results\u00a0can also be sent to\u00a0<em>stdout<\/em>\u00a0(instead of a saved file or table); such ad hoc views are typical of data federation or virtualization projects.<\/p>\n<figure id=\"attachment_12033\" class=\"thumbnail wp-caption aligncenter style=\"width: 610px\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-12033\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot-1024x605.png\" alt=\"screenshot showing a join in IRI Workbench\" width=\"600\" height=\"355\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot-1024x605.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot-300x177.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot-768x454.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png 1660w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><figcaption class=\"caption wp-caption-text\">Data sources and target results shown with the above job script, along with the transform mapping diagram representing it in IRI Workbench, the free Eclipse job design IDE for Voracity.<\/figcaption><\/figure>\n<p>See the next article on <a title=\"How to Mask Data in Web Logs Blog\" href=\"http:\/\/www.iri.com\/blog\/data-protection\/web-log-data-masking\/\" target=\"_blank\" rel=\"noopener\">How to Mask Data in Web Logs<\/a> for information on IRI solutions for protecting clickstream data at the field level.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article is second in a 3-part series on CLF and ELF web log data. We previously explained\u00a0CLF and ELF web log formats, and now introduce\u00a0IRI solutions for manipulating and using\u00a0web log data. The final article\u00a0discusses web log data masking. IRI provides a number of tools\u00a0for handling CLF and ELF web log data more efficiently,<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\" title=\"CLF and ELF Web Log Processing\">Read More<\/a><\/div>\n","protected":false},"author":53,"featured_media":12033,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[108,32,1,776,91],"tags":[684,673,14,683,71,674,515,448,679,520,553,526,517,489,148,149,681,190,680,447,302,682,485],"class_list":["post-5455","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-big-data-2","category-business-intelligence","category-data-transformation2","category-etl","category-iri-workbench","tag-4gl","tag-clf","tag-data-masking","tag-de-identify","tag-eclipse","tag-elf","tag-encrypt","tag-federate","tag-filter","tag-iri-fieldshield","tag-iri-nextform","tag-iri-rowgen","tag-mask","tag-metadata","tag-personally-identifiable-information","tag-pii","tag-re-map","tag-realistic-test-data","tag-reformat","tag-replicate","tag-report","tag-virtualize","tag-web-log-formats"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CLF and ELF Web Log Processing - IRI<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CLF and ELF Web Log Processing\" \/>\n<meta property=\"og:description\" content=\"This article is second in a 3-part series on CLF and ELF web log data. We previously explained\u00a0CLF and ELF web log formats, and now introduce\u00a0IRI solutions for manipulating and using\u00a0web log data. The final article\u00a0discusses web log data masking. IRI provides a number of tools\u00a0for handling CLF and ELF web log data more efficiently,Read More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2014-07-03T22:43:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-02-26T18:37:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1660\" \/>\n\t<meta property=\"og:image:height\" content=\"981\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Chaitali Mitra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Chaitali Mitra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\"},\"author\":{\"name\":\"Chaitali Mitra\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\"},\"headline\":\"CLF and ELF Web Log Processing\",\"datePublished\":\"2014-07-03T22:43:05+00:00\",\"dateModified\":\"2018-02-26T18:37:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\"},\"wordCount\":648,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png\",\"keywords\":[\"4GL\",\"CLF\",\"data masking\",\"de-identify\",\"Eclipse\",\"ELF\",\"encrypt\",\"federate\",\"filter\",\"IRI FieldShield\",\"IRI NextForm\",\"IRI RowGen\",\"mask\",\"metadata\",\"personally identifiable information\",\"PII\",\"re-map\",\"realistic test data\",\"reformat\",\"replicate\",\"report\",\"virtualize\",\"web log formats\"],\"articleSection\":[\"Big Data\",\"Business Intelligence (BI&#041;\",\"Data Transformation\",\"ETL\",\"IRI Workbench\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\",\"url\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\",\"name\":\"CLF and ELF Web Log Processing - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png\",\"datePublished\":\"2014-07-03T22:43:05+00:00\",\"dateModified\":\"2018-02-26T18:37:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png\",\"width\":1660,\"height\":981,\"caption\":\"screenshot showing a join in IRI Workbench\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CLF and ELF Web Log Processing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\",\"name\":\"Chaitali Mitra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"caption\":\"Chaitali Mitra\"},\"sameAs\":[\"http:\/\/www.iri.com\"],\"url\":\"https:\/\/www.iri.com\/blog\/author\/chaitalim\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"CLF and ELF Web Log Processing - IRI","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/","og_locale":"en_US","og_type":"article","og_title":"CLF and ELF Web Log Processing","og_description":"This article is second in a 3-part series on CLF and ELF web log data. We previously explained\u00a0CLF and ELF web log formats, and now introduce\u00a0IRI solutions for manipulating and using\u00a0web log data. The final article\u00a0discusses web log data masking. IRI provides a number of tools\u00a0for handling CLF and ELF web log data more efficiently,Read More","og_url":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/","og_site_name":"IRI","article_published_time":"2014-07-03T22:43:05+00:00","article_modified_time":"2018-02-26T18:37:33+00:00","og_image":[{"width":1660,"height":981,"url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","type":"image\/png"}],"author":"Chaitali Mitra","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Chaitali Mitra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/"},"author":{"name":"Chaitali Mitra","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf"},"headline":"CLF and ELF Web Log Processing","datePublished":"2014-07-03T22:43:05+00:00","dateModified":"2018-02-26T18:37:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/"},"wordCount":648,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","keywords":["4GL","CLF","data masking","de-identify","Eclipse","ELF","encrypt","federate","filter","IRI FieldShield","IRI NextForm","IRI RowGen","mask","metadata","personally identifiable information","PII","re-map","realistic test data","reformat","replicate","report","virtualize","web log formats"],"articleSection":["Big Data","Business Intelligence (BI&#041;","Data Transformation","ETL","IRI Workbench"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/","url":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/","name":"CLF and ELF Web Log Processing - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","datePublished":"2014-07-03T22:43:05+00:00","dateModified":"2018-02-26T18:37:33+00:00","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","width":1660,"height":981,"caption":"screenshot showing a join in IRI Workbench"},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/clf-elf-web-log-data-processing\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CLF and ELF Web Log Processing"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf","name":"Chaitali Mitra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","caption":"Chaitali Mitra"},"sameAs":["http:\/\/www.iri.com"],"url":"https:\/\/www.iri.com\/blog\/author\/chaitalim\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2014\/07\/workbench-screenshot.png","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/5455"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/53"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=5455"}],"version-history":[{"count":61,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/5455\/revisions"}],"predecessor-version":[{"id":12036,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/5455\/revisions\/12036"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/12033"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=5455"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=5455"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=5455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}