PIPELINE PIGGING SERVICES BY IIRCO.
WHY PIPELINE PIGGING?There are some hypotheses for why the process is called ‘pipeline pigging’, though none have been confirmed. One theory is that ‘pig’ stands for Pipeline Intervention Gadget. Another state that in the past, a leather-bound tool was sent through the pipeline, making the sound of a squealing pig as it passed through. Another theory is that after opening a pig trap, the tool lies in a pile of mud, in the same way a pig does.
Regardless of the preferred hypotheses, ‘pipeline pigging’ or ‘pigs’ refers to several tools, usually propelled through the line, to perform a specific action inside the pipeline.
While build-up of foreign materials in a pipeline can cause a reduction in flow, it can also cause a rise in energy consumption due to high pressures, or even plug the pipeline. In the worst case it can cause cracks or flaws in the line with disastrous consequences, such as spills and the many associated dangers.
We find or build the best pig for the job.
From the construction phase until abandonment, all pipelines require pigging at certain moments. The pigging experts at A. IIRC Pipeline Services are specialists in selecting the best pig for the job. We choose only the best quality pigs from our suppliers, however for more challenging, critical jobs, we build our own pigs to the required specifications in order to guarantee the best possible service.
For pipelines without launchers and receivers, we also provide temporary installations, which will ensure a safe pipeline pigging process.
The following pigs will pass through a pipeline at some stage during its life span. Gauging pigs
Before pipes are welded together they are gauged with pigs for dimensional control. Bends fabricated from pipes are also gauged.
Bidi pigs
During construction, several bidi (bi-directional) pigs will pass through the pipeline to empty horizontal drillings and to transport gauge plates to ensure the internal minimum dimension. When construction is complete, the line will be hydro tested. Filling for testing is also
performed using bidi pigs. Foam pigs
During construction, the pipeline may need cleaning from mud, water, rust and welding slag etc. Depending on the anticipated contamination and eventual pipe wall coating, we select the most suitable foam pig for the most effective result. This may be partly coated, fully coated, equipped with hard, scraping steel brushes or studs or equipped with soft brushes. When hydro testing is completed and dewatered, foam pigs will also be used to dry the pipeline. Depending on the required dew point level and drying phase, we choose from several available sizes and densities to establish the most efficient foam pig for the job.
Caliper pigs
After completion of construction and prior to commissioning, a caliper pig (often referred to as an intelligent pig), may be used to identify obstructions due to damage of any pipe section. The intelligent part of the pig is its ability to register all internal dimensions in relation to the measured distance from the entrance.
Intelligent pigs (ILI)
As well as caliper pigs, we often use what are called intelligent pigs, which can register not only anomalies in dimensions, but also the pipeline’s exact location in three dimensions. In addition, it can measure the actual wall thicknesses for future comparison and determine wall thickness loss due to wear and corrosion.
Spheres, bidi pigs, brush pigs, magnet pigs, foam pigs, turbo pigs
During the production phase, debris from the product(s) may form obstructions that need to be removed. The debris can be in the form of wax, which if acted upon quickly, can be easily removed using spheres or bidi pigs equipped with or without spring loaded brushes. If wax deposit is not treated quickly, or when hard scale is formed, this can be removed using special pigs, such as studded bidi pigs, full stud pigs, or very aggressive turbo pigs. Our studded pigs were originally developed for decoking furnaces in refineries. Our
experiences and calculations in this field has given us a solid foundation for solving pipeline cleaning problems.
It is a good idea to implement a cleaning process for the pipeline before the run of an intelligent pig, to ensure accurate gathering of data.
Gel pigs
This pigging method involves the use of a gelling agent in combination with cleaning agents. Often gel pigging is a solid solution for pipelines that cannot be cleaned with normal pigs. The gelled mass can be propelled through different shapes and dimensions, with the gel able to continuously adapt to the pipeline’s shape.
Cleaning Pig Cleaning Pig
UT Pig Parts with sensors and probes
Multi tasks MFL pigs
MFL pig Complete set before lunching
Pigging Advantages and
Disadvantages
Introduction
Intelligent Pig is a data flow language that is built on top to make it easier to process, clean and analyze "big data" without having to write vanilla map-reduce jobs.
It has also a lot of relational database features. Good oldjoins,distinct,unionand many more commands are already in the language. So what exactly Pig solves different than relational database is its applicability to "big data" where it can crunch large files with ease and it does not need a structured data. Contrarily, Pig could be used for ETL (Extraction Transformation Load) tasks naturally as it can handle unstructured data. It is one of the reasons why it exists to tell the truth.
But let's ask the fundamental question: Why does data analysis matter?
Data Analysis Matters
Data analysis matters because asoriginal papervery good puts it:
Data analysis is "inner loop" of product innovation.
Companies which have data and "big data" want to automate some of their processes, they want to make better products for their users, want to create new products and platforms. If you do not happen to be Steve Jobs or someone who has natural insights of what users and consumers want from the product or see new features, then you are dependent on data. Feedback of users, their usage, log files of the website and metrics are all things that make you run faster. They are not what you run with(it is the product itself) but how you run faster. (So much for the analogy)
Pig paper also introduces the basic motivation for Pig why it is useful and how does it fit into the analytics and data processing. Moreover, as you read the paper you realize that the processing pipeline is actually Directed Acyclic Graph and paper goes a little more in depth in theoretical aspects of Pig (the programming language).
So, what does Pig bring to the table and what it is missing?
Advantages
Decrease in development time. This is the biggest advantage especially
considering vanilla map-reduce jobs' complexity, time-spent and maintenance of the programs.
Learning curve is not steep, anyone who does not know how to write vanilla map-reduce or SQL for that matter could pick up and can write map-map-reduce jobs; not easy to master, though.
Procedural, not declarative unlike SQL, so easier to follow the commands and provides better expressiveness in the transformation of data every step.
Comparing to vanilla map-reduce, it is much more like an English language. It is concise and unlike Java but more like Python.
I really liked the idea of dataflow where everything is about data even though we sacrifice control structures like for loop or if structures. This enforces the
developer to think about the data but nothing else. In Python or Java, you create the control structures(for loop and ifs) and get the data transformation as a side effect. In here, data and because of data, data transformation is a first class citizen. Without data, you cannot create for loops, you need to always transform and manipulate data. But if you are not transforming data, what are you doing in the very first place?
Since it is procedural, you could control of the execution of every step. If you want to write your own UDF(User Defined Function) and inject in one specific part in the pipeline, it is straightforward.
Speaking of UDFs, you could write your UDFs in Python thanks to Python. How awesome is that!
Lazy evaluation: unless you do not produce an output file or does not output any message, it does not get evaluated. This has an advantage in the logical plan, it could optimize the program beginning to end and optimizer could produce an efficient plan to execute.
Enjoys everything that offers, parallelization, fault-tolerances with many relational database features.
It is quite effective for unstructured and messy large datasets. Actually, Pig is one of the best tool to make the large unstructured data to structured.
You have UDFs which you want to parallelize and utilize for large amounts of data, then you are in luck. Use Pig as a base pipeline where it does the hard work and you just apply your UDF in the step that you want.
Disadvantages
Especially the errors that Pig produces due to UDFS (Python) are not helpful at all. When something goes wrong, it just gives exec error in UDF even if problem is related to syntax or type error, let alone a logical one. This is a big one. At least, as a user, I should get different error messages when I have a syntax error, type error or a runtime error.
Not mature. Even if it has been around for quite some time, it is still in the
quite fundamental for a language like Pig especially considering how an important component of date time for time-series data.
Support: Stack overflow and Google generally does not lead good solutions for the problems.
Data Schema is not enforced explicitly but implicitly. I think this is big one, too. The debugging of pig scripts in my experience is %90 of time schema and since it does not enforce an explicit schema, sometimes one data structure goes byte array, which is a “raw” data type and unless you coerce the fields even the
strings, they turn byte array without notice. This may propagate for other steps of the data processing.
Minor one: There is not a good ide or plug in for Vim which provides more functionality than syntax completion to write the pig scripts.
The commands are not executed unless either you dump or store an intermediate or final result. This increases the iteration between debug and resolving the issue.
Hive and Pig are not the same thing and the things that Pig does quite well have may not and vice versa. However, someone who knows SQL could write Hive queries (most of SQL queries do already work in Hive) where she cannot do that in Pig. She needs to learn Pig syntax.