anchor.diff:  
   Note that the `Tap` configuration is merged with the global one so one can mix and match accordingly - for example specify the defaults in the global configuration and only declare the specifics on the `Tap` instance. Additionally, for maximum flexibility `EsTap` allows multiple arguments to be passed in, including a `Properties` object for the full range of options.
   
  +[[cascading-alias]]
  +[float]
  +=== Mapping
  +
  +By default, {eh} uses the Cascading tuple to map the data in {es}, using both the field names and types in the process. There are cases however when the field names cannot be used directly with {es} (common case when working with an existing flow). For such cases, one can use the `es.mapping.names` setting which accepts a comma-separated list of names mapping in the following format: `Cascading field name`:`Elasticsearch field name`
  +
  +To wit:
  +
  +[source,java]
  +----
  +Properties myTapCfg = new Properties();
  +myTapCfg.set("es.mapping.names", "date:@timestamp");	<1>
  +Tap myTap = new EsTap(..., myTapCfg);
  +----
  +
  +<1> Maps Cascading field `date` in {es} to `@timestamp`
  +
  +TIP: {es} accepts only lower-case field names and, as such, {eh} will always convert Cascading column names to lower-case. This can pose issues when dealing with upper-case fields due to case sensitivity.
   
   [[cascading-writing]]
   [float]
  
positive.code: 
  [source,java]
  ----
  Tap in = Lfs(new TextDelimited(new Fields("id", "name", "url", "picture")), 
               "/resources/artists.dat");
  Tap out = new EsTap("radio/artists" <1>, new Fields("name", "url", "picture") <2>);
  new HadoopFlowConnector().connect(in, out, new Pipe("write-to-Es")).complete();
  
negative.code: (see the {mr} <<type-conversion-writable,conversion>> section) though we recommend using the same types (if possible) in both cases to avoid the overhead of maintaining two different versions.
  
  IMPORTANT: If automatic index creation is used, please review <<auto-mapping-type-loss,this>> section for more information.
  
  [float]
  === Cascading Lingual
  
  {eh} also provides integration with http://www.cascading.org/projects/lingual/[Lingual], a Cascading extension 
  that provides an ANSI SQL interface for Apache Hadoop. That is, one can execute in Hadoop, SQL queries directly on {es}.
  
  Below is a quick setup of using {eh} with Lingual (1.1) - for detailed information please refer to the Lingual http://docs.cascading.org/lingual/1.1/[user guide]:
  
  [source,bash]
  ----
  export LINGUAL_PLATFORM=hadoop
  # register {es} as a provider
  lingual catalog --init
  lingual catalog --provider --add ./elasticsearch-hadoop-<version>.jar
  # add a custom schema (called 'titles') for querying
  lingual catalog --schema es-test --add
  lingual catalog --schema es-test --stereotype titles -add \
      --columns emp_no,title,from_date,to_date --types int,string,date,date
  lingual catalog --schema es-test --format es --add --provider es
  lingual catalog --schema es-test --protocol es --add --provider es \
      --properties=host=es-server
  lingual catalog --schema es-test --table titles --stereotype titles \
      -add employees/titles --format es --provider es --protocol es
  ----
  
  Once the desired catalog has been declared and {eh} registered with it, one can start querying the data
  
  [source,sql]
  ----
  lingual shell
  (shell) select count(*) from "es-test"."titles" where "title" = 'Engineer';
  115003
  ----
  