Friday, August 8, 2014

Teradata Wallet

So what's so curious about TD Wallet. How many of you have come across Prod scripts where credentials are quite revealing?. Minimal I hope so, none other than Admin and batch team guys sneak peek script files - its rarity.

So what's big deal with that, any how prod support guys share their credentials among team. Why securing password in scripts required you might ask.. In case, your project/client has 3rd party or vendor enabled, might in position to secure your password as per client agreement. Hmm, considering more than one vendor in project may lead relaxation in MSA [Master Service Agreement] or in SLA not necessarily though..

I love to give out verbiage, so hitting the root.

TD Wallet:

what & how:

  • Its an utility to secure your passwords, usually used in scripts
  • It is stored in user login space
  • TD Wallet basically uses Name & Values as like [Key, Value] pair as in Big Data - Hadoop
  • eg: Name: prod_server_pass, Value: "thisIsMyPass"
  • so instead of passing actual password "thisIsMyPass" - you key in $tdwallet(prod_server_pass)
  • Download this utility from TTU 14.XX 
  • Your wallet entries are encode as just Unicode characters.
  • How long entries can be made, please check tdwallet help limits 
Things to know:
  • Start this utility by tdwallet in your cmd prompt or in shell
  • to use this 
    • eg: .logon dbname/username,$tdwallet(passwd_reference_name)

  • only CLIv2 connectivity is supported. Big NO to ODBC,.NET connectivity login
    • UPDATE:  ODBC is supported now -- see article comments.
  • You can download CLIv2 from TD support site. [Call Level Interface version 2]
  • Invidual user can have own wallet. May not access other user wallet, how?
  • 1 login id = 1 td wallet. What if more than one required?, well you can have more entries for credentials doesnt require add-on wallet to single login id.
    • UPDATEBy "1 login id = 1 td wallet" you mean "1 system user id = 1 wallet". Not to be confused with database login id.
  • when you login using your id, you cannot access other users wallet.
  • if in case of batch team, hmm questionable on access, but hey still you cant access other than login id's td wallet pretty much it.
What not:
  • After spending few hours glinting over few articles, it is understood that TD Wallet doesn't support following:
    • TTU which refers/uses td wallet - all TTU needs to be version 14.XX 
    • Doesn't support TD 13 level & no download of TD Wallet for 13.XX
      • UPDATE: Wallet is client-side only, so you should be able to login to TD 13 using TTU 14. See the client-server support/compatibility matrix.
    • Doesnt support UTF-16 sessions
      • Update: There's a patch for UTF-16 support.
Update notes are as commented/posted by ANON . I wish to thank Anon by detailing out anomalies.

Tuesday, May 13, 2014

how do see the difference in TD version 14?

Teradata is continuously evolving company by either through R&D or acquisition of BI companies. Recent one I came across was Aprimo. Also, this has been used in major semiconductor manufacture companies which runs TD DB.

Now coming to differences. In TD V 14, and now V15 released i could give you some insights in terms of improvements.

TD V14 can now go for 128 table joins, with max 2048 columns, Table header has 1 MB , max columns under an index is 64. Spool for a tb query is 2GB.

PPI's early had 65,535 and now in 14 it touches sky with its range; 9.2 * 10^18 uuuhhhff and partition levels upto 62. I added more info i have come across any such.

I promise to give you details on Aprimo not just a weblink :) in next post