US Patent No. 10853131- Prepared by Attorney David Tran for Salesforce, Inc. and filed by Dergosits & Noah LLP
Brief description: For some embodiments, each dataflow life cycle may include a configuration information field 320 used to store context information. For example, the configuration information field 320 may store information about the developer that creates the dataflow, the development team that the developer belongs to, etc. For some embodiments, the configuration information field 320 may be implemented as a JavaScript Object Notation (JSON) field which is a data-interchange format that is easy for human to read and write and for computer systems to parse and generate. For example, the usage of JSON blob in SQL database may ensure the schema change of the dataflow lifecycle will not require a data migration. Because data migration is a complex process, it's desirable to avoid that process if possible. By using JSON blob and store information in JSON, no schema change may be needed even if there is a need to change the schema design. For some embodiments, since different development team may have different needs for different columns, it's possible to use a Cassandra database (an open source NoSQL database developed by Apache Software Foundation) or columnar table as an alternative to store the configuration information. The configuration information field 320 may be used to better communicate with the developer in case when there are bugs or internal errors associated with the execution of the dataflow life cycle with which the developer is associated. For some embodiments, a dataflow life cycle may be designed to be immutable. This means a dataflow life cycle may not be changed once it is created. This may be because a change to a data flow life cycle is infrequent and it is desirable to capture all changes. Further, it may be possible that the functionalities of a data flow life cycle are not to capture the whole java class of pre/post execution. Instead, it may be to capture an enum in data flow life cycle. During runtime execution, the enum may be looked up in an application server to determine the pre-processing and post-processing customized codes that the enum is associated with. As such, if there is a change to the java code associated with the pre-processing or post-processing customized codes may not trigger a change to the data flow life cycle as long as the linking enum is not changed.