Does anyone know whether it is possible to deploy custom or standard object into big object without manually writing those entire object fields and permission set file? Thanks in Advance
It doesn't look like possible. There are no document which mention this.
Also there are many difference between existing object and big objects. For example there naming conventions is different. From docs:
Object names must be unique across all standard objects, custom objects, external objects, and big objects in the org. In the API, the names of custom big objects have a suffix of two underscores immediately followed by a lowercase “b” (__b). For example, an external object named “HistoricalInventoryLevels” is seen as HistoricalInventoryLevels__b in that organization's WSDL.
Also You must use the Metadata API to define or add a field to a custom big object. You can’t do it through the UI. So you might need to manually add them in permission set.
Permissionset/profile files — Create a permissionSet or profile file to specify permissions for each field. These files are not required, but is required to grant access to users. By default, access to a custom big object is restricted.
Since Spring '19 it's possible to create deploy Big Objects from Setup. Before that release, it was only possible through Metadata API.
A big object stores and manages a massive amount of data natively on the Salesforce platform. You can archive data from other objects or bring massive datasets from outside systems into a big object to get a full view of your customers. Big objects provide consistent performance, whether you have 1 million records, 100 million, or even 1 billion. Previously, creating a big object required using Metadata API. But now, if you aren’t comfortable using the API, you can create a big object in Setup, define its fields, and build the index that defines how the big object is queried.