Monday, December 30, 2013

What is the functionality of Query Processor in Apached Hive ?

This component implements the processing framework for converting SQL to a graph of map/reduce jobs and the execution time framework to run those jobs in the order of dependencies.

What is ObjectInspector functionality ?

      Hive uses ObjectInspector to analyze the internal structure of the row object and also the structure of the individual columns. 

     ObjectInspector provides a uniform way to access complex objects that can be stored in multiple formats in the memory, including: 

  1. Instance of a Java class (Thrift or native Java) 
  2. A standard Java object (we use java.util.List to represent Struct and Array, and use java.util.Map to represent Map) 
  3. A lazily-initialized object (For example, a Struct of string fields stored in a single Java string object with starting offset for each field) 
     A complex object can be represented by a pair of ObjectInspector and Java Object. The ObjectInspector not only tells us the structure of the Object, but also gives us ways to access the internal fields inside the Object. 

How do you write your own custom SerDe ?

      In most cases, users want to write a Deserializer instead of a SerDe, because users just want to read their own data format instead of writing to it. 
     For example, the RegexDeserializer will deserialize the data using the configuration parameter 'regex', and possibly a list of column names 
      If your SerDe supports DDL (basically, SerDe with parameterized columns and column types), you probably want to implement a Protocol based on DynamicSerDe, instead of writing a SerDe from scratch. The reason is that the framework passes DDL to SerDe through "thrift DDL" format, and it's non-trivial to write a "thrift DDL" parser. 

Give examples of the SerDe classes whihc hive uses to Serializa and Deserilize data ?

Hive currently use these SerDe classes to serialize and deserialize data: 

  1. MetadataTypedColumnsetSerDe: This SerDe is used to read/write delimited records like CSV, tab-separated control-A separated records (quote is not supported yet.) 
  2. ThriftSerDe: This SerDe is used to read/write thrift serialized objects. The class file for the Thrift object must be loaded first. 
  3. DynamicSerDe: This SerDe also read/write thrift serialized objects, but it understands thrift DDL so the schema of the object can be provided at runtime. Also it supports a lot of different protocols, including TBinaryProtocol, TJSONProtocol, TCTLSeparatedProtocol (which writes data in delimited records). 

Which classes are used by the Hive to Read and Write HDFS Files

Following classes are used by Hive to read and write HDFS files 

  1. TextInputFormat/HiveIgnoreKeyTextOutputFormat: These 2 classes read/write data in plain text file format. 
  2. SequenceFileInputFormat/SequenceFileOutputFormat: These 2 classes read/write data in hadoop SequenceFile format. 

What is SerDe in Apache Hive ?

        A SerDe is a short name for a Serializer Deserializer. Hive uses SerDe (and FileFormat) to read and write data from tables. An important concept behind Hive is that it DOES NOT own the Hadoop File System (HDFS) format that data is stored in. Users are able to write files to HDFS with whatever tools/mechanism takes their fancy("CREATE EXTERNAL TABLE" or "LOAD DATA INPATH," ) and use Hive to correctly "parse" that file format in a way that can be used by Hive. A SerDe is a powerful (and customizable) mechanism that Hive uses to "parse" data stored in HDFS to be used by Hive.

If you run hive as a server, what are the available mechanism for connecting it from application?

There are following ways by which you can connect with the Hive Server: 

  1. Thrift Client: Using thrift you can call hive commands from a various programming languages e.g. C++, Java, PHP, Python and Ruby.
  2. JDBC Driver : It supports the Type 4 (pure Java) JDBC Driver.  
  3. ODBC Driver: It supports ODBC protocol. 

Is multiline comment supported in Hive Script ?

No

Is it possible to use same metastore by multiple users, in case of embedded hive?

No, it is not possible to use metastore in sharing mode. It is recommended to use standalone “real” database like MySQL or PostGresSQL. 

Wherever (Different Directory) I run hive query, it creates new metastore_db, please explain the reason for it?

        Whenever you run the hive in embedded mode, it creates the local metastore. And before creating the metastore it looks whether metastore already exist or not. This property is defined in configuration file hive-site.xml. Property is “javax.jdo.option.ConnectionURL” with default value “jdbc:derby:;databaseName=metastore_db;create=true”. So to change the behavior change the location to absolute path, so metastore will be used from that location. 

What is Hive Metastore?

Hive metastore is a database that stores metadata about your Hive tables (eg. table name, column names and types, table location, storage handler being used, number of buckets in the table, sorting columns if any, partition columns if any, etc.). When you create a table, this metastore gets updated with the information related to the new table which gets queried when you issue queries on that table.

Sony launches My Cloud app for Android devices

Sony launches My Cloud app for Android devices

Sony MyCloud
Taking a break from the usual routine of releasing smartphones, Sony is now launching an Android app – My Cloud. Sony’s My Cloud application hopes to be your one stop app for connecting all your cloud accounts. At launch, Sony’s My Cloud application lets you connect with three services – DropBox, Box and Tonido.
Sony’s My Cloud app aims to ease the headache that users have in organizing their content that spreads across various cloud storage accounts. Using the application, one can easily group photos, music and videos from different cloud accounts in a single place.
My Cloud is designed to ease the acces to all your musics, videos and photos stored in the most popular cloud services available, putting it all in one place and organizing in one sleek interface for your Android.
Just by adding your account from Box, DropBox or Tonido, all your media files become available into the application, making it easy to find, copy, move, organize and access it everywhere you go.
The slick user interface segregates contents into Songs, Pictures and Videos and clicking on either of these takes you to the respective content that has been organized from various cloud accounts.

Sunday, December 29, 2013

Choosing between SOAP and REST is not an easy decision

Choosing between SOAP and REST is not an easy decision

Man wearing hat looking down a divided roadSOURCE: olly/Fotolia
Choosing between SOAP and REST isn't an easy task for architects because there are pros and cons to each Web service. When publishing a complex program to the world, some say SOAP is the way to go. Others say REST may be more desirable in scenarios where transactions are simple and results are needed in a timely manner.
In this article by Swati Dhingra, a case for SOAP and REST is laid out. Plus, solutions to common problems IT professionals have to deal with when invoking Web services and solutions are addressed for enterprise IT architecture.

CEO becomes clientside developer with aid of HTML5 app builder

Educating children is no easy task, especially when the classroom is virtual and consists of students worldwide. Frik Strecker, CEO of GatherWorks, was approached by a large school to build an entire enrollment and learning management system to make the process easier.
 TechTarget Change Agent logo
The client wanted an online system with seamless integration of everything from course enrollment and homework assignments to online tests and payment schedules. Initially the school was keeping track of such information in various spreadsheets and tried to integrate it themselves. "It was taking a lot of administrative time, and therefore money, to keep track of everything," Strecker said. "When families had questions on what payments were due, it took a lot of effort to answer that."

Making an educated decision


Making the job even more difficult was the fact that all the developers were busy with other projects, so Strecker decided to take on the project himself. "Up to that point I had only done Java serverside development, so no clientside experience," he said.
Given that thousands of students and their families would be affected by the work Strecker and his team did, he knew it was important he get the job done right the first time. "We looked at different technologies and hand-coding it, but that became obvious very quickly that would be unmanageable," he said.
Given Strecker's limited development experience, it was clear the chosen framework would have to be easy to build on without skimping on features. "We had to find something that already had all the functionality we needed."
Within three months we were able to have a fully running enrollment system.
Frik Strecker,
CEO, GatherWorks
The ability to quickly get the system built was also critical to the decision-making process. Strecker noted that he was faced with firm deadlines. A school cannot simply change an enrollment date, for example.
To help narrow down the field of contenders, Strecker consulted with his team of developers, who had a lot of experience with an array of tools. The ZK framework was discussed because of its rich features, but ultimately not chosen because of maintenance concerns. JQuery was popular among the group, but fell short during the prototype phase.
"You could use jQuery, but then you had to find a plug-in for this, plug-in for that, sure you could use jQuery UI, but then end up with a bunch of plug-ins that don't always play nice together," Strecker said. "Individually they work, but if you put them together they don't work so well."

Learning from past experiences

Relying on lessons learned in previous projects, the group noted challenges that arose when they had to go outside of the framework to accomplish everything they wanted. This can be problematic, Strecker noted, because it can increase the amount of time it takes to integrate components and increases the risk of things going wrong.

Sencha Architect 3 Asset Tracker
Sencha Architect 3 Asset Tracker
Sencha Architect 2, an HTML5 app builder, was ultimately selected because of the functionality it offered. "All of the other frameworks involved a lot of hand-coding, a steep learning curve and also involved having to find a bunch of plug-ins," Strecker said.

Preparing for the future

Strecker gave an A+ to the integration system rollout process, the best of his IT experience, primarily because of the amount of features he was able to create with the HTML5 app builder in a short period of time. "Within three months we were able to have a fully running enrollment system, course lists, families enrolling, tracking their payments, invoices and everything else," he said.

Sencha Architect 3 computer shot
Sencha Architect 3
GatherWorks' StudyPlace product offering recently upgraded to the Sencha Architect 3, which also proved to be a smooth transition. One of the things that Strecker noted about the HTML5 app builder framework is how it makes content look good on mobile devices.
Initially, how content would appear on a tablet or smartphone wasn't something Strecker considered when selecting a framework; however, he's glad the product he chose is able to make information look good on mobile devices.
"That was the last thing we ever thought of and today, it's very important, with so many people migrating to mobile devices," Strecker said. "It's nice we didn't have to learn a new tool or have separate code."

Prediction for 2014: Mobile apps will be the most revolutionary technology

Some technologies simply come and go, but others have a way of changing the way people live, and research indicates mobile devices are such game-changers. Forrester Research Inc. recently released a report, "Top Technology Trends to Watch in 2014 to 2016." In this podcast, principal analyst Brian Hopkins discusses that report, which identified technologies that will be the most revolutionary in the next couple of years.
Brian Hopkins,
Forrester Research
principal analyst
The list, derived from responses to an annual survey of enterprise architects, placed big data for real-time analytics as the second most revolutionary technology to be on the lookout for. The place marked a rise from third place last year.
"I think that what is really going on there is an increased emphasis around doing analytics not on the historical information, picking through the past trying to try to predict the future, but more around having the ability to peel the data as it's generated in whatever format it's generated, and to use that data more quickly to make decisions in a situation about the best way to take an action and engage customers," Hopkins said.
Another emerging trend climbing the list, from eighth to fourth, iscustomer intelligence and analytics platforms. In approximately 15- to 20-year cycles, Hopkins said, successful companies will reinvent themselves to learn more about their customers. Organizations are realizing that to better understand and engage with customers, they need better platforms.
Also moving in the revolutionary technology rankings, mobile platforms tumbled from second place last year, to fifth this year. The downward movement doesn't mean mobile technologies should be ignored. Far from it, in fact.
Mobile applications came in as the most revolutionary technology in the coming years. "Everybody is suddenly realizing that the platform is not the differentiator, it's the apps," Hopkins said. "If you look at the United Nations website, there are approximately 2 billion mobile broadband data subscriptions worldwide."
What really creates value, Hopkins said, is how the applications are deployed. "You can't possibly expect to achieve differentiation by forcing innovation into the hardware [and] into the platform." Customers, he said, are expecting to interact via their mobile devices whenever, and wherever, they go.
Listen to the podcast for the complete discussion on revolutionary technology trends in 2014 and beyond.

New virtual networking technologies make convergence real

The cloud has created two missions for the network in terms of bringing about the convergence of IT resources. Mission one is to connect the application, storage and compute elements that make up the resource pool that we call "the cloud" with stable cost and performance across large geographies. Mission two is to support application needs for connectivity, both internally among the components of applications and externally for application users. Together, the combination of these two network missions creates the foundation of the notion of network-as-a-service or NaaS.
IP and Ethernet networks are connection networks, in that they provide uniform connectivity to the entire community of endpoints. That kind of open networking isn't suitable for many enterprise applications, which is why we have virtual private networks today. The problem is that VPNs are almost always site networks -- static communities of specific business sites.Network as a Service is an evolution of the basic notion of using VPNs to create virtual application networks. The NaaS technology that is the best known today is software-defined networking, or SDN.
To "software-define" a network, the key requirement is to use a set of application program interfaces (APIs) to build virtual networks with specific properties that match the needs of applications. These needs can be external, such as the need for Quality of Experience in user connections, or internal, such as the need for consistent connectivity inside the virtual resource pool of the cloud itself . Network as a Service, in SDN terms, represents the set of services that applications and software can use.

Three main approaches to creating virtual networks, including overlays and SDNs

We use so many different network services that, in many ways, it's not surprising that multiple approaches to SDN have emerged as different vendors and users attempt to address Network as a Service needs that have the highest priority to them.
  1. The virtual overlay network, pioneered by Nicira and later acquired by VMware, is an SDN model with wide appeal. SDN overlay networks -- also called virtual overlay networks -- use tunnels to create a virtual network on top of traditional IP or Ethernet. Because these virtual overlay networks ride existing networks like ordinary traffic, they can be used with any existing network equipment. They don't inherit the technical restrictions on the number of virtual networks a protocol like IP or Ethernet can support, so you can have tens of thousands of virtual overlay networks in a cloud -- enough to give every application its own. This ensures that applications sharing a pool of resources don't interfere with each other or create security problems. This kind of application is often called multi-tenant because it creates a network whose services are partitioned for all of its users/applications, which are the tenants. With this first SDN model, Network as a Service takes the place of a traditional virtual private network.
  2. The centrally controlled software-defined network, defined by the Open Networking Foundation using the OpenFlow protocol, was the second SDN model to emerge. OpenFlow enables a software controller to manage network traffic by creating forwarding-table rules in every device. By making all packet forwarding a function of acentral controller, every aspect of traffic management and connectivity can be software directed. OpenFlow is supported by all the major network vendors, and OpenFlow controllers are available from the Open Daylight project, Big Switch, Juniper, Alcatel-Lucent and other vendors.
OpenFlow networks can support any number of virtual private networks, and manage traffic for optimum performance, optimum utilization of network trunks and optimum operations costs. In theory, virtually any network router or switch can be made OpenFlow compatible, and software switches and routers (virtual switches like Open vSwitch) can be controlled as well as hardware devices. The combination of software controllers and open virtual switching lets both network operators and enterprises build networks without any traditional network hardware at all, if desired. Therefore OpenFlow can create virtually any NaaS service model, but it requires considerable software to centralize network addressing, topology discovery and traffic management
  1. The non-centrally-controlled software-defined networking model looks to achieve the benefits of OpenFlow SDN without the need for a massive central control function to direct all connections and traffic. The Internet Engineering Task Force (IETF) is considering a number of changes to existing protocols like Border Gateway Protocol(BGP) and new standards like Infrastructure-to-Application Information Exposure (i2aex)for central management of network data that would allow current IP networks to offer SDN-compatible features without relying on controlling individual forwarding tables in every switch. Cisco has been a strong advocate of this approach, which emphasizes the APIs used for software control rather than changes in network technology. Because the third SDN model builds on current network protocols and practices, its appeal is that it can converge current network devices into future SDN networks.

Virtual convergence benefits from all software-defined network models

The fact that there are three distinct SDN models shouldn't discourage advocates of virtualization-based convergence. All three models offer improved Network as a Service capabilities, even though they differ in whether they focus on segmenting connectivity for the isolation of tenants and applications, or managing network traffic. Best of all, there appears to be a movement in the market to create a unified SDN model that includes all three.
If the cloud, with its dynamic applications and dynamic converged resources, is above Network as a Service, and physical network equipment, with its long useful life, is at the bottom, it's easy to imagine that building highly flexible, software-based virtual network overlays on top of a traffic-focused infrastructure SDN would be a good approach. Network vendors including Alcatel-Lucent, Brocade, Cisco and Juniper all offer a form of this, and even independent software networking vendors like Netsocket have announced software-overlay technology that can be used to control a lower layer of traffic-based SDN services.
Two layers of software-defined networking -- meaning a separation between an "upper" virtual software overlay and a lower-level "infrastructure" SDN that is bound to network hardware -- may be the perfect path to convergence and the cloud. An agile centralized SDN layer can quickly adapt to services and applications above, and the transport services of the lower SDN layer will likely be bound to the infrastructure and more distributed in order to connect resources, connect users and optimize utilization and operations. By virtualizing everything through flexible connectivity in a proven layered model, virtual convergence is created in the best possible way.

Friday, December 27, 2013

10 Worst Things to Spend Your Money On

Whether you work part-time or full-time, love your career or are waiting for your big break, you are best off making wise spending decisions. Avoid these top 10 money pits like the plague.
(Photo Credit: Tax Credits/Flickr)
We all work hard at our jobs with our eyes on the prize: the paycheck. Part of keeping balance in your life is spending that paycheck wisely. These are the top 10 worst ways to waste your hard-earned paycheck.
1. The Lottery.
You are not going to win. Period.
2. Psychics.
Psychics are usually very good at cold reading people. "I sense you are very close to a family member..." Who isn't? Psychics are just people. They are not magic. Save your money. If you really want to figure out the best career path for you, do your research.
3. Credit Card Interest.
Do not put purchases on a credit card and then not pay it off. Thanks to Obama, banks that sell you credit cards must now tell you how much interest you will pay over time, depending upon how much you pay each month. Read your statement. Stop using your credit card; the interest is money down the drain.
4. Hotel Minibars.
This is where they get you when you travel. You arrive after a long flight, exhausted ... and the mini bar is full of expensive sugar, alcohol, and $5 tiny bottles of water. Very tempting when you are at your weakest. Think ahead and pack water and snacks.
5. Leased Cars.
You are better off buying a car you can afford rather than leasing a car and having nothing to show for it when the lease is up.
6. New Cars.
And when you purchase that affordable car, buy a used car and take good care of it so it lasts.
7. Cigarettes.
They are expensive and they are killing you. If you are addicted, you are better off spending money on one of the many methods devised to help you quit.
8. Fur Coats.
These are much more expensive than other winter coats. Plus, they carry the added financial of burden of requiring cold storage part of the year, depending upon where you live. Keep a non-fur winter coat in your closet for free all summer long.
9. Rent.
If you can afford to buy a home, you are much, much better off building equity than paying rent. Obviously, this is something people have to work up to.
10. Air.
Last but not least, this one is funny. Do not purchase canned air from Prague. (Yes, this is a real product.)
Tell Us What You Think

For the Horde! 10 Rad Jobs of the Future [infographic]

It's time to start considering what the future of the job market is going to look like because, according to Manolith's infographic, there will be plenty of amazing "sci-fi" type of careers opening up very soon. So, if you're in a dead-end job and are looking to make a career out of your secret techy passions, then check out this infographic and start geeking out!
(Photo Credit: br1dotcom/Flickr)
According to Manolith, some of the rad jobs of the future include the following:
Alternative Reality Architect - Researching and designing "wearable technology" such as Google Glass.
Personality Programmer - Think of developing artificial intelligence personalities such as Siri, Apple's answer to AI for their users. There will be great opportunity for the development and testing of such technology in the near future.
Weather Coordinator - Soon enough, we won't need to check the weather because we will have the ability to influence (and even control) the weather. Just imagine the benefit of being able to regulate the weather to accommodate world-wide events.
What job from the infographic tickles your fancy?  

10 Rad Jobs of the Future

Tell Us What You Think

10 Signs You Love Your Job

At a time when it seems that more people are taking jobs out of necessity rather than passion, it may be difficult to imagine that people exist who really love their jobs. While you may not refer to your job as your BFF or dream of your cubicle each night, you may actually be one of those people.
Do you ever have days where you tell yourself “If someone offered me a nickel, I’d leave right now”? Everyone does. There are very few jobs where employees are actually giddy about being at work every single day. Yet, some genuinely love their work. Here are 10 signs that you love your job.
Business Meeting
1.  Less Gossip More Happiness
People who love their jobs generally focus on the positive aspects of their co-workers. Instead of gossiping and looking for negativity, you celebrate accomplishments and are happy for each other.
2.  You Volunteer Instead of Hoping No One Notices You 
In a LinkedIn article, Dharmesh Shah says people who love their jobs think “I hope to get to…” instead of, “I hope I don’t have to…” You volunteer for new projects and make new goals which you are excited to tackle, rather than hiding under your desk hoping everyone forgets you work there. 
3.  You View Your Customers as People 
You don’t see clients and customers as numbers but instead, real people, and you form legitimate relationships with them. You realize that customers have needs and you are glad that you are the one who has been chosen to help them with those needs. 
4.  Time Flies 
You don’t feel like you’re in prison waiting to be paroled at 5:00. Sometimes, you don’t even notice it’s time to go home. People who hate their jobs generally can’t wait to be released because they consider happiness to exist only outside of work. 
5.  You Would Recommend Your Job or Company 
No one refers their friends to jobs they hate unless they also hate that friend. If you would recommend your job, career field or company to a friend or family member, you are usually happy at your job. 
6.  You Are Awake During Meetings
You enjoy meetings because you get a chance to not only socialize with your co-workers a bit, but you also enjoy the team work involved in making decisions and changes. You also want to be a part of every step and every part of the process required in job goals. 
7.  You Work With Your Manager
Your manager trusts you, values, respects you and most certainly knows that he or she can depend on you. You don’t work for your manager, you work with your manager.
8.  Your Co-workers Depend on You
And you don’t want to let them down, not because you will be penalized for it, but because you want them to continue to admire you as much as you admire them.
9.  Promotions Are Nice, But So Is Fulfillment
You appreciate promotions and earning money but you gain so much more from your job that if you were offered a higher paying salary and left, you would probably still miss it. When it comes to jobs, you can’t always place a dollar amount on benefits like fulfillment and gratification. 
10.  Retirement Sounds Really Boring 
Some people drag their legs through employment always dreaming of the day they are free and can retire to their sofas. When you love your job, retirement sounds more like a really boring vacation that lasts too long, rather than an escape. 
Other signs that you may love your job include being excited about your to-do list, helping co-workers without even thinking about it and having an overall positive outlook on the future of your job. People who love their jobs don’t think about the possibility of losing their jobs but instead, how many ways they can make the biggest impact. 

Tell Us What You Think



We want to hear from you! Do you love your job? Share your thoughts on Twitter or in the comments!

Monday, December 23, 2013

What’s New in System Center 2012 R2 Configuration Manager

Use the following sections to review information about significant changes in System Center 2012 R2 Configuration Manager since System Center 2012 Configuration Manager SP1:
  • Site Installation and the Configuration Manager Console
  • Sites and Hierarchies
  • Migration
  • Client Deployment and Operations
  • Software Deployment and Content Management
  • Monitoring and Reporting 
One of the most significant changes is support for Windows 8.1 and Windows Server 2012 R2.

Site Installation and the Configuration Manager Console

The following sections contain information about Setup and site installation changes in System Center 2012 R2 Configuration Manager.

Site Installation

The following options in Setup for site installation are new or have changed for System Center 2012 R2 Configuration Manager:
  • When you run Setup to install a new primary site or central administration site, you can select non-default locations for the site database files. The option to specify non-default file locations is not available when you specify a SQL Server cluster.
Sites and Hierarchies

The following sections contain information about site and hierarchy changes in System Center 2012 R2 Configuration Manager.


Site System Roles

The following are new for site system roles in System Center 2012 R2 Configuration Manager:
  • There is a new site system role, the certificate registration point. This new site system role requires IIS and works in conjunction with a policy module add-on for the Network Device Enrollment Service server role for Active Directory Domain Services that runs on Windows Server 2012 R2. This solution provides certificate enrollment for devices that Configuration Manager manages.
Migration

The following items are new or have changed for migration in System Center 2012 R2 Configuration Manager:
  • Some UI labels and descriptions are updated to reflect the functionality of migrating, not upgrading, distribution points between hierarchies that run the same version of System Center 2012 R2 Configuration Manager.
  • When you use the Reassign Shared Distribution Points Wizard, you have the same options as when you deploy a new distribution point, including options make the distribution point a pull-distribution point and to add it to boundary groups in the destination hierarchy.
Client Deployment and Operations

The following sections contain information about client deployment and client operations changes in System Center 2012 R2 Configuration Manager.
Client Deployment

The following items are new or have changed for client deployment in System Center 2012 R2 Configuration Manager:
  • You can now install the client certificate and enroll Mac computers by using the new enrollment wizard for the Mac client as an alternative to using the CMEnroll tool command-line tool.
  • You can now use the renew certificate wizard to renew the Mac client certificate.
  • You can now select Resultant Client Settings from the Configuration Manager console to view the effective client settings that will be applied to the selected device. The resultant client setting accounts for the prioritization or combination of attributes where multiple client settings have been deployed to the same device.
  • Configuration Manager now supports the Unified Write Filter available in certain Windows Embedded operating systems.
  • If you use wake-up proxy, you no longer have to manually configure Windows Firewall on clients to allow TCP/IP ping commands when you specify the Power Management client setting, Firewall exception for wake-up proxy.
  • A new property has been added for Ccmsetup.exe, /ExcludeFeatures:<feature>. This property prevents the specified feature from installing the client installation. For this release, the only supported feature is ClientUI, which prevents the Software Center from installing on the client. 
Client Assignment

The following items are new or have changed for client assignment in System Center 2012 R2 Configuration Manager:
  • You can now reassign Configuration Manager clients, including managed mobile devices, to another primary site in the hierarchy. Clients can be reassigned individually or can be multi-selected and reassigned in bulk to a new site.
Mobile Devices

The following items are new for mobile device management in System Center 2012 R2 Configuration Manager:
  • Users can enroll Android devices by using the company portal app which will be available on Google Play. The company portal app is supported on Android devices as of Android 4.0. When users download the company portal app the installation includes the management agent. The management agent gives you the following management capabilities.

    • You can manage compliance settings which include password, camera, and encryption settings.
    • When you deploy apps to Android devices, you now have the option to install the apps directly to the device.
    • Users are prompted to take required actions, such as app installations or updating device passcodes by using Android notifications.
  • Users can enroll iOS devices by using the iOS company portal app which will be available in the App store. The company portal app can be installed on iOS devices as of iOS 6. The company portal app will allow users to perform the following actions:

    • Change or reset passwords.
    • Download and install company apps.
    • Enroll, unenroll, or wipe company content from their devices.
  • Devices that run Windows RT, iOS and Android now support a deployment purpose of Required. This allows you to deploy apps to devices according to a configured schedule.
  • Wipe and retire functions now include the option to only remove company content from devices, see the table in Device Life-cycle Management for information about what company content is removed.
  • You can configure enrolled devices as company-owned or personal-owned. Company-owned allows you to get software inventory on on all mobile devices. You can configure devices as personal-owned or company-owned by using the Change ownership action. Change ownership is only available for devices that are not domain-joined and do not have the Configuration Manager client installed.All mobile devices will report software inventory on company content when they are personal-owned or company-owned. iOS and Android will report a full software inventory on the device if they are set as Company-owned.
  • You can use Windows Intune to manage Windows 8.1 devices that are not joined to the domain and do not have the Configuration Manager client installed.
Collections

The following items are new or have changed for collections in System Center 2012 R2 Configuration Manager:
  • A new management option allows you to configure maintenance windows to apply to task sequences only, software updates only, or to all deployments.
Compliance Settings

The following items are new or have changed for compliance settings in System Center 2012 R2 Configuration Manager:
  • New mobile device settings and mobile device setting groups have been added. These can be found on the Mobile Device Settings page of theCreate Configuration Item Wizard.
Remote Connection Profiles

Remote connection profiles are new in System Center 2012 R2 Configuration Manager. They provide the following capabilities and have some dependent configurations:
  • Deployment of remote connection profiles that allow users to remotely connect to work computers from the company portal, when they are not connected to the domain or if they are connected over the Internet.
Certificate Profiles

Certificate profiles are new in System Center 2012 R2 Configuration Manager. They provide the following capabilities and have some dependent configurations:
  • Deployment of user and device certificates for managed devices by using the Simple Certificate Enrollment Protocol (SCEP). These certificates can be used to support Wi-Fi and VPN connections.
  • Supported devices include those that run iOS, Windows 8.1 and Windows RT 8.1, and Android.
  • Deployment of root certification authority (CA) certificates and intermediate CA certificates, so that devices can create a chain of trust when they use server authentication for network connections.
  • A certificate registration point must be deployed in the central administration site or a primary site and the Configuration Manager Policy Module must be installed on a server that is running Windows Server 2012 R2 with Active Directory Certificate Services and the Network Device Enrollment Service role. This server must be accessible from the Internet and communicate with an enterprise CA to issue the certificates. For more information about the changes in the Network Device Enrollment Service to support this scenario,
VPN Profiles

VPN profiles are new in System Center 2012 R2 Configuration Manager. They provide the following capabilities and have some dependent configurations:
  • Deployment of VPN profiles that provision devices with the settings and certificates that they need to access corporate networks.
  • Supported devices include those that run iOS, Windows 8.1, Windows RT and Windows RT 8.1.
Wi-Fi Profiles

Wi-Fi profiles are new in System Center 2012 R2 Configuration Manager. They provide the following capabilities and have some dependent configurations:
  • Deployment of Wi-Fi profiles that provision devices with the settings and certificates that they need to access corporate Wi-Fi hotspots.
  • Supported devices include those that run iOS, Windows 8.1, and Windows RT 8.1, and Android.
Software Deployment and Content Management

The following sections contain information about changes for software updates, software distribution, operating system deployment and task sequences in System Center 2012 R2 Configuration Manager.
Software Updates

The following items are new or have changed for software updates in System Center 2012 R2 Configuration Manager:
  • New maintenance window dedicated for software updates installation. This lets you configure a general maintenance window and a different maintenance window for software updates. When a general maintenance window and software updates maintenance window are both configured, clients install software updates only during the software updates maintenance window.
  • You can now change the deployment package for an existing automatic deployment rule. New software updates are added to the specified deployment package every time an automatic deployment rule is run. Deployment packages can become very large over time and might impact replication scenarios, particularly when a new distribution point is added to your hierarchy or when a distribution point is added to a distribution point group. You can now change the deployment package periodically to keep the size of the deployment package from getting too large.
  • You can now preview software updates that meet the property filters and search criteria that you define in an automatic deployment rule. Software updates preview lets you review the software updates before you create the deployment. The Preview button is located on the Software Updatespage in the Automatic Deployment Wizard and on the Software Updates tab in the properties for the automatic deployment rule. 
Application Management

The following items are new or have changed for application management in System Center 2012 R2 Configuration Manager:
  • Web applications in System Center 2012 R2 Configuration Manager are a new deployment type that allows you to deploy a shortcut to a web-based app on users’ devices.
  • Windows 8.1 introduces the app bundle (or .appxbundle package) to help optimize the packaging and distribution of Windows Store apps and resource packages. Configuration Manager extends the existing Windows app package deployment type to recognize .appxbundle package files.
  • The create application wizard includes a new option that allows you to configure featured applications. These applications are displayed prominently in the company portal.
  • You can specify a privacy link for each application that users can review before they install the application.
  • You can configure an application to automatically open a VPN connection if a VPN profile has been configured.
Operating System Deployment

The following items are new or have changed for operation system deployment in System Center 2012 R2 Configuration Manager:
  • Support for Windows Server 2012 R2 and Windows 8.1.
  • Support for boot images created by using the Windows Automated Installation Kit (Windows AIK) for Windows 7 SP1 and based on Windows PE 3.1.
  • Added support for PXE boot of IA32 UEFI computers.
  • Ability to create prestaged content files for task sequence content. The Create Prestaged Content action creates a compressed, prestaged content file that contains the files and associated metadata for the content in the task sequence. By default, Configuration Manager detects and adds the dependencies associated with the task sequence to the prestaged content file. You can then manually import the content at a site server, secondary site, or distribution point.
  • Added virtual hard disk management from the Configuration Manager console. You can create and modify virtual hard disks, and upload them to Virtual Machine Manager.
  • New task sequence steps:

    • Run PowerShell Script: This task sequence step runs the specified Windows PowerShell script on the target computer.
    • Check Readiness: This task sequence step verifies that the target computer meets the specified deployment prerequisite conditions.
    • Set Dynamic Variables: This task sequence step gathers information and sets specific task sequence variables with the information. Then, it evaluates defined rules and sets task sequence variables based on the variables and values configured for rules that evaluate to true. 
  • New task sequence built-in variables:

    • SMSTSDownloadRetryCount: Use this variable to specify the number of times that Configuration Manager attempts to download content from a distribution point.
    • SMSTSDownloadRetryDelay: Use this variable to specify the number of seconds that Configuration Manager waits before it retries to download content from a distribution point.
    • TSErrorOnWarning: Use this variable to specify whether the task sequence engine treats the requirements not met warning from an application as a fatal error. You can set this variable to True or False. False is the default behavior.
    • SMSTSMPListRequestTimeout: Use this variable to specify how much time a task sequence waits before it retries to install an application after it fails to retrieve the management point list from location services. By default, the task sequence waits one minute before it retries the step. This variable is applicable only to the Install Application task sequence step.
    • _TSAppInstallStatus: The task sequence sets the _TSAppInstallStatus variable with the installation status for the application during the Install Application task sequence step. The task sequence sets the variable with one of the following values:

      • Undefined: Set when the Install Application task sequence step has not been run.
      • Error: Set when at least one application failed because of an error during the Install Application task sequence step.
      • Warning: Set when no errors occur during the Install Application task sequence step, but one or more applications, or a required dependency, did not install because a requirement was not met.
      • Success: Set when there are no errors or warning detected during the Install Application task sequence step.
Content Management

The following items are new or have changed for content management in System Center 2012 R2 Configuration Manager:
  • The following changes are introduced for pull-distribution points:

    • Pull-distribution points support the prioritization of their source distribution points. A priority can be assigned to one or more source distribution points, and the pull-distribution point attempts to locate content from a distribution point assigned to the lowest numbered priority before attempting to contact a distribution point associated with the next higher numbered priority.
    • Pull-distribution points push status for completed actions to the site server. This replaces the requirement to have Distribution Manager (distmgr) on the site server poll each pull-distribution point periodically to obtain this status, and helps to reduce the overall processing load for distmgr on the site server.
  • From the Distribution Status node in the Monitoring workspace of the Configuration Manager console, you can cancel distributions that are in progress to a distribution point, and redistribute distributions that have failed.
  • You can use the new built-in report named Distribution point usage summary to view details about how individual distribution points are utilized, including how many unique clients access the distribution point, and how much data transfers from the distribution point.
  • You can configure multiple Network Access Accounts at each site.
  • Clients that use Windows BranchCache to download content and that have a download interrupted now resume the download where it left off, without having to restart the download from the beginning.
  • The following additional optimizations are introduced to improve performance during deployment of content:

    • Each time Configuration Manager transfers content to a distribution point, it calculates the speed of the transfer. During subsequent content deployment, this information is used to prioritize which distribution points receive content first. This is done to maximize the number of distribution points that receive content in the shortest period of time.
    • To improve concurrent distributions, when Configuration Manager validates content on distribution points, it validates up to 50 files during each WMI call to a distribution point. Prior to this version, Configuration Manager used a single WMI call to a distribution point to validate each individual file.

Monitoring and Reporting

The following sections contain information about changes for monitoring and reporting in System Center 2012 R2 Configuration Manager.

Reporting

The following items are new or have changed for reporting in System Center 2012 R2 Configuration Manager:
  • Configuration Manager reports are now fully enabled for role-based administration. The data for all reports included with Configuration Manager is filtered based on the permissions of the administrative user who runs the report. Administrative users with specific roles can only view information defined for their roles.