engineer in Red Hat currently on the division project and I'm going to take this role from being a shadow format unit or division. So we will have a brief look at what change data capture is, then of course we will focus on the division project and from there because we are supposed to focus on non-arrangement databases we will talk about changing the capture for MongoDB specifically and after that we will actually have a look at one of the possible use cases for change data capture time in MongoDB. At the end there will be place for questions and hopefully some answers. So what it is, change data capture. I very much like this definition that change data capture is a process of recognizing changes in a data system and they're delivered to some downpour consumers so that these consumers can take action to base on these changes. This diagram actually portrays one of the variations of change data capture based on mining of the transaction log.  Just for the remote audience, the transaction log is sort of a canonical source of truth for each databases and that's the thing which actually records all the operation of an old transaction which then can be used for example to recover something nasty happens to the database for example some analytics or anything like that. So we have a database and we have some users which are actually executing all your regular create update delete operations and modifying your data. Then we have a CDC platform which is reading the database transaction log and it's emitting events about these changes to any possible downstream consumers which can then for example store your events as data in some data lake or data warehouse or perform some calculation and statistics on top of that. Beside this transaction log mining approach there are some alternatives mainly we can implement a CDC based on queries and based on database triggers. However these approaches do have some disadvantages for query based change data capture but one of the obvious disadvantages is that you have to constantly execute your query so that puts additional strain on your database and you are also not able to actually capture all the changes because how do you actually write a query which captures deleted data? The answer is you don't, you can't. With triggers you can actually recognize all the changes to your data but you get a very database specific implementation and you are also limited by the expressiveness of the procedural language which is supported by your database so you might have actually issues getting the changes out of the database. The most common use cases for change data capture include but are not limited to things like the data application or actually cache invalidation of search and index updates. You can also build auditing on top of it and last but not least you can actually use CDC with microservices to implement some of the architectural patterns which we don't have a look at at the end of the presentation. One of these things is like reliable data exchange between microservices. It brings us to the division project so what is division? Division is actually an open source complex change data capture platform which covers multiple databases. We have quite active and large community because the project has been around for a while and it's been used in some relatively large scale deployments by our community already. When I said that we support multiple databases we have to talk about what called the division connectors and these connectors can be actually divided into three different groups so to speak. First there are the core connectors. These are the connectors which are the source of these connectors is actually part of the main division repository under the division organization and these connectors are developed, maintained and supported by the core division team. Then we have community connectors again these connectors are housed under the division organization umbrella and give-up but they live in separate repositories and they are actually developed by our community contributors. So for this we have DB2, Cassandra, Wittes and our newest addition with Cloud Spanner. The third group which for me is probably the most valuable one are independent connectors. These are connectors built by completely third parties and different companies outside of the division team and Red Hat and everything. These are built on top of our command CDC connector framework so to me these are the showcases that the project kind of took a life on its own and it's now spread beyond the boundaries of our core team and Red Hat in general. So how can you run these connectors? First and foremost our database connectors are actually an implementation of Kafka source connectors so do we have somebody who doesn't have any experience with Kafka? Okay so Kafka is let's say event messaging platform and there is this component called Kafka Connect which provides the WIT to run services or connectors which can get data either into Kafka or out of the Kafka. The ones which are getting data into Kafka are called source connectors. So that being Kafka Connect connector it means that it requires Kafka and Kafka Connect to run and the events are then stored in Kafka topic. So you can deploy DB2 as Kafka Connector on top of Kubernetes using the StreamZero operator, hierarchy, you are just in time. The other option is actually embed DBZero into your application through something called DBZero Engine. DBZero Engine actually started as a tested dependency because we needed means to actually prove that the connectors work but as it's usually with good testing tools they kind of became used in production by some of our community members so we decided to improve it and it actually built another runtime around this DBZero Engine and that's how DBZero Server was born. DBZero Server pretty much fulfills the same role as Kafka Connect does but it's simpler, more lightweight runtime and it's really meant for different data-sync architectures where you either don't want to or can't use Apache Kafka. We also support many other things besides actually being able to store these events in Kafka. You can get them into Amazon Kinesis, Google Pasta or simply send them over HTTP. The new addition to this ecosystem is the DBZero operator, which was just released in the first preview version and you can actually use that to deploy easily in DBZero Server on top of Kubernetes as well. Now to the third important part of this talk, we also need to say what the MongoDB is because that's going to be the database of folks for today. MongoDB is a document-oriented, no SQL database, no SQL database that means it doesn't deal with relations. Similarly, I support them from my SQL boot and document it means that the data is actually changing or stored in form of documents. Other than that, there's a pretty similar structure to the database so you have the database itself. A collection would be an alternative to what the table is in a rational database and a document would be counterpart to a row in that table. The document delsubs are stored in a format for JSON, which is a binary representation of JSON. However, it's not just binary JSON, JSON goes beyond what a regular JSON is. For example, there are additional data types which are supported in JSON if you wouldn't find in JSON. And MongoDB also has native support for change of the data observation. Before we actually get to extracting the data, we need to talk about how the database can be run. First and foremost, there is this standard of deployment but that's not really meant for production. It's recommended just for testing and development environments. And since there isn't any way to actually extract data changes from standard of deployments, we don't care about it and we cannot possibly cover it. So, the database is two, a replica set which is the basic unit of MongoDB deployment. It provides some basic data identity and HA features. And then if you want to actually have a horizontal scaling of your data, you can use MongoDB Sharded cluster deployments. The primary one is a replica set, as I already said, and it's a typical primary secondary topology where you can actually see that we have a client and, first of all, all the drives are always directed to primary which holds the data and the data is replicated to secondaries which express as a beta replica. And second, they can actually take some of the load from primary to support the reads from the secondaries. As a basic topology, if primary goes down, then the secondaries are actually entering an election phase and they will, among themselves, elect a new primary. This is done by the fact that there is a heartbeat going on between all the replica set nodes, which means that every node in a replica set is actually aware of the existence of all the others. The data application part is actually the core of what we need to know for the ECM. You can see here, we can see some data copying going on, and this is so-called operations log. At the beginning, I've talked about databases having this transactional log, and this is actually an equivalent in MongoDB for this. So what is an operation log or a book for shorting MongoDB? It's a cart collection holding a rolling record of data modifications. What does that mean? Well, first, as I said, what a collection is, is an active element to what a table would be in a relational database. And what it means that is a cart collection, so it means that there are some restrictions on top of it, and obliques specifically can be restricted in two ways. First, there is a maximum configurable size of all the data within the oblock, and there is also a configurable time retention in hours. If the oblock either grows very large outside of the maximum size, or a record is in oblock for longer than is the maximum retention time, then entries will start dropping out of the oblock, and these actually mean that the data will be lost. So long story short, oblock actually keeps all the changes down to the database for a specific period of time. So depending on the configuration of the size and the retention of oblock, that's how far back in time you can actually go to replicate all the changes which are done through primary. And this oblock is actually the means how data replication is achieved in a very classic deployment for MongoDB. So if the secondary two replica went down, and the primary had an oblock which is configured to retain data for two hours, for example, then as long as the secondary would be back up in less than two hours, it could just really stream all the required changes. If the secondary was done for longer than two hours, then it would have to discard all its data and actually copy everything from the beginning. For sharded clusters, it's where it starts getting complicated. We have to first add a component called mongo, which is the mongo router. It decides what shard you want to go, and then we have separate shards. But first, what actually shard achieve is a means to horizontally scale your data. So it means that if you have, for example, a custom recollection of all recollections, then a portion of the data is actually distributed to each of your shards. And the mongo router is the only part which actually knows about all the specific shards. So that's sort of the glue layer on top of regular replica sets, which decides where should, where is rerouted, or how to manage set results or perform sorting across these shards. Because the shards themselves are individual replica sets with individual operation logs. So they are not the variable each other's existence compared to genomes inside a replica set. Getting the changes out of this oblock can be tricky sometimes. Since version 4, MongoDB actually provides an abstraction called change-streams. This is a feature where you can actually subscribe or open a change-stream. Again, the database itself will push information about these changes in form of changes in documents to the client. This is the feature which DBZM actually employs to extract these changes from MongoDB. You can actually start the change-stream at some operational time, which again can go as far back as the maximum retention of the oblock. Because change-streams are still just an abstraction on top of oblock. Or when you actually get some change-stream document from this change-stream, you can use its ID as the resume token to start receiving these changes after a certain operation from the past. How does the entire change-exduction process function with DBZM? Well, first in DBZM, we have these two phases. First, the phase is something we call snapshot. That is what, at the beginning, we actually query and transfer all your data into events to actually get the starting point. Before we do that, the first thing we do is we actually obtain a resume token. This is the point of time where we started the connectors. From there, we will actually stream all the changes. But before we start streaming, we transfer all the currently persisted data into events. Once this initial data copy phase is performed, then we switch into what we call a streaming phase. That's where we use this formally obtained resume token and start streaming the data. With each change document we receive from the open change stream. We do two things. First, we actually transfer it into events and we deliver it into the thing, which could be Kafka, Redis, HTTP, Google Popsup, or any other messaging system we support. We also store the resume token for this particular change into our offset storage so that in case there is an outage, for example, there is a connection loss to the database, we can resume streaming from that point of time. Once again, I mentioned change streams being an abstraction on top of operational logs, so that means this offset can be at most as old as is the maximum retention time for change streams. In case you actually, for example, have an outlock which retains changes for two hours and the connector is down for more than two hours, then when you restart the connector, depending on configuration, the entire process will happen from the beginning and you will again have to undergo the initial copy of the data, because otherwise you would be risking data loss and this is something we cannot guarantee. We cannot guarantee. We don't want to guarantee that we don't lose events. It's a bit more complicated, but we get to, then we get to sharding, because in this case, we have two options of actually extract the data. In both cases, we are opening change streams, but in the so-called replica set collection mode, what we do is actually in order to achieve higher throughput and higher performance, we open an individual connection to each of the shards within the sharded cluster. This has the advantage of having larger throughput, because we stream changes down to each of these shards separately, but it also means that we can never actually guarantee, for example, the order of changes performed across these shards. We guarantee it always if there is a new entry, which we are observing, we can guarantee that all the changes will be in the right order for one specific entry, so we will always get creation first, then there will be modifications in the right order, and if you delete it, it will be always at the end. Is there a question in the background? So we can guarantee the order of these changes for one particular document, but we cannot guarantee the order across documents, because there is no means of actually knowing for the using whether a change in shard 2 occurred before or after a change in the shard 1. We can have these guarantees in the other connection mode for sharded cluster elections, called sharded. In this case, we open the change streams again to the Mongol router, which glues everything together, because the Mongol router in turn opens change streams to each of the other shards, and it performs a synchronization, and it orders everything as it should be, but the price for it is that there is some overhead, and then there is some delay before we actually can get these changes from all of those shards. This is all a theory, but let's us look at how we could actually approach some practical problems using division and Mongol Ruby. So imagine we have a simple order sender base, which needs to do two things. First, we need to store an order, and we also need to send a message to another service called shipment service, and we need to do all of that reliably. What's the problem? Well, dual write are prone to inconsistencies, so if you want to guarantee that we do both of these things, what's the first solution which comes to your mind? Any ideas? That's the same time. Not at the same time, but sort of both or none. You have to guarantee that both succeed. Distributed transaction and two-phase commit would be an option, but you may not want to use distributed transaction, and for example, if the system where you want to send the message is, for example, Apache Kafka, it may not even support it. So how do you actually ensure that if you store the data in the database, then the message is always delivered as well? The solution is something called a works pattern, and it starts with actually eliminating one of these external systems, and since the database belongs to the service, the one system we eliminate from this storage process is sending the message, or eliminate, we move it somewhere else. So instead of initially sending the message, we save the message into an outbox collection together with the original order, and we do both of these inserts in a single document transaction. That means that the eliminate the service coupling, but then again we still haven't sent the message to the Apache Kafka, so we need to introduce sort of a work, a work process which would be responsible for the delivery of these messages. The way it will look like is that we will have this order service that stores both the order and the message, and then we need something which will read these messages and guarantee that they get delivered into Apache Kafka. So what's the process for the work I think is to actually send the message? First it needs to pull the collection and check if there are any unprocessed messages, so it gets a message, then it needs to send the message, and then it needs to mark this specific message in this outbox collection as a process. What are the messages of such approach? Yes, you cannot guarantee that you actually do this near real time, and then you again are pulling the collection so you have a similar problem as you would have with the query-based change data capture approach, and you can't really solve the fact that in order to reliably mark it as process, you would have to again do both of these in transaction, the sending of the message and marking out process. This is something which cannot be solved, so the best we can do is actually have at least one guarantee. We can guarantee that each message will be processed, but we can't guarantee that it will be processed more than once. And last by moment at least, if you are the developer who is supposed to implement this pattern, then your files are boilerplate. You've gotten from sending a message to implement an entire worker process which has to clear a database, send message, and ensure that it does it reliably. That seems like a lot of work. However, this is actually where Divisium can help you because it gets rid of the entire need to implement this worker process responsible for getting rid of these messages. You just plug the Divisium to your database and it will completely act as the as the worker process. It will be observing any changes by opening the change streams to this alubox table and it will be editing these messages to the desired Kafka topic. There are several mandatory but configurable part which these messages need to get. So we need something called an aggregate type. This is just to distinguish different message types and we need some ID of the related object to this message and then you need to provide some payload which is any data or none data which you wish to send with this message. Then there are additional fields which you can add as a wish. For example, in this case I have a field called type which distinguishes the type of the event. Let's demonstrate with a simple demo. So first of all, I have a local Kubernetes cluster running where I have few things. First, I have Kafka deployed through the string operator. I have some tooling image which provides this thing type. Kafka can actually have a look inside the Kafka topic and I have Mongo database running and I also have a database operator. The first thing I'm going to actually do is deploy the division and before that happens we can actually have a look at what is the configuration. So this is the configuration for division and we can see three important parts. First, we have this same configuration portion which says that we will be actually sending these events to Apache Kafka. If we wanted to, we could replace this Kafka configuration. For example, Google pops up and the messages will be edited to Google pops up. Then we have this source configuration which just unsurprisingly contributes to MongoDB connector because we want to extract these changes from MongoDB and the most important part for us is actually this transform part because the Outlook's pattern support is implemented as data transformation. Again, really simple, it just says that we want to use this Mongo event router. This is a configuration to which topic we want to actually send these messages to. In our case, it will be events.gov and then a name which we will configure as the aggregated type. Then this additional configuration just says where the type field should be placed and then we kind of want to unwrap our data of our data to actually get rid of something that big is a format envelope which we are using for other messages. So in the meantime, it looks like GB zoom actually started. So first, we will actually simulate what a service would do with the data. So we will open a Mongo shell connection and we will just demonstrate that there is no Outlook's collection yet. It is not there. I have a simple JavaScript code. We will do a simple simulation. First of all, we will open a MongoDB session and then in the transaction, we will create a new order and we will also create the message which will just contain this order as its payload and we will store both of these in transaction. So now we've started and we can have a look into Kafka and see whether we've actually received these messages. I will just connect to Kafka. I want this mode. I want it unbuffered and I want a topic. I want it to go from the beginning and I want a topic named events order and just to have it look nice, we will plug it through. So we can see that we've received this message which in this case we are able to show just the payload but if we looked at the entire Kafka message including the message envelope then we would get a slightly different output and in this case you can see that in headers we also have this order created value for the type field. If we were to cancel the same order, again I will cheat a bit and put it from here, then you can see that we actually received another message and in this case the payload is empty because we haven't stored anything. In this case we were just canceling the order. So the takeaway is from this is that CDC is quite useful to event driven architectures. DBCM is actually a project which provides the need to employ chain data capture and others pattern provides efficient means for microservices to actually rely on exchange data and it's an alternative to a distributed transactions and true face comments. If you have some questions I will try to answer them. Still at least one is delivered, right? Yes. Anything else? Specifically with Kafka and it's something Vojta here would know more about there is now a possibility to have exact ones, right? But that's specific for Kafka at this moment because Kafka is the one doing the deduplication. If there are no more questions, thank you for your attention.


All right everyone. I'm pleased to introduce our speaker this morning who will also be speaking at noon time on a slightly different subject also for the researchers so you're welcome to come back then. Dr. Claude Burgoyne and you may wonder why am I as a retina specialist introducing a glaucoma speaker a glaucoma clinician scientist. Well I know Claude because he and I are both on the board of trustees for Arvo and we're very honored for the fact that he is the incoming president he's the president elect of Arvo so it's a good honor to have him here. A little bit of a brief background he and I also share an upper Midwest upbringing he's from Wisconsin but he did a lot of his a lot of his schooling at University of Minnesota and he did he of interest has an architecture degree and then eventually went to medical school at University of Minnesota and your fellowship was at Hopkins Wilmer and yeah with Harry Quigley and eventually he did he was in on the faculty at LSU and so knows Dr. Hartnett from those times there and but eventually he Hurricane Katrina forced him up to a less well similarly a different rainy place up in Oregon at the Devers Eye Institute so I'm very pleased to introduce Claude here will be our speaker today. Well thank you Paul thank you Emmy for inviting me it's a real pleasure to be here pleasure to talk about OCT imaging and I do want to acknowledge that I work very closely with Heidelberg Engineering but I received no personal income from that relationship and certainly have received no support for this talk. I am also fortunate to be NIH funded to address the very specific issues that I'll talk about today this is my research lab at the Devers Eye Institute who have directly or indirectly produced a lot of the data that I will show you and my group of collaborators at the Devers Eye Institute we're unusually close group mostly focused on glaucoma and Hung Lee Yang is a research scientist in my laboratory that has led a lot of these analysis. I've also been fortunate to be close friends and colleagues with Bal Shahan and many of the ideas that you'll see here are the result of our work together. So I always like to start by focusing on what cupping is in general the objectives for this talk are that I'd like to explain the importance of Brooks membrane opening in your clinical disc examination I want to try to identify the difference between OCT minimum rim width and clinical cup disc ratio and finally I'm hoping to convince you of the importance of the foveal BMO axis and in the phenotyping of retinal anatomy. So what is glaucoma disc cupping? I like to put forward the controversial premise that it's connective tissue deformation and remodeling in the neuropathy of glaucoma that underlies the phenomenon of cupping it what is what makes it unique and that in order to really for a clinician to look at a nerve head and feel comfortable calling it glaucoma regardless of what the pressure is it's the connective tissue phenomenon in the neuropathy that lead you to feel comfortable doing that. So while the retinal ganglion cell axons and the soma are of course central to vision loss in the disease and ultimately they are what drive the neuropathy it's the connective tissues that really make you feel comfortable and I'm going to try to convince you more of that and if anybody can make my research lecture that will really be the very focus of the research lecture for the talk but it all of these things influence our view on phenotyping the neuropathy and so I have to start by making some of these points so the optic nerve head in glaucoma is a site a primary site if not the primary site of insult to the visual system it's by multiple mechanisms that occurs at all level of intraocular pressure and from our standpoint Paul alluded to my background in architecture I had enough engineering to be able to talk comfortably and convince engineers to work with me on this project and so my main grant is focused on engineering of the optic nerve head tissues it's a complex environment and challenging at all levels of intraocular pressure which is why we have the optic neuropathy of glaucoma occurring so frequently at normal levels of pressure so all optic neuropathies demonstrate some form of cupping it's just that the non-IOP related optic neuropathies usually demonstrate a very shallow form of cupping that is pre-laminar tissue thinning it's not actually deformation of the underlying connective tissues now this is taken from one of our articles and what I'm showing you here is a cross section through this optic nerve head this is actually a digital section from a three-dimensional reconstruction of these tissues and it's demonstrating the difference between the cupping that occurs when the pre-laminar tissues which are shown here in purple are thinned or lost and that leads to a shallow form of cupping as opposed to a deeper form of cupping that occurs when the connective tissues of the lamina deform and remodel out of the eye and I'm gonna talk a lot about that in this afternoon's research lecture but the basic idea is that the tissues of the lamina fibrosis fail in a very predictable fat pattern and that in failing they're also remodeling while they do this the canal expands and the lamina thins and ends up being profoundly deformed now having said those things we all know that the phenotype of glaucoma is very variable it can look many different ways and this is just an extreme patients from my practice who have very well documented long histories of elevated intraocular pressure and have an neuropathy that while it behaved in terms of its visual field changes in a glaucoma this manner if you were just to look at this nerve it's a very shallow form of cupping as opposed to myopic eye that also has elevated pressure and has and is showing a very profound and deep form of cupping now one thing that we know one thing that contributes to the way an individual eye will look as it develops glaucoma is the underlying stiffness of the connective tissues that sort of intuitively makes sense at any given level of pressure or pressure elevation an eye that has very stiff tissues is not going to have as deep of cupping as an eye that has very compliant tissues and on average aged eyes we know now from very good studies in monkeys and humans have stiffer connective tissues in the sclera and the lamina and so on average aged eyes have a shallower form of cupping and this I won't go into details it's just a study we did in monkeys to show that at different levels of retinal nerve fibro layer thinning monkeys had young monkeys had deeper cupping than old monkeys on average so this was our original concept about how cupping occurs and then as we began to study monkeys very early in the neuropathy we were very far surprised to find two things this is an control eye and an experimental glaucoma eye of an animal with very early damage less than 10% axon loss and you will see that the lamina is bowed back that is we would expect but the lamina is profoundly thickened rather than thinned and it has migrated out of the sclera notice the control eye laminar insertion into the sclera where we would expect now the lamina has migrated into the pia and so it's not just deformation the lamina is remodeling it's a very active process we think of connective tissues deforming as a passive process but that passive deformation then elicits a tremendous remodeling response that's a very active process and ultimately in this afternoon's lecture I'll talk more about the potential treatment opportunities that these two phenomenon present here I'm showing you a series of histomorphic digital sections from animals that span from very very early in the neuropathy all the way through end stage and you can see the remodeling process starting and how profoundly this has occurred with the lamina way into the peel insertion in the orbital optic nerve in an end stage eye and these are very peripheral phenomenon it's going on throughout the lamina but much more so peripherally and we think this underlies some of the classic phenomenon that explain the clinical behavior of glaucoma including nerve fibrolera hemorrhage acquired laminar pits and the rim and nerve fibrolera loss that is peripheral more than central so all of this is just to emphasize the importance of these connective tissue phenomenon and lay the foundation for seeking to image them and detect them using OCT imaging so let me move now into the OCT portion of the talk and explain why I use the word paradigm change for the OCT future that we have in all retinal and optic nerve head diseases and I start with rent again because I think this is the same equivalent analogy a hundred years ago pulmonologist general medicine doctors had to begin to deal with the fact that they could actually see anatomy beyond what they could hear or pound or touch and feel and I think we're in the same position in ophthalmology now and part of the focus of this talk is to get people to move from just taking the paper printout and looking at the flat printout and start to integrate the actual anatomy into your clinical examination and we're also pushing the imaging companies to make that easier for you to do so let's start with the clinical disk examination and kind of review what we do now which is basically not a lot different than when Helmholtz first created our ability to see the back of the eye certainly Armily's introduction of cup dys ratio was a major advance in 1967 but in the year 2016 I'm going to argue with all due respect to his great accomplishments that this is simply no longer acceptable way to assess the anatomy of the optic nerve head and I hope in the next 30 minutes you'll agree with that so let's start with the disk margin as a concept we conceptualize the disk margin wherever you put it and we'll talk about that in a moment to be an actual boundary of the neural tissues and then we suppose that a horizontal estimate which is all we can do as a clinician which is essentially in the plane of the retina is an accurate assessment of the rim and both of these are necessary delusions if you want to clinically estimate the rim with which I love the clinical examination it is something that we will always do but what OCT is allowing us to do is to recognize our extreme limitations in doing this these are delusions because the disk margin is not a single structure it's not usually a boundary of the neural tissues believe it or not and it's very variable so the concept of the disk margin is inconsistently applied no one teaches you where to mark the disk margin and so let me show you some problems with this first this notion that there's no agreement on where the disk margin is now this is from a 2003 textbook a neuro ophthalmology textbook and it highlights the disk margin in this fashion and that would be my first question to everybody in the audience is how many you agree that this is the clinical disk margin if you do then I've marked it here in green this would be your disk margin this is where I would mark the disk margin somewhat inner that I would I use the term the inner most hyper reflective border or boundary and that's because I think that is the end of brooks membrane opening so which one do you like one or two will go back and forth and when I usually have people raise their hands it's split about it's about 50 50 so the fact of the matter is actually let me go back that's the disk margin and we know that the rim margin is even much more variable than that so clinicians if you train them clinicians can become quite reproducible but they are very different from one another and if you don't train them they are all over the place and let me show you little data to support that so this is a study that we performed at the Deversa Institute in our OCT our longitudinal NIH study of ocular hypertensive patients and we asked the clinic clinicians five glaucoma specialists one of them was a fellow in training to do the following exercise we had 214 eyes of 214 high-risk patients five glaucoma subspecialists and we simply asked them to mark the disk margin in the rim margin in stereo photographs so they started with high resolution stereo photographs on a large high resolution screen we asked them to march the this margin first and you can see that in this representative eye that it bounces back and forth some market here some market at the edge of what I think is the RPE then we'd have them do the same for the rim margin we have them both sets of points we have the their estimate of the rim and you can see how variable they are in this eye and I will say this is a very representative eye and this is an example of five other eyes and you can see the range of the size of the disc and the remaining rim width these are the aspects of the clinical exam that are visible to you as a clinician and I would argue that they're confusing but what I'm going to try to convince you of next is that the most important anatomy has been invisible to you and it's only now through OCT imaging that we've become aware of this so this is just a representative OCT image of the anatomy of the disc margin this is the RPE the coroid the sclera brooks membrane opening is the end of brooks membrane and there are some a great deal of variability in what are referred to as the border tissues of Elschnik this is a schematic of that same anatomy and what is underappreciated is that brooks membrane can often extend beyond the border tissues to variable degree it can have variable amounts of pigment on it and what has emerged from our work and others is that this is highly unusual to be visible to the clinician when this occurs it commonly occurs regionally this is work that Val and I did over the past five years now six years now in which we co-localized photographs to the infrared image acquired at the time of OCT acquisition the green lines represent radial B scans and because this is done with the spectralis and they use eye tracking we know quite precisely where every A scan is located and these are now superimposed on to this clinical photograph so we can really compare OCT anatomy to what we're seeing clinically this is an important representative image it's showing you the red dots i hope that you can see them there they might be somewhat faint if we could lower the lights a little bit more that that would be great so hopefully you can see the red dots along the edge i'm showing you the red dots you can see one here at the end of brooks membrane just at the important clinical clock hours here are all of the brooks membrane opening points in 24 radial B scan images in red and this is where i would put the clinical dis-margin now it's a good time to pause for a moment and say many of you if you would put the clinical dis-margin here you're probably at the edge of the RPE and much further away from the actual boundary of the neural tissues so let's just touch on that point further here's where i would put the dis-margin here is the vertical A scan along which that point lies and most likely it's the reflection of the end of brooks membrane opening that's very satisfying if you marked the dis-margin here you are that far away from the edge of the neural tissues and probably at the start of the RPE so we did this for a large number of eyes in Halifax and it was very common in fact most of the eyes there was at least one region in which brooks membrane was well inside of where the clinical dis-margin was and if you mark the dis-margin here you're even that much further away from the actual neural boundary so this was the first point at which we realized OCT imaging was detecting things that clinicians could not see again on the nasal side there was a nice correlation between what we saw as the dis-margin and the end of brooks membrane but on the temporal side there was this suggestion that a large part of brooks membrane opening extended beyond what we could see and none of us could see anything here that actually troubled me a great deal because in monkey we had done studies like this in monkeys and while this occurred it was never this common or that flagrant and I just didn't believe this was true so I actually flew to Halifax and had Bell arrange for 15 of these study patients that had findings just like this to come into clinic over two days and we examined all of them I just assumed that if I got the light right there would be something reflecting and I'd be able to see the end of brooks membrane opening but it was absolutely not the case that there was nothing visible in any of these patients however oops however we in this patient we noticed that we had a real opportunity because there was a silio retinal artery that seemed to be coming up and around the end of brooks membrane opening and so we knew that if we could show that that was present in the images we would prove to ourselves and others that brooks membrane actually did extend to the notch in this vessel but it was completely invisible and so we brought that patient back the next day and they agreed to have very high resolution B scans starting outside of the disc margin so this is the first one and you can see that brooks membrane is intact as is the sclera and the corroid and I'm just going to march in now progressively so we are past the point that any of us would put the disc margin you can see that brooks membrane is intact beautiful underlying lamina and the buttress peripheral brooks membrane it's really quite quite quite beautiful and I'm just still coming in you can see that brooks membrane is still intact you can see the two parts of the vessels coming together and there's the notch in the vessel and now brooks membrane is no longer attacked so essentially we've proven in this eye and there was one other eye in the study that had the same feature that we could also we proved to ourselves that it wasn't a problem with the alignment of the OCT acquisition it was a very real finding okay so the next issue is inaccurate measurement we know if you start again with this point clinicians have to estimate the rim within the plane of the of the retina you're just forced to do that there's no way that you can do a minimum measurement but wouldn't it wouldn't it be better if we could make a minimum measurement of the rim tissue like we do in the nerve fiber layer like this and that measurement has been now incorporated into most of the current OCT instruments for rim measurement it's called minimum rim width or BMO minimum rim width and when it's done three dimensionally it's been a minimum rim area and it attempts to make a cross-sectional estimate of the remaining rim tissue this is not actually our idea this was first described by Drexler's group in 2007 and in a series of previous articles but once you commit to this much anatomy then a whole bunch of interesting implications occur very quickly to you so if you're gonna trust that OCT anatomy is accurate and there certainly are still caveats to that and trust that the clinical examination of that anatomy is not then it pushes you towards some next steps in this process and we outlined what these next steps should be in an editorial for AJO magazine and I'm going to sort of take you through some of these implications so it's not that brooks membrane opening is the only anatomic boundary of the rim tissue it just happens to be that it's very well visualized within OCT imaging and it's it is a consistent anatomic boundary so what happens next is if you realize that first of all if you have eye tracking and so you can really control where the imaging is being done if in every patient when you first image the patient you can acquire an optic nerve head data set that finds brooks membrane opening and then you can move over and find the fovea real time in OCT imaging establish the access between the fovea and brooks membrane opening which organizes the retinal nerve fiber layer between these two structures then you can acquire all forms of OCT imaging including those in the macula relative to this access and perhaps have more consistency so here i'm illustrating the concept we currently have which is you take an image of the back of the eye it has some boundary on it which i'm going to call the acquired image frame and we say this is the superior and inferior pole of the nerve head but there is absolutely no anatomic justification for calling this the superior optic disc it changes on a given day in a given patient depending upon the position of their head and the cycle torsion that's present and it changes among human eyes very dramatically so if we would use the access between the fovea and brooks membrane opening consistently would this reduce some of the visit variability in our normative databases and again the work that shows that the retinal nerve fiber layer is organized relative to the access between brooks membrane opening and the fovea is done over the last 20 years in a series of very impressive studies so at this point in time it's a theory we have to show we had to build the tools to be able to explore the hypothesis that this will improve our normative databases and allow for better discrimination this is a a study that we've published just showing the range of the foveal BMO access in our group of 250 or 227 p3 patients you can see it ranges from minus 16 degrees to actually as much as plus one plus two degrees so every eye is different we know this that in on average the fovea is beneath the horizontal midline which we refer to as the refae but the the refae is actually following the foveal BMO access at least between the disc and the fovea okay so the first notion was to build the capability of doing this and we now have that on the spectralis instrument other instrument manufacturers i think are considering this approach and they are doing some forms of regionalization that are comparable to it and now having built that ability i want to talk about what our plans are for actually phenotyping in this way so we will acquire normative databases in this in this manner and i'll talk about that in a moment relative to the foveal BMO access the optic nerve head will be regionalized relative to the foveal BMO access in all of the eyes and clinicians will be presented with for example rim with anatomy on a clock hour basis if they wish they can load a stereo photo or a photograph into the software it will co-localize it to the OCT IR image and show the clinician exactly this image so that not only can you see the anatomy in this case the rim anatomy at every clock hour but it will be color-coded as to whether it's normal borderline or abnormal relative to the normative databases and the same thing can be done for rates of change when we have that data chosen sometimes it's almost vertical sometimes it's almost vertical so thank you for asking that question it is the minimum distance so once brooks member once brooks membrane opening has been determined and the internal limiting membrane has been found and delineated and both of those things are now fully automated most of the instrument manufacturers are capable of that and while there are caveats on its accuracy the more myopic the eye is the more difficult the anatomy is the more failures there are in the algorithm but it's it's it's remarkably good I think it's defensively good to start then the algorithm looks for the shortest distance between the internal limiting membrane and brooks membrane opening and 95 or 96 percent of the time that occurs in one location and then there's potential for it to be in multiple locations and the algorithm can become confused but but that's the concept so the idea is you're measuring the rim in a way that's similar to the nerve fiber layers which is a which is a minimum thickness measurement okay here's some expanded notions which are we are are working towards using both normative databases and two large groups of glaucoma patients so it will be assessments of the rim that have not just minimum rim width but pre-laminar tissue thickness as well as various forms of rim volume measurements this allows us to report minimum rim width in sectoral distributions and you we can report change over time in sectoral distributions deeper in the nerve head we are I will talk in a minute about our delineations of the first normative database but parameters such as anterior lamina kerbosis surface depth relative to brooks membrane opening reference plane that is currently sort of the standard is brooks membrane opening reference plane that will change and move into the peripheral sclera torsion of the nerve head which is currently done using the clinical disc margin you'll see in a moment that that concept will expand as more of this anatomy becomes available to us and the amount that the long access of brooks membrane opening is varies from the phobium o vertical the vertical access relative to the foveal bmo horizontal access can be quantified this is sort of the current strategy for talking about how torted a disk is how turned it is and let me just say one of the reasons that we think it's important to quantify all of this anatomy is we think ultimately this influences the distribution of rim tissue in normal patients in other words patients who have a normal amount of rim but have a certain amount of torsion the distribution will be different and we'll be able to correct the normative databases to better evaluate say myopic patients and that's ultimately the long-term goal so this is done on the on the disc margin this is done on brooks membrane opening which is obviously much different than that if you begin to put these anatomies together these are now brooks membrane opening points delineated in three-dimensional space this is the anterior scleral canal opening and you can see that the phenomenon of tilt and torsion are really having to do with the relationship of brooks membrane opening to the anterior scleral canal opening and if you further turn those in space you can get to what is the actual minimum cross-sectional area that the neural tissues pass through which is a much more complicated geometry than when you look at it clinically and this gets us to the question of size of the disc in glaucoma and and broadly we know that some the size of the disc has something to do with the risk of developing glaucoma we think bigger discs are more susceptible and but bigger discs may also have more neural tissues because there's more room for the neurons that are struggling to survive and axons to survive and we haven't been able to sort these things out from a biomechanical standpoint we know that the the sclera is hugely influential in the anterior scleral canal opening is probably the thing that that determines susceptibility to intraocular pressure whereas the neural canal minimum opening probably is what influences the number of axons that are in a given optic nerve head with again many caveats and so we can separate these two things now. Now separate from this there will be sort of the standard retinal multi-layer segmentation algorithms that already already exist but we're hoping that by doing this relative to the foveal BMO access we will be able to provide a standardization to our retinal colleagues for example that will allow them more robust ability to detect smaller different treatment differences than what they're capable of doing now. Now again that's a hypothesis that has to be tested. One of the very interesting things is as it turns out if you do very high resolution scans peripheral to the fovea so temporal to the fovea the RAFE can be identified by looking at the retinal nerve fiber layer pattern and it does not seem to follow the foveal BMO access temporal to the fovea it is very variable it tends to be more towards the horizontal sort of the position of the of where the eye sits horizontally this is brand new it's in a development and but it will influence the distribution of the rim tissue and I think it's these relationships that explain the isn't ruling glaucoma the fact that a normal eye should have the greatest amount of rim tissue inferiorly then superiorly then nasally and temporally the that rule reflects these relationships the the the most common form of these relationships and if we can tease them out we're hoping that we'll better be able to establish normative values for a given eye so combining all of these different aspects of optic nerve head and retinal anatomy anatomy will allow us to better predict how much rim tissue is present and again that's a working hypothesis okay what are some of the clinical implications of this first is I'm hoping that we are going to be able to show that by acquiring data in this way our normative values will be tighter and therefore we'll better be able to discriminate early forms of structural glaucoma so for the spectralis database we have completed a mixed american normative database that's 378 patients it's Caucasians that actually portions of those were also were acquired in Europe but they met the FDA guidelines for meeting the census distribution of ethnicity a Japanese normative database has been acquired the expansion of the Hispanic descent portion of the mixed ethnicity normative database to a full 250 subjects is underway as is the African descent portion that's all work that's being done now the Chinese normative database is being planned the continental Indian normative database and something I'm very excited about is the concept of an extended biometry normative database in other words imaging of course normative databases are generally limited to minus three plus three refractive error our intention is to image eyes of all axial lengths short to long and then ask the question do they have visual field loss or not and begin to sort out at what point what form of myopia myopic change is likely to be accompanied by field loss so I'm just going to talk for a moment about the american mixed normative database the rim values for the Caucasian portion of this have already been described by bell in 2015 so that the Caucasian part of the database has been described and we have just completed manual delineation of 378 eyes of 378 patients of the deep optic nerve head and this is all of the structures in the deep optic nerve head this is part of our NIH funding to do this and we I hope will have our RO abstracts this year characterizing the relationship of laminar depth and features of the peripapillary sclera and the anterior scleral canal opening so we do have evidence that using minimum rim width improves detection in glaucoma I'm showing you one study again by bell Shahan that compared minimum rim width to a horizontal rim width measurement this is in OCT imaging and instead of taking the minimum that we just talked about they we tried to mimic the clinician by doing a horizontal measurement in the plane of brooks membrane opening sort of to mimic that and then compared that to the older form of HRT assessment of rim width and retinal nerve fiber layer thickness and at a specificity of 95 percent this achieved a sensitivity of 82 percent which was significantly higher this is the minimum rim measurement compared to horizontal and to retinal nerve fiber layer thickness now there are two other studies that have replicated this and there's a third study that didn't find a significant difference between retinal nerve fiber layer and MRW but they both behaved at a higher at the highest level that the MRW had previously achieved so that's going to be continue to be sorted out by a number of groups it should be the case not that this is hugely important clinically but it bothers me and a lot of people why doesn't the correlation between the rim and the nerve fiber layer why isn't it better and then one step further than that why isn't structure versus function correlation better and there's a lot of explanations for this but measuring rim in this fashion and measuring retinal nerve fiber layer thickness in a minimum fashion was one way in which there was no reason to expect that they would closely correlate because you're measuring them in a different way now when you measure rim in this way and nerve fiber layer in a same manner in a different location the structure structure correlation improves substantially but remember the composition of the nerve fiber layer the astrocyte and vascular composition of the nerve fiber layer is different than the minimum than the rim the rim is the rim it's not the nerve fiber layer now measured in a different location rim tissue is different it includes the nerve fiber layer and so there's a lot of implications from that statement which I can't go into in this talk that we can talk more about if if you have questions so in the same light if we make this kind of rim measurement compared to this kind of rim measurement and compare it to correlations with visual field testing my colleague Stuart Gardner did this again in our group of p3 patients Portland progression project patients and showed improved structure function correlations measuring the rim in this way the retinal nerve fiber layer still correlated better than the rim tissue and again i have some answers for why that might be true so change detection is still early in all of OCT imaging in monkeys we have done a very rigorous study in eight animals following them with all forms of OCT, HRT, scanning laser polarimetry and electroretinogram testing every two week testing that very very clearly showed that we could measure deep structural change deformation of the lamina in these animals well before we were able to detect any other form of structural change and functional change and there's a lot of caveats to that statement but there is now one or two studies that is begin that are beginning to compare rim to nerve fiber layer changes in humans but there's not a definitive study yet on this issue and i'll just well this is a good place to make this point so i showed you this side before and i told you that in our monkeys on average for a given amount of nerve fiber layer change the monkey the young monkeys had deeper cupping we could detect lamina deformation earlier in those animals or deformation of structural change in part because the lamina was deforming more we we assumed because it's on average more compliant in those tissues and in older eyes we had to wait until there was rim thinning because the lamina didn't deform as much so this has implications for clinical structure function correlation it might be at the advantage that an eye that is compliant will deform more for a given amount of iop elevation and it will be easier to detect that deformation at a point at which more axons are still viable and it will also potentially influence the relationship to visual field loss so i just mentioned these notions i'm not going to go into them now but really an individual patient's compliance of their connective tissues is going to influence how easy it is to detect longitudinal structural change in that patient and i won't go into that this actually interestingly has been demonstrated in a longitudinal study by chris long in hong kong in which older patients demonstrated more retinal nerve fiber layer thinning for progression than optic nerve had rim change for progression so the idea here was to how did an individual patient progress was it nerve fiber layer thinning or was it rim change and in this study the older patients demonstrated much more nerve fiber layer thinning than change in the rim they don't directly correlate even when even when you axons are lost and are detected in the nerve fiber layer so overall i started out by talking about glaucomodus cupping and i emphasized the connective tissue component to it because i'm hopeful that as oct imaging advances and as segmentation of oct imaging follows our and others manual delineation that you will see more and more use of the deep optic nerve head anatomy to detect glaucoma and detect progression i don't have time to put in all of the work that's being done on laminar imaging but i'm sure that whether you're in glaucoma or not you are you have seen the papers on laminar pits and laminar insertion defects and these are exciting developments we and others have to do a lot of work to convince people that the oct is capable of actually seeing the back of the lamina that's not consistently done and we are working to provide histomorphometric confirmation of this i've talked about a paradigm change let me go back and called it that because i really do think it is the point at which you all are going to need to look at the anatomy at the same time you're looking at the quantification of the anatomy and that means the instrument manufacturers have to make it easier for you to see the anatomy and i hope the feedback will be will improve your examination your examination will start to be more satisfying things that didn't previously make sense like somebody that appeared to have a lot of rim tissue and they had yet they had a field defect or nerve fiber layer thinning and it didn't how could they have that much rim and have this this focal rim nerve fiber layer loss and defect and i hope that having oct anatomy will improve your ability to detect that hopefully the phenotyping approach that we're taking to the to the macula will add power to retinal studies and and all of the retinal physicians who will be using this imaging and i've gone through some of the clinical implications so i hope you understand at least our contentions about brooks membrane opening how it's different from the clinical dis margin i hope that you appreciate the minimum rim measurement i all of the instruments are now doing this as i've said and i think it's going to become a common output in addition to retinal nerve fiber layer thickness and the issue of how important it is to regionalize relative to the foveal bmo access is up in the air it's a hypothesis it's a working hypothesis and for me the exciting thing is we have the technology now to to truly implement it and assess how important it is to do things in this manner so with that i will again leave you with renkin and the suggestion that we're all going to need to integrate this anatomy into our clinical examinations and thank you very much for your attention and we have questions so if we have a spectrum yes we have a specialist now do we automatically get software upgrades with the latest stuff yeah yeah yes so the answer is yes um if you do if you have the newest uh uh specialist for octn geography then um you have that software already it's already there you may not be aware of it um if you have an old the the previous version that doesn't have that doesn't have the upgrade for octn geography you can still fully employ this acquisition software visualization software and quantification software to do this so the new um instrument that uh the new spectralis um has a different spectrometer it has a deeper penetration to it um and it is much faster um so that was all necessary for the angiography part actually the speed is what was necessary for the angiography part but you can do everything that i showed you with the previous version of the spectralis um and it has a full complement of the software um necessary to see this claud that was really terrific i'm thinking like uh with the minimal rim that you're that you're measuring and as you said there's there are many other cell types within that so if you had say in a schematic event or an inflammatory event you may have other processes occurring there do you think the oct will be able to uh distinguish say edema or inflammatory cells or anything like that within the rim tissue because i would think that we'd get bigger potentially and kind of mess up some of the thinking so um the first pass at that is um yes there are people who um in fact uh director's group and other who are working to get towards cellular explanations for oct phenomenon and that may help us in in the rim and actually the very final part of my research talk this afternoon we are funded to very precisely co-localize uh post-mortem immunohistochemistry to oct data sets acquired on the day of sacrifice and then knowing um in a very robust way how protein expression has changed in that section of immunohistochemistry go back and start with the post with the sacrifice day oct image and because of heidelberg's eye tracking take the same um oct section all the way through and try seek the ability to correlate structural change in oct to protein expression change it's a big leap but i um we're waiting to hear whether my grant's gonna be renewed or not but that's and i'll show some slides on that so that that's that's part of the notion whether we'll be able to do that clinically is a separate issue um i'll also i i actually i won't show it but one of the very interesting things um that emerges from this is as you actually begin to look at this so when the rim is measured in this manner and unfortunately i don't have a slide in this talk i'd have to dig for five minutes to get a slide to show you this but it's not uncommon that the outer retina extends beyond brux membrane in certain configurations and so it's a bit hard to explain this but if i showed you an image you you know exactly what i was talking about the outer retina can extend well beyond brux membrane opening it comes back and and relates to to um uh to brux membrane opening but extends out beyond it and the minimum rim measurement therefore includes a large chunk of outer retina it's one of the ways in which the rim tissue is different it has a different composition than the nerve fiber layer we shouldn't expect them to be the same and it actually creates added benefit by rim change representing things that aren't axons and therefore if you detect a structural change you're have the ability to detect that the tissues are changing but the axons aren't yet involved and that's what we're hoping will be the case that we'll we'll get structural glaucoma that truly exceeds normative databases or represents a change it's structural but it doesn't it's well before enough axons are involved to manifest as field loss and of course everybody we we call it now pre-parametric glaucoma and we have definitions for why we think we can get to the point where it it makes no difference whether the field changed or not it's struck the structures are changing and you believe it you you and you believe the implications of that the study the follow-up studies that then show that that kind of structural change leads to increase risk for field progression in five or ten years have to be done but that's that's what the field is going and again what's exciting to me is that the infrastructures we have the infrastructure now to do these studies and I hope that they're referred to OCT and geography and the single element imaging test would be to incorporate that along with your anatomical data the capillary density that's one thing that's certainly part of glaucoma yes yes and there that so we we are doing that it's not our primary focus in the lab at the moment but I believe that that is true for me the capillary bed within the lamina and the posterior ciliary arteries coming through the peripapillary sclera I think is where the vascular component of glaucoma occurs primarily and the rim tissue capillary changes which are real and important I think follow from these earlier alterations and we can't yet that even with our current state of the art OCT and geography it's not getting deep to the into the laminar capillaries and it's also not getting to the posterior ciliary arteries as they come through the sclera and I'm hopeful that we'll get to that point but there's at least two or three groups that are now NIH funded they have to look at OCT and geography changes in the rim compared to structural changes in the rim compared to nerve fiber layer change and I think we will have some answers within the next five years about how much additional information we get from capillary change


There's nothing easy about the process of connecting. When I said earlier, I want you to become what you want to attract. I want you to really embody, really sit with the emotions, the feelings, the idea of all the qualities that you want in a relationship. Many of you just talk about it on such the surface level or many of you focus on the criteria of tall, dark and handsome. I invite everyone to really sit in What are the qualities? If you can't put together a list of 50 things you want in a partner, qualities, okay? Then you're not ready. You got, let me make it easier, 30 things, okay? 50 is a lot, 30 qualities you want in a partner and then ask yourself, are you those qualities? Not from your ego, but from your heart.