Which EventStream to use:
DirectEventStream (DES) vs BufferedEventStream (BES)
Use DES when you don't want any latency of data appearing in BAMPrimaryImport database. Since this is synchronous call, any error will be thrown back to the calling application.
Use BES if your concern is throughput. This is particularly suited for scenarios with spurts of large chuck of events. A small penalty for using this is that there will be small latency between when the event is sent and the event appearing in BAMPrimaryImport database.